X-Git-Url: https://git.saurik.com/apple/icu.git/blobdiff_plain/2ca993e82fb37b597a3c73ecd1586a139a6579c5..9f1b115531acc2f3640893f76e8bcf6680033062:/icuSources/common/uprops.h?ds=sidebyside diff --git a/icuSources/common/uprops.h b/icuSources/common/uprops.h index d45fc6c7..6f67756c 100644 --- a/icuSources/common/uprops.h +++ b/icuSources/common/uprops.h @@ -1,3 +1,5 @@ +// © 2016 and later: Unicode, Inc. and others. +// License & terms of use: http://www.unicode.org/copyright.html /* ******************************************************************************* * @@ -6,7 +8,7 @@ * ******************************************************************************* * file name: uprops.h -* encoding: US-ASCII +* encoding: UTF-8 * tab size: 8 (not used) * indentation:4 * @@ -86,8 +88,15 @@ enum { * ((ntv>>2)-0xbf) * 60^((ntv&3)+1) = (1..9)*(60^1..60^4) */ UPROPS_NTV_BASE60_START=0x300, + /** + * Fraction-20 values: + * frac20 = ntv-0x324 = 0..0x17 -> 1|3|5|7 / 20|40|80|160|320|640 + * numerator: num = 2*(frac20&3)+1 + * denominator: den = 20<<(frac20>>2) + */ + UPROPS_NTV_FRACTION20_START=UPROPS_NTV_BASE60_START+36, // 0x300+9*4=0x324 /** No numeric value (yet). */ - UPROPS_NTV_RESERVED_START=UPROPS_NTV_BASE60_START+36, /* 0x300+9*4=0x324 */ + UPROPS_NTV_RESERVED_START=UPROPS_NTV_FRACTION20_START+24, // 0x324+6*4=0x34c UPROPS_NTV_MAX_SMALL_INT=UPROPS_NTV_FRACTION_START-UPROPS_NTV_NUMERIC_START-1 }; @@ -180,15 +189,15 @@ enum { UPROPS_VARIATION_SELECTOR, UPROPS_PATTERN_SYNTAX, /* new in ICU 3.4 and Unicode 4.1 */ UPROPS_PATTERN_WHITE_SPACE, - UPROPS_RESERVED, /* reserved & unused */ + UPROPS_PREPENDED_CONCATENATION_MARK, // new in ICU 60 and Unicode 10 UPROPS_BINARY_1_TOP /* ==32 - full! */ }; /* * Properties in vector word 2 * Bits - * 31..28 http://www.unicode.org/reports/tr51/#Emoji_Properties - * 27..26 reserved + * 31..27 http://www.unicode.org/reports/tr51/#Emoji_Properties + * 26 reserved * 25..20 Line Break * 19..15 Sentence Break * 14..10 Word Break @@ -196,7 +205,8 @@ enum { * 4.. 0 Decomposition Type */ enum { - UPROPS_2_EMOJI=28, + UPROPS_2_EMOJI_COMPONENT=27, + UPROPS_2_EMOJI, UPROPS_2_EMOJI_PRESENTATION, UPROPS_2_EMOJI_MODIFIER, UPROPS_2_EMOJI_MODIFIER_BASE