Class UnicodeSet.XSymbolTable

java.lang.Object
com.ibm.icu.text.UnicodeSet.XSymbolTable
All Implemented Interfaces:
SymbolTable
Enclosing class:
UnicodeSet

public abstract static class UnicodeSet.XSymbolTable extends Object implements SymbolTable
Internal class for customizing UnicodeSet parsing of properties. TODO: extend to allow customizing of codepoint ranges
Author:
medavis
Status:
Draft ICU3.8 (retain).
  • Constructor Details

    • XSymbolTable

      public XSymbolTable()
      Default constructor
      Status:
      Draft ICU3.8 (retain).
  • Method Details

    • lookupMatcher

      public UnicodeMatcher lookupMatcher(int i)
      Supplies default implementation for SymbolTable (no action).
      Specified by:
      lookupMatcher in interface SymbolTable
      Parameters:
      i - a 32-bit code point from 0 to 0x10FFFF inclusive.
      Returns:
      the UnicodeMatcher object represented by the given character, or null if there is no mapping for ch.
      Status:
      Draft ICU3.8 (retain).
    • applyPropertyAlias

      public boolean applyPropertyAlias(String propertyName, String propertyValue, UnicodeSet result)
      Override the interpretation of the sequence [:propertyName=propertyValue:] (and its negated and Perl-style variant). The propertyName and propertyValue may be existing Unicode aliases, or may not be.

      This routine will be called whenever the parsing of a UnicodeSet pattern finds such a propertyName+propertyValue combination.

      Parameters:
      propertyName - the name of the property
      propertyValue - the name of the property value
      result - UnicodeSet value to change a set to which the characters having the propertyName+propertyValue are to be added.
      Returns:
      returns true if the propertyName+propertyValue combination is to be overridden, and the characters with that property have been added to the UnicodeSet, and returns false if the propertyName+propertyValue combination is not recognized (in which case result is unaltered).
      Status:
      Draft ICU3.8 (retain).
    • lookup

      public char[] lookup(String s)
      Supplies default implementation for SymbolTable (no action).
      Specified by:
      lookup in interface SymbolTable
      Parameters:
      s - the symbolic name to lookup
      Returns:
      a char array containing the name's value, or null if there is no mapping for s.
      Status:
      Draft ICU3.8 (retain).
    • parseReference

      public String parseReference(String text, ParsePosition pos, int limit)
      Supplies default implementation for SymbolTable (no action).
      Specified by:
      parseReference in interface SymbolTable
      Parameters:
      text - the text to parse for the name
      pos - on entry, the index of the first character to parse. This is the character following the SYMBOL_REF character. On exit, the index after the last parsed character. If the parse failed, pos is unchanged on exit.
      limit - the index after the last character to be parsed.
      Returns:
      the parsed name, or null if there is no valid symbolic name at the given position.
      Status:
      Draft ICU3.8 (retain).
    • scanVariable

      @Deprecated public String scanVariable(String text, ParsePosition pos, int limit)
      Deprecated.
      This API is ICU internal only.
      If the source text has a valid variable starting at pos, advances pos past that variable and returns the name that should be passed to lookup or lookupSet. Otherwise, returns null and does not advance pos. By default, this method checks for variables with a $ sigil, but it can be overriden to support other variable syntaxes, e.g., the use of short Line_Break value aliases for sets in UAX #14 rules ([QU-\p{Pi}] for [\p{lb=QU}-\p{Pi}]).
      Status:
      Internal. This API is ICU internal only.