Interface UnicodeReplacer

  • All Known Implementing Classes:
    FunctionReplacer, StringMatcher, StringReplacer

    interface UnicodeReplacer
    UnicodeReplacer defines a protocol for objects that replace a range of characters in a Replaceable string with output text. The replacement is done via the Replaceable API so as to preserve out-of-band data.
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      void addReplacementSetTo​(UnicodeSet toUnionTo)
      Union the set of all characters that may output by this object into the given set.
      int replace​(Replaceable text, int start, int limit, int[] cursor)
      Replace characters in 'text' from 'start' to 'limit' with the output text of this object.
      java.lang.String toReplacerPattern​(boolean escapeUnprintable)
      Returns a string representation of this replacer.
    • Method Detail

      • replace

        int replace​(Replaceable text,
                    int start,
                    int limit,
                    int[] cursor)
        Replace characters in 'text' from 'start' to 'limit' with the output text of this object. Update the 'cursor' parameter to give the cursor position and return the length of the replacement text.
        Parameters:
        text - the text to be matched
        start - inclusive start index of text to be replaced
        limit - exclusive end index of text to be replaced; must be greater than or equal to start
        cursor - output parameter for the cursor position. Not all replacer objects will update this, but in a complete tree of replacer objects, representing the entire output side of a transliteration rule, at least one must update it.
        Returns:
        the number of 16-bit code units in the text replacing the characters at offsets start..(limit-1) in text
      • toReplacerPattern

        java.lang.String toReplacerPattern​(boolean escapeUnprintable)
        Returns a string representation of this replacer. If the result of calling this function is passed to the appropriate parser, typically TransliteratorParser, it will produce another replacer that is equal to this one.
        Parameters:
        escapeUnprintable - if true then convert unprintable character to their hex escape representations, \\uxxxx or \\Uxxxxxxxx. Unprintable characters are defined by Utility.isUnprintable().
      • addReplacementSetTo

        void addReplacementSetTo​(UnicodeSet toUnionTo)
        Union the set of all characters that may output by this object into the given set.
        Parameters:
        toUnionTo - the set into which to union the output characters