APIdia Launch Partner
Top Description Inners Fields Constructors Methods
jdk.internal.icu.impl

public final Class UCharacterProperty

extends Object
Class Inheritance
Imports
java.io.IOException, java.nio.ByteBuffer, java.util.Iterator, .MissingResourceException, jdk.internal.icu.lang.UCharacter.HangulSyllableType, .UCharacter.NumericType, jdk.internal.icu.text.UTF16, .UnicodeSet, jdk.internal.icu.util.CodePointTrie, .VersionInfo

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.

Author
Syn Wee Quek
Since
release 2.1, february 1st 2002

Nested and Inner Type Summary

Modifier and TypeClass and Description
private class
private class
private class
private static class
private class

Field Summary

Modifier and TypeField and Description
private static final int
AGE_SHIFT_

Age value shift

private static final int
private static final int
public static final int
BIDI_PAIRED_BRACKET_TYPE

Enumerated property Bidi_Paired_Bracket_Type (new in Unicode 6.3).

private static final int
BLOCK_MASK_

Integer properties mask and shift values for blocks.

private static final int
BLOCK_SHIFT_

Integer properties mask and shift values for blocks.

private static final int
private static final String
DATA_FILE_NAME_

Default name of the datafile

private static final int
private static final int
DECOMPOSITION_TYPE_MASK_

Integer properties mask for decomposition type.

private static final int
private static final int
private static final int
private static final int
EAST_ASIAN_MASK_

Integer properties mask and shift values for East Asian cell width.

private static final int
EAST_ASIAN_SHIFT_

Integer properties mask and shift values for East Asian cell width.

private static final int
private static final int
FIRST_NIBBLE_SHIFT_

First nibble shift

private static final int
private static final int
private static final int[]
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
public static final UCharacterProperty
private UCharacterProperty.IntProperty
private static final int
LAST_NIBBLE_MASK_

Second nibble mask

private static final int
private static final int
private static final int
LEAD_SURROGATE_SHIFT_

Shift value for lead surrogate to form a supplementary character.

private static final int
pack-priv int
m_additionalColumnsCount_

Number of additional columns

pack-priv Trie2_16
m_additionalTrie_

Extra property trie

pack-priv int[]
m_additionalVectors_

Extra property vectors, 1st column for age and second for binary properties.

pack-priv CodePointTrie
pack-priv int
m_maxBlockScriptValue_

Maximum values for block, bits used as in vector word 0

pack-priv int
m_maxJTGValue_

Maximum values for script, bits used as in vector word 0

pack-priv int
m_maxValuesOther_

maximum values for other code values

public char[]
m_scriptExtensions_

Script_Extensions data

public Trie2_16
m_trie_

Trie data

public VersionInfo
m_unicodeVersion_

Unicode version

private static final int
public static final int
private static final int
private static final int
NTV_DECIMAL_START_

Decimal digits: nv=0..9

private static final int
NTV_DIGIT_START_

Other digits: nv=0..9

private static final int
NTV_NONE_

No numeric value.

private static final int
NTV_NUMERIC_START_

Small integers: nv=0..154

private static final int
NUMERIC_TYPE_VALUE_SHIFT_

Numeric types and values in the main properties words.

private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
public static final int
public static final int
public static final int
SCRIPT_LOW_MASK

Integer properties mask and shift values for scripts.

public static final int
SCRIPT_X_MASK

Script_Extensions: mask includes Script

public static final int
SRC_BIDI

From ubidi_props.c/ubidi.icu

public static final int
SRC_CHAR

From uchar.c/uprops.icu main trie

public static final int
SRC_NFC

From normalizer2impl.cpp/nfc.nrm

public static final int
SRC_NFKC

From normalizer2impl.cpp/nfkc.nrm

public static final int
SRC_PROPSVEC

From uchar.c/uprops.icu properties vectors trie

private static final int
SURROGATE_OFFSET_

Offset to add to combined surrogate pair to avoid masking.

private static final int
public static final int
TYPE_MASK

Character type mask

private static final int
private static final int
private static final int
private static final int
private static final int
WHITE_SPACE_PROPERTY_

Additional properties used in internal trie data

private static final int
private static final int

Constructor Summary

AccessConstructor and Description
private
UCharacterProperty()

Constructor

Method Summary

Modifier and TypeMethod and Description
public int
digit(int c)

public int

Returns:

unicode properties
getAdditional
(int
codepoint whose additional properties is to be retrieved
codepoint
,
int
The column index.
column
)

Gets the unicode additional properties.

public VersionInfo

Returns:

the Unicode version number
getAge
(int
The code point.
codepoint
)

Get the "age" of the code point.

public static int

Returns:

-1 if ch is not a character of the form 'A' - 'Z', otherwise its corresponding digit will be returned.
getEuropeanDigit
(int
character to test
ch
)

Returns the digit values of characters like 'A' - 'Z', normal, half-width and full-width.

public int
getIntPropertyValue(int c, int which)

public static final int

Returns:

mask
getMask
(int
character type
type
)

Gets the type mask

private static final int
public final int

Returns:

property value of code point
getProperty
(int
code point whose property value is to be retrieved
ch
)

Gets the main property value for code point ch.

public static int

Returns:

code point of the supplementary character
getRawSupplementary
(char
lead surrogate character
lead
,
char
trailing surrogate character
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

public int
getType(int c)

public static final int
private static final int
ntvGetType(int ntv)

public void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

AGE_SHIFT_back to summary
private static final int AGE_SHIFT_

Age value shift

ALPHABETIC_PROPERTY_back to summary
private static final int ALPHABETIC_PROPERTY_
ASCII_HEX_DIGIT_PROPERTY_back to summary
private static final int ASCII_HEX_DIGIT_PROPERTY_
BIDI_PAIRED_BRACKET_TYPEback to summary
public static final int BIDI_PAIRED_BRACKET_TYPE

Enumerated property Bidi_Paired_Bracket_Type (new in Unicode 6.3). Used in UAX #9: Unicode Bidirectional Algorithm (http://www.unicode.org/reports/tr9/) Returns UCharacter.BidiPairedBracketType values.

ICU Status
Stable since ICU 52.
BLOCK_MASK_back to summary
private static final int BLOCK_MASK_

Integer properties mask and shift values for blocks. Equivalent to icu4c UPROPS_BLOCK_MASK

BLOCK_SHIFT_back to summary
private static final int BLOCK_SHIFT_

Integer properties mask and shift values for blocks. Equivalent to icu4c UPROPS_BLOCK_SHIFT

DASH_PROPERTY_back to summary
private static final int DASH_PROPERTY_
DATA_FILE_NAME_back to summary
private static final String DATA_FILE_NAME_

Default name of the datafile

Annotations
@SuppressWarnings:deprecation
DATA_FORMATback to summary
private static final int DATA_FORMAT
DECOMPOSITION_TYPE_MASK_back to summary
private static final int DECOMPOSITION_TYPE_MASK_

Integer properties mask for decomposition type. Equivalent to icu4c UPROPS_DT_MASK.

DEFAULT_IGNORABLE_CODE_POINT_PROPERTY_back to summary
private static final int DEFAULT_IGNORABLE_CODE_POINT_PROPERTY_
DEPRECATED_PROPERTY_back to summary
private static final int DEPRECATED_PROPERTY_
DIACRITIC_PROPERTY_back to summary
private static final int DIACRITIC_PROPERTY_
EAST_ASIAN_MASK_back to summary
private static final int EAST_ASIAN_MASK_

Integer properties mask and shift values for East Asian cell width. Equivalent to icu4c UPROPS_EA_MASK

EAST_ASIAN_SHIFT_back to summary
private static final int EAST_ASIAN_SHIFT_

Integer properties mask and shift values for East Asian cell width. Equivalent to icu4c UPROPS_EA_SHIFT

EXTENDER_PROPERTY_back to summary
private static final int EXTENDER_PROPERTY_
FIRST_NIBBLE_SHIFT_back to summary
private static final int FIRST_NIBBLE_SHIFT_

First nibble shift

GCB_MASKback to summary
private static final int GCB_MASK
GCB_SHIFTback to summary
private static final int GCB_SHIFT
gcbToHstback to summary
private static final int[] gcbToHst
GRAPHEME_BASE_PROPERTY_back to summary
private static final int GRAPHEME_BASE_PROPERTY_
GRAPHEME_EXTEND_PROPERTY_back to summary
private static final int GRAPHEME_EXTEND_PROPERTY_
HEX_DIGIT_PROPERTY_back to summary
private static final int HEX_DIGIT_PROPERTY_
HYPHEN_PROPERTY_back to summary
private static final int HYPHEN_PROPERTY_
ID_CONTINUE_PROPERTY_back to summary
private static final int ID_CONTINUE_PROPERTY_
ID_START_PROPERTY_back to summary
private static final int ID_START_PROPERTY_
IDEOGRAPHIC_PROPERTY_back to summary
private static final int IDEOGRAPHIC_PROPERTY_
IDS_BINARY_OPERATOR_PROPERTY_back to summary
private static final int IDS_BINARY_OPERATOR_PROPERTY_
IDS_TRINARY_OPERATOR_PROPERTY_back to summary
private static final int IDS_TRINARY_OPERATOR_PROPERTY_
INSTANCEback to summary
public static final UCharacterProperty INSTANCE
intPropback to summary
private UCharacterProperty.IntProperty intProp
LAST_NIBBLE_MASK_back to summary
private static final int LAST_NIBBLE_MASK_

Second nibble mask

LB_MASKback to summary
private static final int LB_MASK
LB_SHIFTback to summary
private static final int LB_SHIFT
LEAD_SURROGATE_SHIFT_back to summary
private static final int LEAD_SURROGATE_SHIFT_

Shift value for lead surrogate to form a supplementary character.

LOGICAL_ORDER_EXCEPTION_PROPERTY_back to summary
private static final int LOGICAL_ORDER_EXCEPTION_PROPERTY_
m_additionalColumnsCount_back to summary
pack-priv int m_additionalColumnsCount_

Number of additional columns

m_additionalTrie_back to summary
pack-priv Trie2_16 m_additionalTrie_

Extra property trie

m_additionalVectors_back to summary
pack-priv int[] m_additionalVectors_

Extra property vectors, 1st column for age and second for binary properties.

m_blockTrie_back to summary
pack-priv CodePointTrie m_blockTrie_
m_maxBlockScriptValue_back to summary
pack-priv int m_maxBlockScriptValue_

Maximum values for block, bits used as in vector word 0

m_maxJTGValue_back to summary
pack-priv int m_maxJTGValue_

Maximum values for script, bits used as in vector word 0

m_maxValuesOther_back to summary
pack-priv int m_maxValuesOther_

maximum values for other code values

m_scriptExtensions_back to summary
public char[] m_scriptExtensions_

Script_Extensions data

m_trie_back to summary
public Trie2_16 m_trie_

Trie data

m_unicodeVersion_back to summary
public VersionInfo m_unicodeVersion_

Unicode version

MATH_PROPERTY_back to summary
private static final int MATH_PROPERTY_
MAX_SCRIPTback to summary
public static final int MAX_SCRIPT
NONCHARACTER_CODE_POINT_PROPERTY_back to summary
private static final int NONCHARACTER_CODE_POINT_PROPERTY_
NTV_DECIMAL_START_back to summary
private static final int NTV_DECIMAL_START_

Decimal digits: nv=0..9

NTV_DIGIT_START_back to summary
private static final int NTV_DIGIT_START_

Other digits: nv=0..9

NTV_NONE_back to summary
private static final int NTV_NONE_

No numeric value.

NTV_NUMERIC_START_back to summary
private static final int NTV_NUMERIC_START_

Small integers: nv=0..154

NUMERIC_TYPE_VALUE_SHIFT_back to summary
private static final int NUMERIC_TYPE_VALUE_SHIFT_

Numeric types and values in the main properties words.

PATTERN_SYNTAXback to summary
private static final int PATTERN_SYNTAX
PATTERN_WHITE_SPACEback to summary
private static final int PATTERN_WHITE_SPACE
QUOTATION_MARK_PROPERTY_back to summary
private static final int QUOTATION_MARK_PROPERTY_
RADICAL_PROPERTY_back to summary
private static final int RADICAL_PROPERTY_
S_TERM_PROPERTY_back to summary
private static final int S_TERM_PROPERTY_
SB_MASKback to summary
private static final int SB_MASK
SB_SHIFTback to summary
private static final int SB_SHIFT
SCRIPT_HIGH_MASKback to summary
public static final int SCRIPT_HIGH_MASK
SCRIPT_HIGH_SHIFTback to summary
public static final int SCRIPT_HIGH_SHIFT
SCRIPT_LOW_MASKback to summary
public static final int SCRIPT_LOW_MASK

Integer properties mask and shift values for scripts. Equivalent to icu4c UPROPS_SHIFT_LOW_MASK.

SCRIPT_X_MASKback to summary
public static final int SCRIPT_X_MASK

Script_Extensions: mask includes Script

SRC_BIDIback to summary
public static final int SRC_BIDI

From ubidi_props.c/ubidi.icu

SRC_CHARback to summary
public static final int SRC_CHAR

From uchar.c/uprops.icu main trie

SRC_NFCback to summary
public static final int SRC_NFC

From normalizer2impl.cpp/nfc.nrm

SRC_NFKCback to summary
public static final int SRC_NFKC

From normalizer2impl.cpp/nfkc.nrm

SRC_PROPSVECback to summary
public static final int SRC_PROPSVEC

From uchar.c/uprops.icu properties vectors trie

SURROGATE_OFFSET_back to summary
private static final int SURROGATE_OFFSET_

Offset to add to combined surrogate pair to avoid masking.

TERMINAL_PUNCTUATION_PROPERTY_back to summary
private static final int TERMINAL_PUNCTUATION_PROPERTY_
TYPE_MASKback to summary
public static final int TYPE_MASK

Character type mask

UNIFIED_IDEOGRAPH_PROPERTY_back to summary
private static final int UNIFIED_IDEOGRAPH_PROPERTY_
VARIATION_SELECTOR_PROPERTY_back to summary
private static final int VARIATION_SELECTOR_PROPERTY_
WB_MASKback to summary
private static final int WB_MASK
WB_SHIFTback to summary
private static final int WB_SHIFT
WHITE_SPACE_PROPERTY_back to summary
private static final int WHITE_SPACE_PROPERTY_

Additional properties used in internal trie data

XID_CONTINUE_PROPERTY_back to summary
private static final int XID_CONTINUE_PROPERTY_
XID_START_PROPERTY_back to summary
private static final int XID_START_PROPERTY_

Constructor Detail

UCharacterPropertyback to summary
private UCharacterProperty() throws IOException

Constructor

Exceptions
IOException:
thrown when data reading fails or data corrupted

Method Detail

digitback to summary
public int digit(int c)
getAdditionalback to summary
public int getAdditional(int codepoint, int column)

Gets the unicode additional properties. Java version of C u_getUnicodeProperties().

Parameters
codepoint:int

codepoint whose additional properties is to be retrieved

column:int

The column index.

Returns:int

unicode properties

getAgeback to summary
public VersionInfo getAge(int codepoint)

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:int

The code point.

Returns:VersionInfo

the Unicode version number

getEuropeanDigitback to summary
public static int getEuropeanDigit(int ch)

Returns the digit values of characters like 'A' - 'Z', normal, half-width and full-width. This method assumes that the other digit characters are checked by the calling method.

Parameters
ch:int

character to test

Returns:int

-1 if ch is not a character of the form 'A' - 'Z', otherwise its corresponding digit will be returned.

getIntPropertyValueback to summary
public int getIntPropertyValue(int c, int which)
getMaskback to summary
public static final int getMask(int type)

Gets the type mask

Parameters
type:int

character type

Returns:int

mask

getNumericTypeValueback to summary
private static final int getNumericTypeValue(int props)
getPropertyback to summary
public final int getProperty(int ch)

Gets the main property value for code point ch.

Parameters
ch:int

code point whose property value is to be retrieved

Returns:int

property value of code point

getRawSupplementaryback to summary
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:char

lead surrogate character

trail:char

trailing surrogate character

Returns:int

code point of the supplementary character

getTypeback to summary
public int getType(int c)
mergeScriptCodeOrIndexback to summary
public static final int mergeScriptCodeOrIndex(int scriptX)
ntvGetTypeback to summary
private static final int ntvGetType(int ntv)
upropsvec_addPropertyStartsback to summary
public void upropsvec_addPropertyStarts(UnicodeSet set)
jdk.internal.icu.impl back to summary

private Class UCharacterProperty.BiDiIntProperty

extends IntProperty
Class Inheritance

Field Summary

Inherited from jdk.internal.icu.impl.UCharacterProperty.IntProperty:
columnmaskshift

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Inherited from jdk.internal.icu.impl.UCharacterProperty.IntProperty:
getValue

Constructor Detail

BiDiIntPropertyback to summary
pack-priv BiDiIntProperty()
jdk.internal.icu.impl back to summary

private Class UCharacterProperty.CombiningClassIntProperty

extends IntProperty
Class Inheritance

Field Summary

Inherited from jdk.internal.icu.impl.UCharacterProperty.IntProperty:
columnmaskshift

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Inherited from jdk.internal.icu.impl.UCharacterProperty.IntProperty:
getValue

Constructor Detail

CombiningClassIntPropertyback to summary
pack-priv CombiningClassIntProperty(int source)
jdk.internal.icu.impl back to summary

private Class UCharacterProperty.IntProperty

extends Object
Class Inheritance
Known Direct Subclasses
jdk.internal.icu.impl.UCharacterProperty.BiDiIntProperty, jdk.internal.icu.impl.UCharacterProperty.CombiningClassIntProperty, jdk.internal.icu.impl.UCharacterProperty.NormQuickCheckIntProperty

Field Summary

Modifier and TypeField and Description
pack-priv int
pack-priv int
pack-priv int

Constructor Summary

AccessConstructor and Description
pack-priv
IntProperty(int column, int mask, int shift)

pack-priv
IntProperty(int source)

Method Summary

Modifier and TypeMethod and Description
pack-priv int
getValue(int c)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

columnback to summary
pack-priv int column
maskback to summary
pack-priv int mask
shiftback to summary
pack-priv int shift

Constructor Detail

IntPropertyback to summary
pack-priv IntProperty(int column, int mask, int shift)
IntPropertyback to summary
pack-priv IntProperty(int source)

Method Detail

getValueback to summary
pack-priv int getValue(int c)
jdk.internal.icu.impl back to summary

private final Class UCharacterProperty.IsAcceptable

extends Object
implements Authenticate
Class Inheritance
All Implemented Interfaces
jdk.internal.icu.impl.ICUBinary.Authenticate

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public boolean
isDataVersionAcceptable(byte[] version)

Implements jdk.internal.icu.impl.ICUBinary.Authenticate.isDataVersionAcceptable.

Method used in ICUBinary.readHeader() to provide data format authentication.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

IsAcceptableback to summary
private IsAcceptable()

Method Detail

isDataVersionAcceptableback to summary
public boolean isDataVersionAcceptable(byte[] version)

Implements jdk.internal.icu.impl.ICUBinary.Authenticate.isDataVersionAcceptable.

Doc from jdk.internal.icu.impl.ICUBinary.Authenticate.isDataVersionAcceptable.

Method used in ICUBinary.readHeader() to provide data format authentication.

jdk.internal.icu.impl back to summary

private Class UCharacterProperty.NormQuickCheckIntProperty

extends IntProperty
Class Inheritance

Field Summary

Modifier and TypeField and Description
pack-priv int
pack-priv int
Inherited from jdk.internal.icu.impl.UCharacterProperty.IntProperty:
columnmaskshift

Constructor Summary

AccessConstructor and Description
pack-priv
NormQuickCheckIntProperty(int source, int which, int max)

Method Summary

Inherited from jdk.internal.icu.impl.UCharacterProperty.IntProperty:
getValue

Field Detail

maxback to summary
pack-priv int max
whichback to summary
pack-priv int which

Constructor Detail

NormQuickCheckIntPropertyback to summary
pack-priv NormQuickCheckIntProperty(int source, int which, int max)