Class UCharacterProperty
Internal class used for Unicode character property database.
This classes store binary data read from uprops.icu. It does not have the capability to parse the data into more high-level information. It only returns bytes of information when required.
Due to the form most commonly used for retrieval, array of char is used to store the binary data.
UCharacterPropertyDB also contains information on accessing indexes to significant points in the binary data.
Responsibility for molding the binary data into more meaning form lies on UCharacter.
- Since:
- release 2.1, february 1st 2002
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final charLatin capital letter i with dot abovestatic final charLatin small letter i with dot abovestatic final charLatin lowercase iTrie datachar[]Optimization CharTrie data arraychar[]Optimization CharTrie index arrayintOptimization CharTrie data offsetUnicode versionstatic final intstatic final intstatic final intstatic final intFrom ubidi_props.c/ubidi.icustatic final intFrom ucase.c/ucase.icustatic final intFrom uchar.c/uprops.icu main triestatic final intFrom uchar.c/uprops.icu main trie as well as properties vectors triestatic final intOne more than the highest UPropertySource (SRC_) constant.static final intHangul_Syllable_Type, from uchar.c/uprops.icustatic final intFrom unames.c/unames.icustatic final intNo source, not a supported property.static final intFrom unorm.cpp/unorm.icustatic final intFrom uchar.c/uprops.icu properties vectors triestatic final intCharacter type mask -
Method Summary
Modifier and TypeMethodDescriptionintgetAdditional(int codepoint, int column) Gets the unicode additional properties.getAge(int codepoint) Get the "age" of the code point.static UCharacterPropertyLoads the property data and initialize the UCharacterProperty instance.static final intgetMask(int type) Gets the type maskintgetMaxValues(int column) Get the the maximum values for some enum/int properties.final intgetProperty(int ch) Gets the property value at the index.static intgetRawSupplementary(char lead, char trail) Forms a supplementary code point from the argument character
Note this is for internal use hence no checks for the validity of the surrogate characters are donefinal intgetSource(int which) static intgetUnsignedValue(int prop) Getting the unsigned numeric value of a character embedded in the property argumentstatic booleanisRuleWhiteSpace(int c) Checks if the argument c is to be treated as a white space in ICU rules.voidsetIndexData(CharTrie.FriendAgent friendagent) Java friends implementation
-
Field Details
-
m_trie_
Trie data -
m_trieIndex_
public char[] m_trieIndex_Optimization CharTrie index array -
m_trieData_
public char[] m_trieData_Optimization CharTrie data array -
m_trieInitialValue_
public int m_trieInitialValue_Optimization CharTrie data offset -
m_unicodeVersion_
Unicode version -
LATIN_CAPITAL_LETTER_I_WITH_DOT_ABOVE_
public static final char LATIN_CAPITAL_LETTER_I_WITH_DOT_ABOVE_Latin capital letter i with dot above- See Also:
-
LATIN_SMALL_LETTER_DOTLESS_I_
public static final char LATIN_SMALL_LETTER_DOTLESS_I_Latin small letter i with dot above- See Also:
-
LATIN_SMALL_LETTER_I_
public static final char LATIN_SMALL_LETTER_I_Latin lowercase i- See Also:
-
TYPE_MASK
public static final int TYPE_MASKCharacter type mask- See Also:
-
SRC_NONE
public static final int SRC_NONENo source, not a supported property.- See Also:
-
SRC_CHAR
public static final int SRC_CHARFrom uchar.c/uprops.icu main trie- See Also:
-
SRC_PROPSVEC
public static final int SRC_PROPSVECFrom uchar.c/uprops.icu properties vectors trie- See Also:
-
SRC_HST
public static final int SRC_HSTHangul_Syllable_Type, from uchar.c/uprops.icu- See Also:
-
SRC_NAMES
public static final int SRC_NAMESFrom unames.c/unames.icu- See Also:
-
SRC_NORM
public static final int SRC_NORMFrom unorm.cpp/unorm.icu- See Also:
-
SRC_CASE
public static final int SRC_CASEFrom ucase.c/ucase.icu- See Also:
-
SRC_BIDI
public static final int SRC_BIDIFrom ubidi_props.c/ubidi.icu- See Also:
-
SRC_CHAR_AND_PROPSVEC
public static final int SRC_CHAR_AND_PROPSVECFrom uchar.c/uprops.icu main trie as well as properties vectors trie- See Also:
-
SRC_COUNT
public static final int SRC_COUNTOne more than the highest UPropertySource (SRC_) constant.- See Also:
-
NT_FRACTION
public static final int NT_FRACTION- See Also:
-
NT_LARGE
public static final int NT_LARGE- See Also:
-
NT_COUNT
public static final int NT_COUNT- See Also:
-
-
Method Details
-
setIndexData
Java friends implementation -
getProperty
public final int getProperty(int ch) Gets the property value at the index. This is optimized. Note this is alittle different from CharTrie the index m_trieData_ is never negative.- Parameters:
ch- code point whose property value is to be retrieved- Returns:
- property value of code point
-
getUnsignedValue
public static int getUnsignedValue(int prop) Getting the unsigned numeric value of a character embedded in the property argument- Parameters:
prop- the character- Returns:
- unsigned numberic value
-
getAdditional
public int getAdditional(int codepoint, int column) Gets the unicode additional properties. C version getUnicodeProperties.- Parameters:
codepoint- codepoint whose additional properties is to be retrievedcolumn-- Returns:
- unicode properties
-
getAge
Get the "age" of the code point.
The "age" is the Unicode version when the code point was first designated (as a non-character or for Private Use) or assigned a character.
This can be useful to avoid emitting code points to receiving processes that do not accept newer characters.
The data is from the UCD file DerivedAge.txt.
This API does not check the validity of the codepoint.
- Parameters:
codepoint- The code point.- Returns:
- the Unicode version number
-
getSource
public final int getSource(int which) -
getRawSupplementary
public static int getRawSupplementary(char lead, char trail) Forms a supplementary code point from the argument character
Note this is for internal use hence no checks for the validity of the surrogate characters are done- Parameters:
lead- lead surrogate charactertrail- trailing surrogate character- Returns:
- code point of the supplementary character
-
getInstance
Loads the property data and initialize the UCharacterProperty instance.- Throws:
MissingResourceException- when data is missing or data has been corrupted
-
isRuleWhiteSpace
public static boolean isRuleWhiteSpace(int c) Checks if the argument c is to be treated as a white space in ICU rules. Usually ICU rule white spaces are ignored unless quoted. Equivalent to test for Pattern_White_Space Unicode property. Stable set of characters, won't change. See UAX #31 Identifier and Pattern Syntax: http://www.unicode.org/reports/tr31/- Parameters:
c- codepoint to check- Returns:
- true if c is a ICU white space
-
getMaxValues
public int getMaxValues(int column) Get the the maximum values for some enum/int properties.- Returns:
- maximum values for the integer properties.
-
getMask
public static final int getMask(int type) Gets the type mask- Parameters:
type- character type- Returns:
- mask
-