2 *******************************************************************************
\r
3 * Copyright (C) 1996-2010, International Business Machines Corporation and *
\r
4 * others. All Rights Reserved. *
\r
5 *******************************************************************************
\r
8 package com.ibm.icu.lang;
\r
11 * <p>Selection constants for Unicode properties. </p>
\r
12 * <p>These constants are used in functions like
\r
13 * UCharacter.hasBinaryProperty(int) to select one of the Unicode properties.
\r
15 * <p>The properties APIs are intended to reflect Unicode properties as
\r
16 * defined in the Unicode Character Database (UCD) and Unicode Technical
\r
17 * Reports (UTR).</p>
\r
18 * <p>For details about the properties see <a href=http://www.unicode.org>
\r
19 * http://www.unicode.org</a>.</p>
\r
20 * <p>For names of Unicode properties see the UCD file PropertyAliases.txt.
\r
22 * <p>Important: If ICU is built with UCD files from Unicode versions below
\r
23 * 3.2, then properties marked with "new" are not or not fully
\r
24 * available. Check UCharacter.getUnicodeVersion() to be sure.</p>
\r
25 * @author Syn Wee Quek
\r
27 * @see com.ibm.icu.lang.UCharacter
\r
29 public interface UProperty
\r
31 // public data member --------------------------------------------------
\r
34 * Special value indicating undefined property.
\r
36 * @deprecated This API is ICU internal only.
\r
38 public static final int UNDEFINED = -1;
\r
41 * <p>Binary property Alphabetic. </p>
\r
42 * <p>Property for UCharacter.isUAlphabetic(), different from the property
\r
43 * in UCharacter.isalpha().</p>
\r
44 * <p>Lu + Ll + Lt + Lm + Lo + Nl + Other_Alphabetic.</p>
\r
47 public static final int ALPHABETIC = 0;
\r
50 * First constant for binary Unicode properties.
\r
53 public static final int BINARY_START = ALPHABETIC;
\r
56 * Binary property ASCII_Hex_Digit (0-9 A-F a-f).
\r
59 public static final int ASCII_HEX_DIGIT = 1;
\r
62 * <p>Binary property Bidi_Control.</p>
\r
63 * <p>Format controls which have specific functions in the Bidi Algorithm.
\r
67 public static final int BIDI_CONTROL = 2;
\r
70 * <p>Binary property Bidi_Mirrored.</p>
\r
71 * <p>Characters that may change display in RTL text.</p>
\r
72 * <p>Property for UCharacter.isMirrored().</p>
\r
73 * <p>See Bidi Algorithm; UTR 9.</p>
\r
76 public static final int BIDI_MIRRORED = 3;
\r
79 * <p>Binary property Dash.</p>
\r
80 * <p>Variations of dashes.</p>
\r
83 public static final int DASH = 4;
\r
86 * <p>Binary property Default_Ignorable_Code_Point (new).
\r
88 * <p>Property that indicates codepoint is ignorable in most processing.
\r
90 * <p>Codepoints (2060..206F, FFF0..FFFB, E0000..E0FFF) +
\r
91 * Other_Default_Ignorable_Code_Point + (Cf + Cc + Cs - White_Space)</p>
\r
94 public static final int DEFAULT_IGNORABLE_CODE_POINT = 5;
\r
97 * <p>Binary property Deprecated (new).</p>
\r
98 * <p>The usage of deprecated characters is strongly discouraged.</p>
\r
101 public static final int DEPRECATED = 6;
\r
104 * <p>Binary property Diacritic.</p>
\r
105 * <p>Characters that linguistically modify the meaning of another
\r
106 * character to which they apply.</p>
\r
109 public static final int DIACRITIC = 7;
\r
112 * <p>Binary property Extender.</p>
\r
113 * <p>Extend the value or shape of a preceding alphabetic character, e.g.
\r
114 * length and iteration marks.</p>
\r
117 public static final int EXTENDER = 8;
\r
120 * <p>Binary property Full_Composition_Exclusion.</p>
\r
121 * <p>CompositionExclusions.txt + Singleton Decompositions +
\r
122 * Non-Starter Decompositions.</p>
\r
125 public static final int FULL_COMPOSITION_EXCLUSION = 9;
\r
128 * <p>Binary property Grapheme_Base (new).</p>
\r
129 * <p>For programmatic determination of grapheme cluster boundaries.
\r
130 * [0..10FFFF]-Cc-Cf-Cs-Co-Cn-Zl-Zp-Grapheme_Link-Grapheme_Extend-CGJ</p>
\r
133 public static final int GRAPHEME_BASE = 10;
\r
136 * <p>Binary property Grapheme_Extend (new).</p>
\r
137 * <p>For programmatic determination of grapheme cluster boundaries.</p>
\r
138 * <p>Me+Mn+Mc+Other_Grapheme_Extend-Grapheme_Link-CGJ</p>
\r
141 public static final int GRAPHEME_EXTEND = 11;
\r
144 * <p>Binary property Grapheme_Link (new).</p>
\r
145 * <p>For programmatic determination of grapheme cluster boundaries.</p>
\r
148 public static final int GRAPHEME_LINK = 12;
\r
151 * <p>Binary property Hex_Digit.</p>
\r
152 * <p>Characters commonly used for hexadecimal numbers.</p>
\r
155 public static final int HEX_DIGIT = 13;
\r
158 * <p>Binary property Hyphen.</p>
\r
159 * <p>Dashes used to mark connections between pieces of words, plus the
\r
160 * Katakana middle dot.</p>
\r
163 public static final int HYPHEN = 14;
\r
166 * <p>Binary property ID_Continue.</p>
\r
167 * <p>Characters that can continue an identifier.</p>
\r
168 * <p>ID_Start+Mn+Mc+Nd+Pc</p>
\r
171 public static final int ID_CONTINUE = 15;
\r
174 * <p>Binary property ID_Start.</p>
\r
175 * <p>Characters that can start an identifier.</p>
\r
176 * <p>Lu+Ll+Lt+Lm+Lo+Nl</p>
\r
179 public static final int ID_START = 16;
\r
182 * <p>Binary property Ideographic.</p>
\r
183 * <p>CJKV ideographs.</p>
\r
186 public static final int IDEOGRAPHIC = 17;
\r
189 * <p>Binary property IDS_Binary_Operator (new).</p>
\r
190 * <p>For programmatic determination of Ideographic Description Sequences.
\r
194 public static final int IDS_BINARY_OPERATOR = 18;
\r
197 * <p>Binary property IDS_Trinary_Operator (new).</p>
\r
198 * <p?For programmatic determination of Ideographic Description
\r
202 public static final int IDS_TRINARY_OPERATOR = 19;
\r
205 * <p>Binary property Join_Control.</p>
\r
206 * <p>Format controls for cursive joining and ligation.</p>
\r
209 public static final int JOIN_CONTROL = 20;
\r
212 * <p>Binary property Logical_Order_Exception (new).</p>
\r
213 * <p>Characters that do not use logical order and require special
\r
214 * handling in most processing.</p>
\r
217 public static final int LOGICAL_ORDER_EXCEPTION = 21;
\r
220 * <p>Binary property Lowercase.</p>
\r
221 * <p>Same as UCharacter.isULowercase(), different from
\r
222 * UCharacter.islower().</p>
\r
223 * <p>Ll+Other_Lowercase</p>
\r
226 public static final int LOWERCASE = 22;
\r
228 /** <p>Binary property Math.</p>
\r
229 * <p>Sm+Other_Math</p>
\r
232 public static final int MATH = 23;
\r
235 * <p>Binary property Noncharacter_Code_Point.</p>
\r
236 * <p>Code points that are explicitly defined as illegal for the encoding
\r
237 * of characters.</p>
\r
240 public static final int NONCHARACTER_CODE_POINT = 24;
\r
243 * <p>Binary property Quotation_Mark.</p>
\r
246 public static final int QUOTATION_MARK = 25;
\r
249 * <p>Binary property Radical (new).</p>
\r
250 * <p>For programmatic determination of Ideographic Description
\r
254 public static final int RADICAL = 26;
\r
257 * <p>Binary property Soft_Dotted (new).</p>
\r
258 * <p>Characters with a "soft dot", like i or j.</p>
\r
259 * <p>An accent placed on these characters causes the dot to disappear.</p>
\r
262 public static final int SOFT_DOTTED = 27;
\r
265 * <p>Binary property Terminal_Punctuation.</p>
\r
266 * <p>Punctuation characters that generally mark the end of textual
\r
270 public static final int TERMINAL_PUNCTUATION = 28;
\r
273 * <p>Binary property Unified_Ideograph (new).</p>
\r
274 * <p>For programmatic determination of Ideographic Description
\r
278 public static final int UNIFIED_IDEOGRAPH = 29;
\r
281 * <p>Binary property Uppercase.</p>
\r
282 * <p>Same as UCharacter.isUUppercase(), different from
\r
283 * UCharacter.isUpperCase().</p>
\r
284 * <p>Lu+Other_Uppercase</p>
\r
287 public static final int UPPERCASE = 30;
\r
290 * <p>Binary property White_Space.</p>
\r
291 * <p>Same as UCharacter.isUWhiteSpace(), different from
\r
292 * UCharacter.isSpace() and UCharacter.isWhitespace().</p>
\r
293 * Space characters+TAB+CR+LF-ZWSP-ZWNBSP</p>
\r
296 public static final int WHITE_SPACE = 31;
\r
299 * <p>Binary property XID_Continue.</p>
\r
300 * <p>ID_Continue modified to allow closure under normalization forms
\r
301 * NFKC and NFKD.</p>
\r
304 public static final int XID_CONTINUE = 32;
\r
307 * <p>Binary property XID_Start.</p>
\r
308 * <p>ID_Start modified to allow closure under normalization forms NFKC
\r
312 public static final int XID_START = 33;
\r
315 * <p>Binary property Case_Sensitive.</p>
\r
316 * <p>Either the source of a case
\r
317 * mapping or _in_ the target of a case mapping. Not the same as
\r
318 * the general category Cased_Letter.</p>
\r
321 public static final int CASE_SENSITIVE = 34;
\r
324 * Binary property STerm (new in Unicode 4.0.1).
\r
325 * Sentence Terminal. Used in UAX #29: Text Boundaries
\r
326 * (http://www.unicode.org/reports/tr29/)
\r
329 public static final int S_TERM = 35;
\r
332 * Binary property Variation_Selector (new in Unicode 4.0.1).
\r
333 * Indicates all those characters that qualify as Variation Selectors.
\r
334 * For details on the behavior of these characters,
\r
335 * see StandardizedVariants.html and 15.6 Variation Selectors.
\r
338 public static final int VARIATION_SELECTOR = 36;
\r
341 * Binary property NFD_Inert.
\r
342 * ICU-specific property for characters that are inert under NFD,
\r
343 * i.e., they do not interact with adjacent characters.
\r
344 * Used for example in normalizing transforms in incremental mode
\r
345 * to find the boundary of safely normalizable text despite possible
\r
348 * There is one such property per normalization form.
\r
349 * These properties are computed as follows - an inert character is:
\r
350 * a) unassigned, or ALL of the following:
\r
351 * b) of combining class 0.
\r
352 * c) not decomposed by this normalization form.
\r
353 * AND if NFC or NFKC,
\r
354 * d) can never compose with a previous character.
\r
355 * e) can never compose with a following character.
\r
356 * f) can never change if another character is added.
\r
357 * Example: a-breve might satisfy all but f, but if you
\r
358 * add an ogonek it changes to a-ogonek + breve
\r
360 * See also com.ibm.text.UCD.NFSkippable in the ICU4J repository,
\r
361 * and icu/source/common/unormimp.h .
\r
364 public static final int NFD_INERT = 37;
\r
367 * Binary property NFKD_Inert.
\r
368 * ICU-specific property for characters that are inert under NFKD,
\r
369 * i.e., they do not interact with adjacent characters.
\r
370 * Used for example in normalizing transforms in incremental mode
\r
371 * to find the boundary of safely normalizable text despite possible
\r
376 public static final int NFKD_INERT = 38;
\r
379 * Binary property NFC_Inert.
\r
380 * ICU-specific property for characters that are inert under NFC,
\r
381 * i.e., they do not interact with adjacent characters.
\r
382 * Used for example in normalizing transforms in incremental mode
\r
383 * to find the boundary of safely normalizable text despite possible
\r
388 public static final int NFC_INERT = 39;
\r
391 * Binary property NFKC_Inert.
\r
392 * ICU-specific property for characters that are inert under NFKC,
\r
393 * i.e., they do not interact with adjacent characters.
\r
394 * Used for example in normalizing transforms in incremental mode
\r
395 * to find the boundary of safely normalizable text despite possible
\r
400 public static final int NFKC_INERT = 40;
\r
403 * Binary Property Segment_Starter.
\r
404 * ICU-specific property for characters that are starters in terms of
\r
405 * Unicode normalization and combining character sequences.
\r
406 * They have ccc=0 and do not occur in non-initial position of the
\r
407 * canonical decomposition of any character
\r
408 * (like " in NFD(a-umlaut) and a Jamo T in an NFD(Hangul LVT)).
\r
409 * ICU uses this property for segmenting a string for generating a set of
\r
410 * canonically equivalent strings, e.g. for canonical closure while
\r
411 * processing collation tailoring rules.
\r
414 public static final int SEGMENT_STARTER = 41;
\r
417 * Binary property Pattern_Syntax (new in Unicode 4.1).
\r
418 * See UAX #31 Identifier and Pattern Syntax
\r
419 * (http://www.unicode.org/reports/tr31/)
\r
422 public static final int PATTERN_SYNTAX = 42;
\r
425 * Binary property Pattern_White_Space (new in Unicode 4.1).
\r
426 * See UAX #31 Identifier and Pattern Syntax
\r
427 * (http://www.unicode.org/reports/tr31/)
\r
430 public static final int PATTERN_WHITE_SPACE = 43;
\r
433 * Binary property alnum (a C/POSIX character class).
\r
434 * Implemented according to the UTS #18 Annex C Standard Recommendation.
\r
435 * See the UCharacter class documentation.
\r
438 public static final int POSIX_ALNUM = 44;
\r
441 * Binary property blank (a C/POSIX character class).
\r
442 * Implemented according to the UTS #18 Annex C Standard Recommendation.
\r
443 * See the UCharacter class documentation.
\r
446 public static final int POSIX_BLANK = 45;
\r
449 * Binary property graph (a C/POSIX character class).
\r
450 * Implemented according to the UTS #18 Annex C Standard Recommendation.
\r
451 * See the UCharacter class documentation.
\r
454 public static final int POSIX_GRAPH = 46;
\r
457 * Binary property print (a C/POSIX character class).
\r
458 * Implemented according to the UTS #18 Annex C Standard Recommendation.
\r
459 * See the UCharacter class documentation.
\r
462 public static final int POSIX_PRINT = 47;
\r
465 * Binary property xdigit (a C/POSIX character class).
\r
466 * Implemented according to the UTS #18 Annex C Standard Recommendation.
\r
467 * See the UCharacter class documentation.
\r
470 public static final int POSIX_XDIGIT = 48;
\r
473 * Binary property Cased.
\r
474 * For Lowercase, Uppercase and Titlecase characters.
\r
477 public static final int CASED=49;
\r
479 * Binary property Case_Ignorable.
\r
480 * Used in context-sensitive case mappings.
\r
483 public static final int CASE_IGNORABLE=50;
\r
485 * Binary property Changes_When_Lowercased.
\r
488 public static final int CHANGES_WHEN_LOWERCASED=51;
\r
490 * Binary property Changes_When_Uppercased.
\r
493 public static final int CHANGES_WHEN_UPPERCASED=52;
\r
495 * Binary property Changes_When_Titlecased.
\r
498 public static final int CHANGES_WHEN_TITLECASED=53;
\r
500 * Binary property Changes_When_Casefolded.
\r
503 public static final int CHANGES_WHEN_CASEFOLDED=54;
\r
505 * Binary property Changes_When_Casemapped.
\r
508 public static final int CHANGES_WHEN_CASEMAPPED=55;
\r
510 * Binary property Changes_When_NFKC_Casefolded.
\r
513 public static final int CHANGES_WHEN_NFKC_CASEFOLDED=56;
\r
516 * One more than the last constant for binary Unicode properties.
\r
519 public static final int BINARY_LIMIT = 57;
\r
522 * Enumerated property Bidi_Class.
\r
523 * Same as UCharacter.getDirection(int), returns UCharacterDirection values.
\r
526 public static final int BIDI_CLASS = 0x1000;
\r
529 * First constant for enumerated/integer Unicode properties.
\r
532 public static final int INT_START = BIDI_CLASS;
\r
535 * Enumerated property Block.
\r
536 * Same as UCharacter.UnicodeBlock.of(int), returns UCharacter.UnicodeBlock
\r
540 public static final int BLOCK = 0x1001;
\r
543 * Enumerated property Canonical_Combining_Class.
\r
544 * Same as UCharacter.getCombiningClass(int), returns 8-bit numeric values.
\r
547 public static final int CANONICAL_COMBINING_CLASS = 0x1002;
\r
550 * Enumerated property Decomposition_Type.
\r
551 * Returns UCharacter.DecompositionType values.
\r
554 public static final int DECOMPOSITION_TYPE = 0x1003;
\r
557 * Enumerated property East_Asian_Width.
\r
558 * See http://www.unicode.org/reports/tr11/
\r
559 * Returns UCharacter.EastAsianWidth values.
\r
562 public static final int EAST_ASIAN_WIDTH = 0x1004;
\r
565 * Enumerated property General_Category.
\r
566 * Same as UCharacter.getType(int), returns UCharacterCategory values.
\r
569 public static final int GENERAL_CATEGORY = 0x1005;
\r
572 * Enumerated property Joining_Group.
\r
573 * Returns UCharacter.JoiningGroup values.
\r
576 public static final int JOINING_GROUP = 0x1006;
\r
579 * Enumerated property Joining_Type.
\r
580 * Returns UCharacter.JoiningType values.
\r
583 public static final int JOINING_TYPE = 0x1007;
\r
586 * Enumerated property Line_Break.
\r
587 * Returns UCharacter.LineBreak values.
\r
590 public static final int LINE_BREAK = 0x1008;
\r
593 * Enumerated property Numeric_Type.
\r
594 * Returns UCharacter.NumericType values.
\r
597 public static final int NUMERIC_TYPE = 0x1009;
\r
600 * Enumerated property Script.
\r
601 * Same as UScript.getScript(int), returns UScript values.
\r
604 public static final int SCRIPT = 0x100A;
\r
607 * Enumerated property Hangul_Syllable_Type, new in Unicode 4.
\r
608 * Returns HangulSyllableType values.
\r
611 public static final int HANGUL_SYLLABLE_TYPE = 0x100B;
\r
614 * Enumerated property NFD_Quick_Check.
\r
615 * Returns numeric values compatible with Normalizer.QuickCheckResult.
\r
618 public static final int NFD_QUICK_CHECK = 0x100C;
\r
621 * Enumerated property NFKD_Quick_Check.
\r
622 * Returns numeric values compatible with Normalizer.QuickCheckResult.
\r
625 public static final int NFKD_QUICK_CHECK = 0x100D;
\r
628 * Enumerated property NFC_Quick_Check.
\r
629 * Returns numeric values compatible with Normalizer.QuickCheckResult.
\r
632 public static final int NFC_QUICK_CHECK = 0x100E;
\r
635 * Enumerated property NFKC_Quick_Check.
\r
636 * Returns numeric values compatible with Normalizer.QuickCheckResult.
\r
639 public static final int NFKC_QUICK_CHECK = 0x100F;
\r
642 * Enumerated property Lead_Canonical_Combining_Class.
\r
643 * ICU-specific property for the ccc of the first code point
\r
644 * of the decomposition, or lccc(c)=ccc(NFD(c)[0]).
\r
645 * Useful for checking for canonically ordered text;
\r
646 * see Normalizer.FCD and http://www.unicode.org/notes/tn5/#FCD .
\r
647 * Returns 8-bit numeric values like CANONICAL_COMBINING_CLASS.
\r
650 public static final int LEAD_CANONICAL_COMBINING_CLASS = 0x1010;
\r
653 * Enumerated property Trail_Canonical_Combining_Class.
\r
654 * ICU-specific property for the ccc of the last code point
\r
655 * of the decomposition, or lccc(c)=ccc(NFD(c)[last]).
\r
656 * Useful for checking for canonically ordered text;
\r
657 * see Normalizer.FCD and http://www.unicode.org/notes/tn5/#FCD .
\r
658 * Returns 8-bit numeric values like CANONICAL_COMBINING_CLASS.
\r
661 public static final int TRAIL_CANONICAL_COMBINING_CLASS = 0x1011;
\r
664 * Enumerated property Grapheme_Cluster_Break (new in Unicode 4.1).
\r
665 * Used in UAX #29: Text Boundaries
\r
666 * (http://www.unicode.org/reports/tr29/)
\r
667 * Returns UGraphemeClusterBreak values.
\r
670 public static final int GRAPHEME_CLUSTER_BREAK = 0x1012;
\r
673 * Enumerated property Sentence_Break (new in Unicode 4.1).
\r
674 * Used in UAX #29: Text Boundaries
\r
675 * (http://www.unicode.org/reports/tr29/)
\r
676 * Returns USentenceBreak values.
\r
679 public static final int SENTENCE_BREAK = 0x1013;
\r
682 * Enumerated property Word_Break (new in Unicode 4.1).
\r
683 * Used in UAX #29: Text Boundaries
\r
684 * (http://www.unicode.org/reports/tr29/)
\r
685 * Returns UWordBreakValues values.
\r
688 public static final int WORD_BREAK = 0x1014;
\r
691 * One more than the last constant for enumerated/integer Unicode
\r
695 public static final int INT_LIMIT = 0x1015;
\r
698 * Bitmask property General_Category_Mask.
\r
699 * This is the General_Category property returned as a bit mask.
\r
700 * When used in UCharacter.getIntPropertyValue(c),
\r
701 * returns bit masks for UCharacterCategory values where exactly one bit is set.
\r
702 * When used with UCharacter.getPropertyValueName() and UCharacter.getPropertyValueEnum(),
\r
703 * a multi-bit mask is used for sets of categories like "Letters".
\r
706 public static final int GENERAL_CATEGORY_MASK = 0x2000;
\r
709 * First constant for bit-mask Unicode properties.
\r
712 public static final int MASK_START = GENERAL_CATEGORY_MASK;
\r
715 * One more than the last constant for bit-mask Unicode properties.
\r
718 public static final int MASK_LIMIT = 0x2001;
\r
721 * Double property Numeric_Value.
\r
722 * Corresponds to UCharacter.getUnicodeNumericValue(int).
\r
725 public static final int NUMERIC_VALUE = 0x3000;
\r
728 * First constant for double Unicode properties.
\r
731 public static final int DOUBLE_START = NUMERIC_VALUE;
\r
734 * One more than the last constant for double Unicode properties.
\r
737 public static final int DOUBLE_LIMIT = 0x3001;
\r
740 * String property Age.
\r
741 * Corresponds to UCharacter.getAge(int).
\r
744 public static final int AGE = 0x4000;
\r
747 * First constant for string Unicode properties.
\r
750 public static final int STRING_START = AGE;
\r
753 * String property Bidi_Mirroring_Glyph.
\r
754 * Corresponds to UCharacter.getMirror(int).
\r
757 public static final int BIDI_MIRRORING_GLYPH = 0x4001;
\r
760 * String property Case_Folding.
\r
761 * Corresponds to UCharacter.foldCase(String, boolean).
\r
764 public static final int CASE_FOLDING = 0x4002;
\r
767 * String property ISO_Comment.
\r
768 * Corresponds to UCharacter.getISOComment(int).
\r
771 public static final int ISO_COMMENT = 0x4003;
\r
774 * String property Lowercase_Mapping.
\r
775 * Corresponds to UCharacter.toLowerCase(String).
\r
778 public static final int LOWERCASE_MAPPING = 0x4004;
\r
781 * String property Name.
\r
782 * Corresponds to UCharacter.getName(int).
\r
785 public static final int NAME = 0x4005;
\r
788 * String property Simple_Case_Folding.
\r
789 * Corresponds to UCharacter.foldCase(int, boolean).
\r
792 public static final int SIMPLE_CASE_FOLDING = 0x4006;
\r
795 * String property Simple_Lowercase_Mapping.
\r
796 * Corresponds to UCharacter.toLowerCase(int).
\r
799 public static final int SIMPLE_LOWERCASE_MAPPING = 0x4007;
\r
802 * String property Simple_Titlecase_Mapping.
\r
803 * Corresponds to UCharacter.toTitleCase(int).
\r
806 public static final int SIMPLE_TITLECASE_MAPPING = 0x4008;
\r
809 * String property Simple_Uppercase_Mapping.
\r
810 * Corresponds to UCharacter.toUpperCase(int).
\r
813 public static final int SIMPLE_UPPERCASE_MAPPING = 0x4009;
\r
816 * String property Titlecase_Mapping.
\r
817 * Corresponds to UCharacter.toTitleCase(String).
\r
820 public static final int TITLECASE_MAPPING = 0x400A;
\r
823 * String property Unicode_1_Name.
\r
824 * Corresponds to UCharacter.getName1_0(int).
\r
827 public static final int UNICODE_1_NAME = 0x400B;
\r
830 * String property Uppercase_Mapping.
\r
831 * Corresponds to UCharacter.toUpperCase(String).
\r
834 public static final int UPPERCASE_MAPPING = 0x400C;
\r
837 * One more than the last constant for string Unicode properties.
\r
840 public static final int STRING_LIMIT = 0x400D;
\r
843 * Selector constants for UCharacter.getPropertyName() and
\r
844 * UCharacter.getPropertyValueName(). These selectors are used to
\r
845 * choose which name is returned for a given property or value.
\r
846 * All properties and values have a long name. Most have a short
\r
847 * name, but some do not. Unicode allows for additional names,
\r
848 * beyond the long and short name, which would be indicated by
\r
849 * LONG + i, where i=1, 2,...
\r
851 * @see UCharacter#getPropertyName
\r
852 * @see UCharacter#getPropertyValueName
\r
855 public interface NameChoice {
\r
857 * Selector for the abbreviated name of a property or value.
\r
858 * Most properties and values have a short name; those that do
\r
862 static final int SHORT = 0;
\r
865 * Selector for the long name of a property or value. All
\r
866 * properties and values have a long name.
\r
869 static final int LONG = 1;
\r
872 * The number of predefined property name choices. Individual
\r
873 * properties or values may have more than COUNT aliases.
\r
876 static final int COUNT = 2;
\r