code: public void setText(String source) {
          string_ = source; // TODO: do we need to remember the source string in a field?
          CollationIterator newIter;
          boolean numeric = rbc_.settings.readOnly().isNumeric();
          if (rbc_.settings.readOnly().dontCheckFCD()) {
              newIter = new UTF16CollationIterator(rbc_.data, numeric, string_, 0);
          } else {
              newIter = new FCDUTF16CollationIterator(rbc_.data, numeric, string_, 0);
          }
          iter_ = newIter;
          otherHalf_ = 0;
          dir_ = 0;
      }
docs: Set a new source string for iteration, and reset the offset
  to the beginning of the text.
  
  @param source the new source string for iteration.