ICU 62.1 62.1
uchar.h
Go to the documentation of this file.
1// © 2016 and later: Unicode, Inc. and others.
2// License & terms of use: http://www.unicode.org/copyright.html
3/*
4**********************************************************************
5* Copyright (C) 1997-2016, International Business Machines
6* Corporation and others. All Rights Reserved.
7**********************************************************************
8*
9* File UCHAR.H
10*
11* Modification History:
12*
13* Date Name Description
14* 04/02/97 aliu Creation.
15* 03/29/99 helena Updated for C APIs.
16* 4/15/99 Madhu Updated for C Implementation and Javadoc
17* 5/20/99 Madhu Added the function u_getVersion()
18* 8/19/1999 srl Upgraded scripts to Unicode 3.0
19* 8/27/1999 schererm UCharDirection constants: U_...
20* 11/11/1999 weiv added u_isalnum(), cleaned comments
21* 01/11/2000 helena Renamed u_getVersion to u_getUnicodeVersion().
22******************************************************************************
23*/
24
25#ifndef UCHAR_H
26#define UCHAR_H
27
28#include "unicode/utypes.h"
30
32
33/*==========================================================================*/
34/* Unicode version number */
35/*==========================================================================*/
45#define U_UNICODE_VERSION "11.0"
46
127#define UCHAR_MIN_VALUE 0
128
137#define UCHAR_MAX_VALUE 0x10ffff
138
143#define U_MASK(x) ((uint32_t)1<<(x))
144
165typedef enum UProperty {
166 /*
167 * Note: UProperty constants are parsed by preparseucd.py.
168 * It matches lines like
169 * UCHAR_<Unicode property name>=<integer>,
170 */
171
172 /* Note: Place UCHAR_ALPHABETIC before UCHAR_BINARY_START so that
173 debuggers display UCHAR_ALPHABETIC as the symbolic name for 0,
174 rather than UCHAR_BINARY_START. Likewise for other *_START
175 identifiers. */
176
456#ifndef U_HIDE_DEPRECATED_API
462#endif // U_HIDE_DEPRECATED_API
463
549#ifndef U_HIDE_DEPRECATED_API
555#endif // U_HIDE_DEPRECATED_API
556
568#ifndef U_HIDE_DEPRECATED_API
574#endif // U_HIDE_DEPRECATED_API
575
581#ifndef U_HIDE_DEPRECATED_API
587#endif // U_HIDE_DEPRECATED_API
588
591 UCHAR_AGE=0x4000,
600#ifndef U_HIDE_DEPRECATED_API
604#endif /* U_HIDE_DEPRECATED_API */
626#ifndef U_HIDE_DEPRECATED_API
632#endif /* U_HIDE_DEPRECATED_API */
639#ifndef U_HIDE_DEPRECATED_API
645#endif // U_HIDE_DEPRECATED_API
646
655#ifndef U_HIDE_DEPRECATED_API
661#endif // U_HIDE_DEPRECATED_API
662
666
672typedef enum UCharCategory
673{
674 /*
675 * Note: UCharCategory constants and their API comments are parsed by preparseucd.py.
676 * It matches pairs of lines like
677 * / ** <Unicode 2-letter General_Category value> comment... * /
678 * U_<[A-Z_]+> = <integer>,
679 */
680
752
767#define U_GC_CN_MASK U_MASK(U_GENERAL_OTHER_TYPES)
768
770#define U_GC_LU_MASK U_MASK(U_UPPERCASE_LETTER)
772#define U_GC_LL_MASK U_MASK(U_LOWERCASE_LETTER)
774#define U_GC_LT_MASK U_MASK(U_TITLECASE_LETTER)
776#define U_GC_LM_MASK U_MASK(U_MODIFIER_LETTER)
778#define U_GC_LO_MASK U_MASK(U_OTHER_LETTER)
779
781#define U_GC_MN_MASK U_MASK(U_NON_SPACING_MARK)
783#define U_GC_ME_MASK U_MASK(U_ENCLOSING_MARK)
785#define U_GC_MC_MASK U_MASK(U_COMBINING_SPACING_MARK)
786
788#define U_GC_ND_MASK U_MASK(U_DECIMAL_DIGIT_NUMBER)
790#define U_GC_NL_MASK U_MASK(U_LETTER_NUMBER)
792#define U_GC_NO_MASK U_MASK(U_OTHER_NUMBER)
793
795#define U_GC_ZS_MASK U_MASK(U_SPACE_SEPARATOR)
797#define U_GC_ZL_MASK U_MASK(U_LINE_SEPARATOR)
799#define U_GC_ZP_MASK U_MASK(U_PARAGRAPH_SEPARATOR)
800
802#define U_GC_CC_MASK U_MASK(U_CONTROL_CHAR)
804#define U_GC_CF_MASK U_MASK(U_FORMAT_CHAR)
806#define U_GC_CO_MASK U_MASK(U_PRIVATE_USE_CHAR)
808#define U_GC_CS_MASK U_MASK(U_SURROGATE)
809
811#define U_GC_PD_MASK U_MASK(U_DASH_PUNCTUATION)
813#define U_GC_PS_MASK U_MASK(U_START_PUNCTUATION)
815#define U_GC_PE_MASK U_MASK(U_END_PUNCTUATION)
817#define U_GC_PC_MASK U_MASK(U_CONNECTOR_PUNCTUATION)
819#define U_GC_PO_MASK U_MASK(U_OTHER_PUNCTUATION)
820
822#define U_GC_SM_MASK U_MASK(U_MATH_SYMBOL)
824#define U_GC_SC_MASK U_MASK(U_CURRENCY_SYMBOL)
826#define U_GC_SK_MASK U_MASK(U_MODIFIER_SYMBOL)
828#define U_GC_SO_MASK U_MASK(U_OTHER_SYMBOL)
829
831#define U_GC_PI_MASK U_MASK(U_INITIAL_PUNCTUATION)
833#define U_GC_PF_MASK U_MASK(U_FINAL_PUNCTUATION)
834
835
837#define U_GC_L_MASK \
838 (U_GC_LU_MASK|U_GC_LL_MASK|U_GC_LT_MASK|U_GC_LM_MASK|U_GC_LO_MASK)
839
841#define U_GC_LC_MASK \
842 (U_GC_LU_MASK|U_GC_LL_MASK|U_GC_LT_MASK)
843
845#define U_GC_M_MASK (U_GC_MN_MASK|U_GC_ME_MASK|U_GC_MC_MASK)
846
848#define U_GC_N_MASK (U_GC_ND_MASK|U_GC_NL_MASK|U_GC_NO_MASK)
849
851#define U_GC_Z_MASK (U_GC_ZS_MASK|U_GC_ZL_MASK|U_GC_ZP_MASK)
852
854#define U_GC_C_MASK \
855 (U_GC_CN_MASK|U_GC_CC_MASK|U_GC_CF_MASK|U_GC_CO_MASK|U_GC_CS_MASK)
856
858#define U_GC_P_MASK \
859 (U_GC_PD_MASK|U_GC_PS_MASK|U_GC_PE_MASK|U_GC_PC_MASK|U_GC_PO_MASK| \
860 U_GC_PI_MASK|U_GC_PF_MASK)
861
863#define U_GC_S_MASK (U_GC_SM_MASK|U_GC_SC_MASK|U_GC_SK_MASK|U_GC_SO_MASK)
864
869typedef enum UCharDirection {
870 /*
871 * Note: UCharDirection constants and their API comments are parsed by preparseucd.py.
872 * It matches pairs of lines like
873 * / ** <Unicode 1..3-letter Bidi_Class value> comment... * /
874 * U_<[A-Z_]+> = <integer>,
875 */
876
923#ifndef U_HIDE_DEPRECATED_API
931#endif // U_HIDE_DEPRECATED_API
933
941 /*
942 * Note: UBidiPairedBracketType constants are parsed by preparseucd.py.
943 * It matches lines like
944 * U_BPT_<Unicode Bidi_Paired_Bracket_Type value name>
945 */
946
953#ifndef U_HIDE_DEPRECATED_API
960 U_BPT_COUNT /* 3 */
961#endif // U_HIDE_DEPRECATED_API
963
969 /*
970 * Note: UBlockCode constants are parsed by preparseucd.py.
971 * It matches lines like
972 * UBLOCK_<Unicode Block value name> = <integer>,
973 */
974
976 UBLOCK_NO_BLOCK = 0, /*[none]*/ /* Special range indicating No_Block */
977
979 UBLOCK_BASIC_LATIN = 1, /*[0000]*/
980
983
986
989
992
995
998
1003 UBLOCK_GREEK =8, /*[0370]*/
1004
1006 UBLOCK_CYRILLIC =9, /*[0400]*/
1007
1009 UBLOCK_ARMENIAN =10, /*[0530]*/
1010
1012 UBLOCK_HEBREW =11, /*[0590]*/
1013
1015 UBLOCK_ARABIC =12, /*[0600]*/
1016
1018 UBLOCK_SYRIAC =13, /*[0700]*/
1019
1021 UBLOCK_THAANA =14, /*[0780]*/
1022
1024 UBLOCK_DEVANAGARI =15, /*[0900]*/
1025
1027 UBLOCK_BENGALI =16, /*[0980]*/
1028
1030 UBLOCK_GURMUKHI =17, /*[0A00]*/
1031
1033 UBLOCK_GUJARATI =18, /*[0A80]*/
1034
1036 UBLOCK_ORIYA =19, /*[0B00]*/
1037
1039 UBLOCK_TAMIL =20, /*[0B80]*/
1040
1042 UBLOCK_TELUGU =21, /*[0C00]*/
1043
1045 UBLOCK_KANNADA =22, /*[0C80]*/
1046
1048 UBLOCK_MALAYALAM =23, /*[0D00]*/
1049
1051 UBLOCK_SINHALA =24, /*[0D80]*/
1052
1054 UBLOCK_THAI =25, /*[0E00]*/
1055
1057 UBLOCK_LAO =26, /*[0E80]*/
1058
1060 UBLOCK_TIBETAN =27, /*[0F00]*/
1061
1063 UBLOCK_MYANMAR =28, /*[1000]*/
1064
1066 UBLOCK_GEORGIAN =29, /*[10A0]*/
1067
1069 UBLOCK_HANGUL_JAMO =30, /*[1100]*/
1070
1072 UBLOCK_ETHIOPIC =31, /*[1200]*/
1073
1075 UBLOCK_CHEROKEE =32, /*[13A0]*/
1076
1079
1081 UBLOCK_OGHAM =34, /*[1680]*/
1082
1084 UBLOCK_RUNIC =35, /*[16A0]*/
1085
1087 UBLOCK_KHMER =36, /*[1780]*/
1088
1090 UBLOCK_MONGOLIAN =37, /*[1800]*/
1091
1094
1097
1100
1103
1106
1112
1115
1117 UBLOCK_NUMBER_FORMS =45, /*[2150]*/
1118
1120 UBLOCK_ARROWS =46, /*[2190]*/
1121
1124
1127
1130
1133
1136
1138 UBLOCK_BOX_DRAWING =52, /*[2500]*/
1139
1142
1145
1148
1150 UBLOCK_DINGBATS =56, /*[2700]*/
1151
1154
1157
1160
1163
1166
1168 UBLOCK_HIRAGANA =62, /*[3040]*/
1169
1171 UBLOCK_KATAKANA =63, /*[30A0]*/
1172
1174 UBLOCK_BOPOMOFO =64, /*[3100]*/
1175
1178
1180 UBLOCK_KANBUN =66, /*[3190]*/
1181
1184
1187
1190
1193
1196
1198 UBLOCK_YI_SYLLABLES =72, /*[A000]*/
1199
1201 UBLOCK_YI_RADICALS =73, /*[A490]*/
1202
1205
1208
1211
1214
1235
1238
1241
1244
1247
1250
1253
1256
1258 UBLOCK_SPECIALS =86, /*[FFF0]*/
1259
1262
1263 /* New blocks in Unicode 3.1 */
1264
1266 UBLOCK_OLD_ITALIC = 88, /*[10300]*/
1268 UBLOCK_GOTHIC = 89, /*[10330]*/
1270 UBLOCK_DESERET = 90, /*[10400]*/
1274 UBLOCK_MUSICAL_SYMBOLS = 92, /*[1D100]*/
1282 UBLOCK_TAGS = 96, /*[E0000]*/
1283
1284 /* New blocks in Unicode 3.2 */
1285
1294 UBLOCK_TAGALOG = 98, /*[1700]*/
1296 UBLOCK_HANUNOO = 99, /*[1720]*/
1298 UBLOCK_BUHID = 100, /*[1740]*/
1300 UBLOCK_TAGBANWA = 101, /*[1760]*/
1319
1320 /* New blocks in Unicode 4 */
1321
1323 UBLOCK_LIMBU = 111, /*[1900]*/
1325 UBLOCK_TAI_LE = 112, /*[1950]*/
1327 UBLOCK_KHMER_SYMBOLS = 113, /*[19E0]*/
1335 UBLOCK_LINEAR_B_SYLLABARY = 117, /*[10000]*/
1337 UBLOCK_LINEAR_B_IDEOGRAMS = 118, /*[10080]*/
1339 UBLOCK_AEGEAN_NUMBERS = 119, /*[10100]*/
1341 UBLOCK_UGARITIC = 120, /*[10380]*/
1343 UBLOCK_SHAVIAN = 121, /*[10450]*/
1345 UBLOCK_OSMANYA = 122, /*[10480]*/
1347 UBLOCK_CYPRIOT_SYLLABARY = 123, /*[10800]*/
1352
1353 /* New blocks in Unicode 4.1 */
1354
1362 UBLOCK_BUGINESE = 129, /*[1A00]*/
1364 UBLOCK_CJK_STROKES = 130, /*[31C0]*/
1368 UBLOCK_COPTIC = 132, /*[2C80]*/
1376 UBLOCK_GLAGOLITIC = 136, /*[2C00]*/
1378 UBLOCK_KHAROSHTHI = 137, /*[10A00]*/
1382 UBLOCK_NEW_TAI_LUE = 139, /*[1980]*/
1384 UBLOCK_OLD_PERSIAN = 140, /*[103A0]*/
1390 UBLOCK_SYLOTI_NAGRI = 143, /*[A800]*/
1392 UBLOCK_TIFINAGH = 144, /*[2D30]*/
1394 UBLOCK_VERTICAL_FORMS = 145, /*[FE10]*/
1395
1396 /* New blocks in Unicode 5.0 */
1397
1399 UBLOCK_NKO = 146, /*[07C0]*/
1401 UBLOCK_BALINESE = 147, /*[1B00]*/
1403 UBLOCK_LATIN_EXTENDED_C = 148, /*[2C60]*/
1405 UBLOCK_LATIN_EXTENDED_D = 149, /*[A720]*/
1407 UBLOCK_PHAGS_PA = 150, /*[A840]*/
1409 UBLOCK_PHOENICIAN = 151, /*[10900]*/
1411 UBLOCK_CUNEIFORM = 152, /*[12000]*/
1416
1417 /* New blocks in Unicode 5.1 */
1418
1420 UBLOCK_SUNDANESE = 155, /*[1B80]*/
1422 UBLOCK_LEPCHA = 156, /*[1C00]*/
1424 UBLOCK_OL_CHIKI = 157, /*[1C50]*/
1428 UBLOCK_VAI = 159, /*[A500]*/
1432 UBLOCK_SAURASHTRA = 161, /*[A880]*/
1434 UBLOCK_KAYAH_LI = 162, /*[A900]*/
1436 UBLOCK_REJANG = 163, /*[A930]*/
1438 UBLOCK_CHAM = 164, /*[AA00]*/
1440 UBLOCK_ANCIENT_SYMBOLS = 165, /*[10190]*/
1442 UBLOCK_PHAISTOS_DISC = 166, /*[101D0]*/
1444 UBLOCK_LYCIAN = 167, /*[10280]*/
1446 UBLOCK_CARIAN = 168, /*[102A0]*/
1448 UBLOCK_LYDIAN = 169, /*[10920]*/
1450 UBLOCK_MAHJONG_TILES = 170, /*[1F000]*/
1452 UBLOCK_DOMINO_TILES = 171, /*[1F030]*/
1453
1454 /* New blocks in Unicode 5.2 */
1455
1457 UBLOCK_SAMARITAN = 172, /*[0800]*/
1461 UBLOCK_TAI_THAM = 174, /*[1A20]*/
1463 UBLOCK_VEDIC_EXTENSIONS = 175, /*[1CD0]*/
1465 UBLOCK_LISU = 176, /*[A4D0]*/
1467 UBLOCK_BAMUM = 177, /*[A6A0]*/
1475 UBLOCK_JAVANESE = 181, /*[A980]*/
1479 UBLOCK_TAI_VIET = 183, /*[AA80]*/
1481 UBLOCK_MEETEI_MAYEK = 184, /*[ABC0]*/
1485 UBLOCK_IMPERIAL_ARAMAIC = 186, /*[10840]*/
1487 UBLOCK_OLD_SOUTH_ARABIAN = 187, /*[10A60]*/
1489 UBLOCK_AVESTAN = 188, /*[10B00]*/
1495 UBLOCK_OLD_TURKIC = 191, /*[10C00]*/
1499 UBLOCK_KAITHI = 193, /*[11080]*/
1508
1509 /* New blocks in Unicode 6.0 */
1510
1512 UBLOCK_MANDAIC = 198, /*[0840]*/
1514 UBLOCK_BATAK = 199, /*[1BC0]*/
1518 UBLOCK_BRAHMI = 201, /*[11000]*/
1520 UBLOCK_BAMUM_SUPPLEMENT = 202, /*[16800]*/
1522 UBLOCK_KANA_SUPPLEMENT = 203, /*[1B000]*/
1524 UBLOCK_PLAYING_CARDS = 204, /*[1F0A0]*/
1528 UBLOCK_EMOTICONS = 206, /*[1F600]*/
1532 UBLOCK_ALCHEMICAL_SYMBOLS = 208, /*[1F700]*/
1535
1536 /* New blocks in Unicode 6.1 */
1537
1543 UBLOCK_CHAKMA = 212, /*[11100]*/
1547 UBLOCK_MEROITIC_CURSIVE = 214, /*[109A0]*/
1551 UBLOCK_MIAO = 216, /*[16F00]*/
1553 UBLOCK_SHARADA = 217, /*[11180]*/
1555 UBLOCK_SORA_SOMPENG = 218, /*[110D0]*/
1559 UBLOCK_TAKRI = 220, /*[11680]*/
1560
1561 /* New blocks in Unicode 7.0 */
1562
1564 UBLOCK_BASSA_VAH = 221, /*[16AD0]*/
1566 UBLOCK_CAUCASIAN_ALBANIAN = 222, /*[10530]*/
1572 UBLOCK_DUPLOYAN = 225, /*[1BC00]*/
1574 UBLOCK_ELBASAN = 226, /*[10500]*/
1578 UBLOCK_GRANTHA = 228, /*[11300]*/
1580 UBLOCK_KHOJKI = 229, /*[11200]*/
1582 UBLOCK_KHUDAWADI = 230, /*[112B0]*/
1584 UBLOCK_LATIN_EXTENDED_E = 231, /*[AB30]*/
1586 UBLOCK_LINEAR_A = 232, /*[10600]*/
1588 UBLOCK_MAHAJANI = 233, /*[11150]*/
1590 UBLOCK_MANICHAEAN = 234, /*[10AC0]*/
1592 UBLOCK_MENDE_KIKAKUI = 235, /*[1E800]*/
1594 UBLOCK_MODI = 236, /*[11600]*/
1596 UBLOCK_MRO = 237, /*[16A40]*/
1600 UBLOCK_NABATAEAN = 239, /*[10880]*/
1602 UBLOCK_OLD_NORTH_ARABIAN = 240, /*[10A80]*/
1604 UBLOCK_OLD_PERMIC = 241, /*[10350]*/
1608 UBLOCK_PAHAWH_HMONG = 243, /*[16B00]*/
1610 UBLOCK_PALMYRENE = 244, /*[10860]*/
1612 UBLOCK_PAU_CIN_HAU = 245, /*[11AC0]*/
1614 UBLOCK_PSALTER_PAHLAVI = 246, /*[10B80]*/
1618 UBLOCK_SIDDHAM = 248, /*[11580]*/
1624 UBLOCK_TIRHUTA = 251, /*[11480]*/
1626 UBLOCK_WARANG_CITI = 252, /*[118A0]*/
1627
1628 /* New blocks in Unicode 8.0 */
1629
1631 UBLOCK_AHOM = 253, /*[11700]*/
1641 UBLOCK_HATRAN = 258, /*[108E0]*/
1643 UBLOCK_MULTANI = 259, /*[11280]*/
1645 UBLOCK_OLD_HUNGARIAN = 260, /*[10C80]*/
1649 UBLOCK_SUTTON_SIGNWRITING = 262, /*[1D800]*/
1650
1651 /* New blocks in Unicode 9.0 */
1652
1654 UBLOCK_ADLAM = 263, /*[1E900]*/
1656 UBLOCK_BHAIKSUKI = 264, /*[11C00]*/
1664 UBLOCK_MARCHEN = 268, /*[11C70]*/
1668 UBLOCK_NEWA = 270, /*[11400]*/
1670 UBLOCK_OSAGE = 271, /*[104B0]*/
1672 UBLOCK_TANGUT = 272, /*[17000]*/
1674 UBLOCK_TANGUT_COMPONENTS = 273, /*[18800]*/
1675
1676 // New blocks in Unicode 10.0
1677
1681 UBLOCK_KANA_EXTENDED_A = 275, /*[1B100]*/
1683 UBLOCK_MASARAM_GONDI = 276, /*[11D00]*/
1685 UBLOCK_NUSHU = 277, /*[1B170]*/
1687 UBLOCK_SOYOMBO = 278, /*[11A50]*/
1691 UBLOCK_ZANABAZAR_SQUARE = 280, /*[11A00]*/
1692
1693 // New blocks in Unicode 11.0
1694
1696 UBLOCK_CHESS_SYMBOLS = 281, /*[1FA00]*/
1698 UBLOCK_DOGRA = 282, /*[11800]*/
1702 UBLOCK_GUNJALA_GONDI = 284, /*[11D60]*/
1704 UBLOCK_HANIFI_ROHINGYA = 285, /*[10D00]*/
1708 UBLOCK_MAKASAR = 287, /*[11EE0]*/
1710 UBLOCK_MAYAN_NUMERALS = 288, /*[1D2E0]*/
1712 UBLOCK_MEDEFAIDRIN = 289, /*[16E40]*/
1714 UBLOCK_OLD_SOGDIAN = 290, /*[10F00]*/
1716 UBLOCK_SOGDIAN = 291, /*[10F30]*/
1717
1718#ifndef U_HIDE_DEPRECATED_API
1726#endif // U_HIDE_DEPRECATED_API
1727
1731
1734
1742typedef enum UEastAsianWidth {
1743 /*
1744 * Note: UEastAsianWidth constants are parsed by preparseucd.py.
1745 * It matches lines like
1746 * U_EA_<Unicode East_Asian_Width value name>
1747 */
1748
1749 U_EA_NEUTRAL, /*[N]*/
1750 U_EA_AMBIGUOUS, /*[A]*/
1751 U_EA_HALFWIDTH, /*[H]*/
1752 U_EA_FULLWIDTH, /*[F]*/
1753 U_EA_NARROW, /*[Na]*/
1754 U_EA_WIDE, /*[W]*/
1755#ifndef U_HIDE_DEPRECATED_API
1763#endif // U_HIDE_DEPRECATED_API
1765
1777typedef enum UCharNameChoice {
1780#ifndef U_HIDE_DEPRECATED_API
1787#endif /* U_HIDE_DEPRECATED_API */
1792#ifndef U_HIDE_DEPRECATED_API
1798#endif // U_HIDE_DEPRECATED_API
1800
1815 U_SHORT_PROPERTY_NAME,
1816 U_LONG_PROPERTY_NAME,
1817#ifndef U_HIDE_DEPRECATED_API
1823#endif // U_HIDE_DEPRECATED_API
1825
1833 /*
1834 * Note: UDecompositionType constants are parsed by preparseucd.py.
1835 * It matches lines like
1836 * U_DT_<Unicode Decomposition_Type value name>
1837 */
1838
1839 U_DT_NONE, /*[none]*/
1840 U_DT_CANONICAL, /*[can]*/
1841 U_DT_COMPAT, /*[com]*/
1842 U_DT_CIRCLE, /*[enc]*/
1843 U_DT_FINAL, /*[fin]*/
1844 U_DT_FONT, /*[font]*/
1845 U_DT_FRACTION, /*[fra]*/
1846 U_DT_INITIAL, /*[init]*/
1847 U_DT_ISOLATED, /*[iso]*/
1848 U_DT_MEDIAL, /*[med]*/
1849 U_DT_NARROW, /*[nar]*/
1850 U_DT_NOBREAK, /*[nb]*/
1851 U_DT_SMALL, /*[sml]*/
1852 U_DT_SQUARE, /*[sqr]*/
1853 U_DT_SUB, /*[sub]*/
1854 U_DT_SUPER, /*[sup]*/
1855 U_DT_VERTICAL, /*[vert]*/
1856 U_DT_WIDE, /*[wide]*/
1857#ifndef U_HIDE_DEPRECATED_API
1864 U_DT_COUNT /* 18 */
1865#endif // U_HIDE_DEPRECATED_API
1867
1874typedef enum UJoiningType {
1875 /*
1876 * Note: UJoiningType constants are parsed by preparseucd.py.
1877 * It matches lines like
1878 * U_JT_<Unicode Joining_Type value name>
1879 */
1880
1881 U_JT_NON_JOINING, /*[U]*/
1882 U_JT_JOIN_CAUSING, /*[C]*/
1883 U_JT_DUAL_JOINING, /*[D]*/
1884 U_JT_LEFT_JOINING, /*[L]*/
1885 U_JT_RIGHT_JOINING, /*[R]*/
1886 U_JT_TRANSPARENT, /*[T]*/
1887#ifndef U_HIDE_DEPRECATED_API
1894 U_JT_COUNT /* 6 */
1895#endif // U_HIDE_DEPRECATED_API
1897
1904typedef enum UJoiningGroup {
1905 /*
1906 * Note: UJoiningGroup constants are parsed by preparseucd.py.
1907 * It matches lines like
1908 * U_JG_<Unicode Joining_Group value name>
1909 */
1910
1911 U_JG_NO_JOINING_GROUP,
1912 U_JG_AIN,
1913 U_JG_ALAPH,
1914 U_JG_ALEF,
1915 U_JG_BEH,
1916 U_JG_BETH,
1917 U_JG_DAL,
1918 U_JG_DALATH_RISH,
1919 U_JG_E,
1920 U_JG_FEH,
1921 U_JG_FINAL_SEMKATH,
1922 U_JG_GAF,
1923 U_JG_GAMAL,
1924 U_JG_HAH,
1926 U_JG_HAMZA_ON_HEH_GOAL=U_JG_TEH_MARBUTA_GOAL,
1927 U_JG_HE,
1928 U_JG_HEH,
1929 U_JG_HEH_GOAL,
1930 U_JG_HETH,
1931 U_JG_KAF,
1932 U_JG_KAPH,
1933 U_JG_KNOTTED_HEH,
1934 U_JG_LAM,
1935 U_JG_LAMADH,
1936 U_JG_MEEM,
1937 U_JG_MIM,
1938 U_JG_NOON,
1939 U_JG_NUN,
1940 U_JG_PE,
1941 U_JG_QAF,
1942 U_JG_QAPH,
1943 U_JG_REH,
1944 U_JG_REVERSED_PE,
1945 U_JG_SAD,
1946 U_JG_SADHE,
1947 U_JG_SEEN,
1948 U_JG_SEMKATH,
1949 U_JG_SHIN,
1950 U_JG_SWASH_KAF,
1951 U_JG_SYRIAC_WAW,
1952 U_JG_TAH,
1953 U_JG_TAW,
1954 U_JG_TEH_MARBUTA,
1955 U_JG_TETH,
1956 U_JG_WAW,
1957 U_JG_YEH,
1958 U_JG_YEH_BARREE,
1959 U_JG_YEH_WITH_TAIL,
1960 U_JG_YUDH,
1961 U_JG_YUDH_HE,
1962 U_JG_ZAIN,
2017#ifndef U_HIDE_DEPRECATED_API
2025#endif // U_HIDE_DEPRECATED_API
2027
2035 /*
2036 * Note: UGraphemeClusterBreak constants are parsed by preparseucd.py.
2037 * It matches lines like
2038 * U_GCB_<Unicode Grapheme_Cluster_Break value name>
2039 */
2040
2041 U_GCB_OTHER = 0, /*[XX]*/
2042 U_GCB_CONTROL = 1, /*[CN]*/
2043 U_GCB_CR = 2, /*[CR]*/
2044 U_GCB_EXTEND = 3, /*[EX]*/
2045 U_GCB_L = 4, /*[L]*/
2046 U_GCB_LF = 5, /*[LF]*/
2047 U_GCB_LV = 6, /*[LV]*/
2048 U_GCB_LVT = 7, /*[LVT]*/
2049 U_GCB_T = 8, /*[T]*/
2050 U_GCB_V = 9, /*[V]*/
2052 U_GCB_SPACING_MARK = 10, /*[SM]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */
2054 U_GCB_PREPEND = 11, /*[PP]*/
2056 U_GCB_REGIONAL_INDICATOR = 12, /*[RI]*/ /* new in Unicode 6.2/ICU 50 */
2058 U_GCB_E_BASE = 13, /*[EB]*/ /* from here on: new in Unicode 9.0/ICU 58 */
2060 U_GCB_E_BASE_GAZ = 14, /*[EBG]*/
2062 U_GCB_E_MODIFIER = 15, /*[EM]*/
2064 U_GCB_GLUE_AFTER_ZWJ = 16, /*[GAZ]*/
2066 U_GCB_ZWJ = 17, /*[ZWJ]*/
2067
2068#ifndef U_HIDE_DEPRECATED_API
2075 U_GCB_COUNT = 18
2076#endif // U_HIDE_DEPRECATED_API
2078
2086typedef enum UWordBreakValues {
2087 /*
2088 * Note: UWordBreakValues constants are parsed by preparseucd.py.
2089 * It matches lines like
2090 * U_WB_<Unicode Word_Break value name>
2091 */
2092
2093 U_WB_OTHER = 0, /*[XX]*/
2094 U_WB_ALETTER = 1, /*[LE]*/
2095 U_WB_FORMAT = 2, /*[FO]*/
2096 U_WB_KATAKANA = 3, /*[KA]*/
2097 U_WB_MIDLETTER = 4, /*[ML]*/
2098 U_WB_MIDNUM = 5, /*[MN]*/
2099 U_WB_NUMERIC = 6, /*[NU]*/
2100 U_WB_EXTENDNUMLET = 7, /*[EX]*/
2102 U_WB_CR = 8, /*[CR]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */
2104 U_WB_EXTEND = 9, /*[Extend]*/
2106 U_WB_LF = 10, /*[LF]*/
2108 U_WB_MIDNUMLET =11, /*[MB]*/
2110 U_WB_NEWLINE =12, /*[NL]*/
2112 U_WB_REGIONAL_INDICATOR = 13, /*[RI]*/ /* new in Unicode 6.2/ICU 50 */
2114 U_WB_HEBREW_LETTER = 14, /*[HL]*/ /* from here on: new in Unicode 6.3/ICU 52 */
2116 U_WB_SINGLE_QUOTE = 15, /*[SQ]*/
2118 U_WB_DOUBLE_QUOTE = 16, /*[DQ]*/
2120 U_WB_E_BASE = 17, /*[EB]*/ /* from here on: new in Unicode 9.0/ICU 58 */
2122 U_WB_E_BASE_GAZ = 18, /*[EBG]*/
2124 U_WB_E_MODIFIER = 19, /*[EM]*/
2126 U_WB_GLUE_AFTER_ZWJ = 20, /*[GAZ]*/
2128 U_WB_ZWJ = 21, /*[ZWJ]*/
2130 U_WB_WSEGSPACE = 22, /*[WSEGSPACE]*/
2131
2132#ifndef U_HIDE_DEPRECATED_API
2139 U_WB_COUNT = 23
2140#endif // U_HIDE_DEPRECATED_API
2142
2149typedef enum USentenceBreak {
2150 /*
2151 * Note: USentenceBreak constants are parsed by preparseucd.py.
2152 * It matches lines like
2153 * U_SB_<Unicode Sentence_Break value name>
2154 */
2155
2156 U_SB_OTHER = 0, /*[XX]*/
2157 U_SB_ATERM = 1, /*[AT]*/
2158 U_SB_CLOSE = 2, /*[CL]*/
2159 U_SB_FORMAT = 3, /*[FO]*/
2160 U_SB_LOWER = 4, /*[LO]*/
2161 U_SB_NUMERIC = 5, /*[NU]*/
2162 U_SB_OLETTER = 6, /*[LE]*/
2163 U_SB_SEP = 7, /*[SE]*/
2164 U_SB_SP = 8, /*[SP]*/
2165 U_SB_STERM = 9, /*[ST]*/
2166 U_SB_UPPER = 10, /*[UP]*/
2167 U_SB_CR = 11, /*[CR]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */
2168 U_SB_EXTEND = 12, /*[EX]*/
2169 U_SB_LF = 13, /*[LF]*/
2170 U_SB_SCONTINUE = 14, /*[SC]*/
2171#ifndef U_HIDE_DEPRECATED_API
2178 U_SB_COUNT = 15
2179#endif // U_HIDE_DEPRECATED_API
2181
2188typedef enum ULineBreak {
2189 /*
2190 * Note: ULineBreak constants are parsed by preparseucd.py.
2191 * It matches lines like
2192 * U_LB_<Unicode Line_Break value name>
2193 */
2194
2195 U_LB_UNKNOWN = 0, /*[XX]*/
2196 U_LB_AMBIGUOUS = 1, /*[AI]*/
2197 U_LB_ALPHABETIC = 2, /*[AL]*/
2198 U_LB_BREAK_BOTH = 3, /*[B2]*/
2199 U_LB_BREAK_AFTER = 4, /*[BA]*/
2200 U_LB_BREAK_BEFORE = 5, /*[BB]*/
2201 U_LB_MANDATORY_BREAK = 6, /*[BK]*/
2202 U_LB_CONTINGENT_BREAK = 7, /*[CB]*/
2203 U_LB_CLOSE_PUNCTUATION = 8, /*[CL]*/
2204 U_LB_COMBINING_MARK = 9, /*[CM]*/
2205 U_LB_CARRIAGE_RETURN = 10, /*[CR]*/
2206 U_LB_EXCLAMATION = 11, /*[EX]*/
2207 U_LB_GLUE = 12, /*[GL]*/
2208 U_LB_HYPHEN = 13, /*[HY]*/
2209 U_LB_IDEOGRAPHIC = 14, /*[ID]*/
2211 U_LB_INSEPARABLE = 15, /*[IN]*/
2212 U_LB_INSEPERABLE = U_LB_INSEPARABLE,
2213 U_LB_INFIX_NUMERIC = 16, /*[IS]*/
2214 U_LB_LINE_FEED = 17, /*[LF]*/
2215 U_LB_NONSTARTER = 18, /*[NS]*/
2216 U_LB_NUMERIC = 19, /*[NU]*/
2217 U_LB_OPEN_PUNCTUATION = 20, /*[OP]*/
2218 U_LB_POSTFIX_NUMERIC = 21, /*[PO]*/
2219 U_LB_PREFIX_NUMERIC = 22, /*[PR]*/
2220 U_LB_QUOTATION = 23, /*[QU]*/
2221 U_LB_COMPLEX_CONTEXT = 24, /*[SA]*/
2222 U_LB_SURROGATE = 25, /*[SG]*/
2223 U_LB_SPACE = 26, /*[SP]*/
2224 U_LB_BREAK_SYMBOLS = 27, /*[SY]*/
2225 U_LB_ZWSPACE = 28, /*[ZW]*/
2227 U_LB_NEXT_LINE = 29, /*[NL]*/ /* from here on: new in Unicode 4/ICU 2.6 */
2229 U_LB_WORD_JOINER = 30, /*[WJ]*/
2231 U_LB_H2 = 31, /*[H2]*/ /* from here on: new in Unicode 4.1/ICU 3.4 */
2233 U_LB_H3 = 32, /*[H3]*/
2235 U_LB_JL = 33, /*[JL]*/
2237 U_LB_JT = 34, /*[JT]*/
2239 U_LB_JV = 35, /*[JV]*/
2241 U_LB_CLOSE_PARENTHESIS = 36, /*[CP]*/ /* new in Unicode 5.2/ICU 4.4 */
2243 U_LB_CONDITIONAL_JAPANESE_STARTER = 37,/*[CJ]*/ /* new in Unicode 6.1/ICU 49 */
2245 U_LB_HEBREW_LETTER = 38, /*[HL]*/ /* new in Unicode 6.1/ICU 49 */
2247 U_LB_REGIONAL_INDICATOR = 39,/*[RI]*/ /* new in Unicode 6.2/ICU 50 */
2249 U_LB_E_BASE = 40, /*[EB]*/ /* from here on: new in Unicode 9.0/ICU 58 */
2251 U_LB_E_MODIFIER = 41, /*[EM]*/
2253 U_LB_ZWJ = 42, /*[ZWJ]*/
2254#ifndef U_HIDE_DEPRECATED_API
2261 U_LB_COUNT = 43
2262#endif // U_HIDE_DEPRECATED_API
2264
2271typedef enum UNumericType {
2272 /*
2273 * Note: UNumericType constants are parsed by preparseucd.py.
2274 * It matches lines like
2275 * U_NT_<Unicode Numeric_Type value name>
2276 */
2277
2278 U_NT_NONE, /*[None]*/
2279 U_NT_DECIMAL, /*[de]*/
2280 U_NT_DIGIT, /*[di]*/
2281 U_NT_NUMERIC, /*[nu]*/
2282#ifndef U_HIDE_DEPRECATED_API
2290#endif // U_HIDE_DEPRECATED_API
2292
2300 /*
2301 * Note: UHangulSyllableType constants are parsed by preparseucd.py.
2302 * It matches lines like
2303 * U_HST_<Unicode Hangul_Syllable_Type value name>
2304 */
2305
2306 U_HST_NOT_APPLICABLE, /*[NA]*/
2307 U_HST_LEADING_JAMO, /*[L]*/
2308 U_HST_VOWEL_JAMO, /*[V]*/
2309 U_HST_TRAILING_JAMO, /*[T]*/
2310 U_HST_LV_SYLLABLE, /*[LV]*/
2311 U_HST_LVT_SYLLABLE, /*[LVT]*/
2312#ifndef U_HIDE_DEPRECATED_API
2320#endif // U_HIDE_DEPRECATED_API
2322
2349U_STABLE UBool U_EXPORT2
2351
2364U_STABLE UBool U_EXPORT2
2366
2379U_STABLE UBool U_EXPORT2
2381
2394U_STABLE UBool U_EXPORT2
2396
2415U_STABLE UBool U_EXPORT2
2417
2455U_STABLE int32_t U_EXPORT2
2457
2476U_STABLE int32_t U_EXPORT2
2478
2505U_STABLE int32_t U_EXPORT2
2507
2530U_STABLE double U_EXPORT2
2532
2540#define U_NO_NUMERIC_VALUE ((double)-123456789.)
2541
2565U_STABLE UBool U_EXPORT2
2567
2592U_STABLE UBool U_EXPORT2
2594
2609U_STABLE UBool U_EXPORT2
2611
2630U_STABLE UBool U_EXPORT2
2632
2651U_STABLE UBool U_EXPORT2
2653
2672U_STABLE UBool U_EXPORT2
2674
2695U_STABLE UBool U_EXPORT2
2697
2711U_STABLE UBool U_EXPORT2
2713
2730U_STABLE UBool U_EXPORT2
2732
2758U_STABLE UBool U_EXPORT2
2760
2783U_STABLE UBool U_EXPORT2
2785
2804U_STABLE UBool U_EXPORT2
2806
2825U_STABLE UBool U_EXPORT2
2827
2865U_STABLE UBool U_EXPORT2
2867
2889U_STABLE UBool U_EXPORT2
2891
2904U_STABLE UBool U_EXPORT2
2906
2922U_STABLE UBool U_EXPORT2
2924
2943U_STABLE UBool U_EXPORT2
2945
2962U_STABLE UCharDirection U_EXPORT2
2964
2980U_STABLE UBool U_EXPORT2
2982
3002U_STABLE UChar32 U_EXPORT2
3004
3021U_STABLE UChar32 U_EXPORT2
3023
3035U_STABLE int8_t U_EXPORT2
3037
3051#define U_GET_GC_MASK(c) U_MASK(u_charType(c))
3052
3070typedef UBool U_CALLCONV
3071UCharEnumTypeRange(const void *context, UChar32 start, UChar32 limit, UCharCategory type);
3072
3092U_STABLE void U_EXPORT2
3093u_enumCharTypes(UCharEnumTypeRange *enumRange, const void *context);
3094
3095#if !UCONFIG_NO_NORMALIZATION
3096
3104U_STABLE uint8_t U_EXPORT2
3106
3107#endif
3108
3132U_STABLE int32_t U_EXPORT2
3134
3144U_STABLE UBlockCode U_EXPORT2
3146
3179U_STABLE int32_t U_EXPORT2
3181 char *buffer, int32_t bufferLength,
3182 UErrorCode *pErrorCode);
3183
3184#ifndef U_HIDE_DEPRECATED_API
3203U_DEPRECATED int32_t U_EXPORT2
3205 char *dest, int32_t destCapacity,
3206 UErrorCode *pErrorCode);
3207#endif /* U_HIDE_DEPRECATED_API */
3208
3229U_STABLE UChar32 U_EXPORT2
3231 const char *name,
3232 UErrorCode *pErrorCode);
3233
3251typedef UBool U_CALLCONV UEnumCharNamesFn(void *context,
3252 UChar32 code,
3253 UCharNameChoice nameChoice,
3254 const char *name,
3255 int32_t length);
3256
3278U_STABLE void U_EXPORT2
3280 UEnumCharNamesFn *fn,
3281 void *context,
3282 UCharNameChoice nameChoice,
3283 UErrorCode *pErrorCode);
3284
3316U_STABLE const char* U_EXPORT2
3318 UPropertyNameChoice nameChoice);
3319
3339U_STABLE UProperty U_EXPORT2
3340u_getPropertyEnum(const char* alias);
3341
3389U_STABLE const char* U_EXPORT2
3391 int32_t value,
3392 UPropertyNameChoice nameChoice);
3393
3425U_STABLE int32_t U_EXPORT2
3427 const char* alias);
3428
3446U_STABLE UBool U_EXPORT2
3448
3470U_STABLE UBool U_EXPORT2
3472
3493U_STABLE UBool U_EXPORT2
3495
3512U_STABLE UBool U_EXPORT2
3514
3533U_STABLE UBool U_EXPORT2
3535
3558U_STABLE UChar32 U_EXPORT2
3560
3583U_STABLE UChar32 U_EXPORT2
3585
3608U_STABLE UChar32 U_EXPORT2
3610
3633U_STABLE UChar32 U_EXPORT2
3634u_foldCase(UChar32 c, uint32_t options);
3635
3674U_STABLE int32_t U_EXPORT2
3675u_digit(UChar32 ch, int8_t radix);
3676
3705U_STABLE UChar32 U_EXPORT2
3706u_forDigit(int32_t digit, int8_t radix);
3707
3722U_STABLE void U_EXPORT2
3724
3736U_STABLE void U_EXPORT2
3738
3739#if !UCONFIG_NO_NORMALIZATION
3761U_STABLE int32_t U_EXPORT2
3762u_getFC_NFKC_Closure(UChar32 c, UChar *dest, int32_t destCapacity, UErrorCode *pErrorCode);
3763
3764#endif
3765
3766
3768
3769#endif /*_UCHAR*/
3770/*eof*/
#define U_CALLCONV
Similar to U_CDECL_BEGIN/U_CDECL_END, this qualifier is necessary in callback function typedefs to ma...
Definition platform.h:835
C API: Bit set option bit constants for various string and character processing functions.
UCharDirection u_charDirection(UChar32 c)
Returns the bidirectional category value for the code point, which is used in the Unicode bidirection...
UChar32 u_charFromName(UCharNameChoice nameChoice, const char *name, UErrorCode *pErrorCode)
Find a Unicode character by its name and return its code point value.
uint8_t u_getCombiningClass(UChar32 c)
Returns the combining class of the code point as specified in UnicodeData.txt.
UBool u_iscntrl(UChar32 c)
Determines whether the specified code point is a control character (as defined by this function).
UBlockCode
Constants for Unicode blocks, see the Unicode Data file Blocks.txt.
Definition uchar.h:968
@ UBLOCK_MRO
Definition uchar.h:1596
@ UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED
Definition uchar.h:1459
@ UBLOCK_COUNT
One more than the highest normal UBlockCode value.
Definition uchar.h:1725
@ UBLOCK_OPTICAL_CHARACTER_RECOGNITION
Definition uchar.h:1132
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B
Definition uchar.h:1278
@ UBLOCK_INSCRIPTIONAL_PAHLAVI
Definition uchar.h:1493
@ UBLOCK_KHMER
Definition uchar.h:1087
@ UBLOCK_BHAIKSUKI
Definition uchar.h:1656
@ UBLOCK_DUPLOYAN
Definition uchar.h:1572
@ UBLOCK_MEDEFAIDRIN
Definition uchar.h:1712
@ UBLOCK_BALINESE
Definition uchar.h:1401
@ UBLOCK_HEBREW
Definition uchar.h:1012
@ UBLOCK_YIJING_HEXAGRAM_SYMBOLS
Definition uchar.h:1333
@ UBLOCK_SUPPLEMENTAL_SYMBOLS_AND_PICTOGRAPHS
Definition uchar.h:1647
@ UBLOCK_CYRILLIC
Definition uchar.h:1006
@ UBLOCK_SPECIALS
Definition uchar.h:1258
@ UBLOCK_HALFWIDTH_AND_FULLWIDTH_FORMS
Definition uchar.h:1261
@ UBLOCK_NEWA
Definition uchar.h:1668
@ UBLOCK_ARROWS
Definition uchar.h:1120
@ UBLOCK_CJK_SYMBOLS_AND_PUNCTUATION
Definition uchar.h:1165
@ UBLOCK_TAKRI
Definition uchar.h:1559
@ UBLOCK_BOX_DRAWING
Definition uchar.h:1138
@ UBLOCK_CURRENCY_SYMBOLS
Definition uchar.h:1105
@ UBLOCK_MISCELLANEOUS_SYMBOLS
Definition uchar.h:1147
@ UBLOCK_ANCIENT_GREEK_NUMBERS
Definition uchar.h:1358
@ UBLOCK_OLD_PERMIC
Definition uchar.h:1604
@ UBLOCK_CJK_STROKES
Definition uchar.h:1364
@ UBLOCK_PALMYRENE
Definition uchar.h:1610
@ UBLOCK_OGHAM
Definition uchar.h:1081
@ UBLOCK_SUTTON_SIGNWRITING
Definition uchar.h:1649
@ UBLOCK_ANATOLIAN_HIEROGLYPHS
Definition uchar.h:1633
@ UBLOCK_SUPPLEMENTAL_PUNCTUATION
Definition uchar.h:1388
@ UBLOCK_MEROITIC_HIEROGLYPHS
Definition uchar.h:1549
@ UBLOCK_EMOTICONS
Definition uchar.h:1528
@ UBLOCK_INDIC_SIYAQ_NUMBERS
Definition uchar.h:1706
@ UBLOCK_REJANG
Definition uchar.h:1436
@ UBLOCK_TAGALOG
Definition uchar.h:1294
@ UBLOCK_LISU
Definition uchar.h:1465
@ UBLOCK_COPTIC_EPACT_NUMBERS
Definition uchar.h:1568
@ UBLOCK_SUPERSCRIPTS_AND_SUBSCRIPTS
Definition uchar.h:1102
@ UBLOCK_TAGS
Definition uchar.h:1282
@ UBLOCK_MIAO
Definition uchar.h:1551
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C
Definition uchar.h:1507
@ UBLOCK_LIMBU
Definition uchar.h:1323
@ UBLOCK_LYDIAN
Definition uchar.h:1448
@ UBLOCK_PHONETIC_EXTENSIONS_SUPPLEMENT
Definition uchar.h:1386
@ UBLOCK_TAI_THAM
Definition uchar.h:1461
@ UBLOCK_MAHJONG_TILES
Definition uchar.h:1450
@ UBLOCK_PLAYING_CARDS
Definition uchar.h:1524
@ UBLOCK_TRANSPORT_AND_MAP_SYMBOLS
Definition uchar.h:1530
@ UBLOCK_IDEOGRAPHIC_DESCRIPTION_CHARACTERS
Definition uchar.h:1162
@ UBLOCK_BASIC_LATIN
Definition uchar.h:979
@ UBLOCK_GURMUKHI
Definition uchar.h:1030
@ UBLOCK_HATRAN
Definition uchar.h:1641
@ UBLOCK_PRIVATE_USE_AREA
Same as UBLOCK_PRIVATE_USE.
Definition uchar.h:1224
@ UBLOCK_ARMENIAN
Definition uchar.h:1009
@ UBLOCK_HANGUL_JAMO
Definition uchar.h:1069
@ UBLOCK_VERTICAL_FORMS
Definition uchar.h:1394
@ UBLOCK_SINHALA_ARCHAIC_NUMBERS
Definition uchar.h:1620
@ UBLOCK_SOGDIAN
Definition uchar.h:1716
@ UBLOCK_TIRHUTA
Definition uchar.h:1624
@ UBLOCK_ELBASAN
Definition uchar.h:1574
@ UBLOCK_MATHEMATICAL_ALPHANUMERIC_SYMBOLS
Definition uchar.h:1276
@ UBLOCK_NUMBER_FORMS
Definition uchar.h:1117
@ UBLOCK_CHAM
Definition uchar.h:1438
@ UBLOCK_TANGUT
Definition uchar.h:1672
@ UBLOCK_TAMIL
Definition uchar.h:1039
@ UBLOCK_BLOCK_ELEMENTS
Definition uchar.h:1141
@ UBLOCK_ENCLOSED_ALPHANUMERIC_SUPPLEMENT
Definition uchar.h:1503
@ UBLOCK_CUNEIFORM_NUMBERS_AND_PUNCTUATION
Definition uchar.h:1413
@ UBLOCK_LEPCHA
Definition uchar.h:1422
@ UBLOCK_COMBINING_DIACRITICAL_MARKS_SUPPLEMENT
Definition uchar.h:1366
@ UBLOCK_VARIATION_SELECTORS_SUPPLEMENT
Definition uchar.h:1351
@ UBLOCK_DOMINO_TILES
Definition uchar.h:1452
@ UBLOCK_COMBINING_DIACRITICAL_MARKS_EXTENDED
Definition uchar.h:1570
@ UBLOCK_EGYPTIAN_HIEROGLYPHS
Definition uchar.h:1501
@ UBLOCK_IPA_EXTENSIONS
Definition uchar.h:991
@ UBLOCK_TANGUT_COMPONENTS
Definition uchar.h:1674
@ UBLOCK_CHEROKEE_SUPPLEMENT
Definition uchar.h:1635
@ UBLOCK_LATIN_EXTENDED_A
Definition uchar.h:985
@ UBLOCK_HANUNOO
Definition uchar.h:1296
@ UBLOCK_LAO
Definition uchar.h:1057
@ UBLOCK_SUNDANESE_SUPPLEMENT
Definition uchar.h:1557
@ UBLOCK_CYRILLIC_EXTENDED_A
Definition uchar.h:1426
@ UBLOCK_HANGUL_JAMO_EXTENDED_B
Definition uchar.h:1483
@ UBLOCK_SAMARITAN
Definition uchar.h:1457
@ UBLOCK_SUPPLEMENTAL_ARROWS_A
Definition uchar.h:1304
@ UBLOCK_GLAGOLITIC
Definition uchar.h:1376
@ UBLOCK_INSCRIPTIONAL_PARTHIAN
Definition uchar.h:1491
@ UBLOCK_WARANG_CITI
Definition uchar.h:1626
@ UBLOCK_MONGOLIAN
Definition uchar.h:1090
@ UBLOCK_NKO
Definition uchar.h:1399
@ UBLOCK_ARABIC_EXTENDED_A
Definition uchar.h:1539
@ UBLOCK_LYCIAN
Definition uchar.h:1444
@ UBLOCK_CYRILLIC_EXTENDED_C
Definition uchar.h:1658
@ UBLOCK_DINGBATS
Definition uchar.h:1150
@ UBLOCK_LINEAR_B_SYLLABARY
Definition uchar.h:1335
@ UBLOCK_ENCLOSED_CJK_LETTERS_AND_MONTHS
Definition uchar.h:1186
@ UBLOCK_CHAKMA
Definition uchar.h:1543
@ UBLOCK_SPACING_MODIFIER_LETTERS
Definition uchar.h:994
@ UBLOCK_MEROITIC_CURSIVE
Definition uchar.h:1547
@ UBLOCK_CYRILLIC_EXTENDED_B
Definition uchar.h:1430
@ UBLOCK_GENERAL_PUNCTUATION
Definition uchar.h:1099
@ UBLOCK_MONGOLIAN_SUPPLEMENT
Definition uchar.h:1666
@ UBLOCK_MISCELLANEOUS_TECHNICAL
Definition uchar.h:1126
@ UBLOCK_TAI_XUAN_JING_SYMBOLS
Definition uchar.h:1349
@ UBLOCK_NABATAEAN
Definition uchar.h:1600
@ UBLOCK_TAGBANWA
Definition uchar.h:1300
@ UBLOCK_CUNEIFORM
Definition uchar.h:1411
@ UBLOCK_CONTROL_PICTURES
Definition uchar.h:1129
@ UBLOCK_GREEK
Unicode 3.2 renames this block to "Greek and Coptic".
Definition uchar.h:1003
@ UBLOCK_HIGH_SURROGATES
Definition uchar.h:1207
@ UBLOCK_COUNTING_ROD_NUMERALS
Definition uchar.h:1415
@ UBLOCK_AEGEAN_NUMBERS
Definition uchar.h:1339
@ UBLOCK_BENGALI
Definition uchar.h:1027
@ UBLOCK_LATIN_EXTENDED_E
Definition uchar.h:1584
@ UBLOCK_LINEAR_B_IDEOGRAMS
Definition uchar.h:1337
@ UBLOCK_PAU_CIN_HAU
Definition uchar.h:1612
@ UBLOCK_BUHID
Definition uchar.h:1298
@ UBLOCK_GUNJALA_GONDI
Definition uchar.h:1702
@ UBLOCK_RUMI_NUMERAL_SYMBOLS
Definition uchar.h:1497
@ UBLOCK_HIGH_PRIVATE_USE_SURROGATES
Definition uchar.h:1210
@ UBLOCK_MEETEI_MAYEK_EXTENSIONS
Definition uchar.h:1545
@ UBLOCK_COMMON_INDIC_NUMBER_FORMS
Definition uchar.h:1469
@ UBLOCK_ZANABAZAR_SQUARE
Definition uchar.h:1691
@ UBLOCK_SUNDANESE
Definition uchar.h:1420
@ UBLOCK_CHESS_SYMBOLS
Definition uchar.h:1696
@ UBLOCK_ENCLOSED_ALPHANUMERICS
Definition uchar.h:1135
@ UBLOCK_COMBINING_HALF_MARKS
Definition uchar.h:1246
@ UBLOCK_MANDAIC
Definition uchar.h:1512
@ UBLOCK_GLAGOLITIC_SUPPLEMENT
Definition uchar.h:1660
@ UBLOCK_OSMANYA
Definition uchar.h:1345
@ UBLOCK_DOGRA
Definition uchar.h:1698
@ UBLOCK_IMPERIAL_ARAMAIC
Definition uchar.h:1485
@ UBLOCK_BRAILLE_PATTERNS
Definition uchar.h:1153
@ UBLOCK_OLD_HUNGARIAN
Definition uchar.h:1645
@ UBLOCK_MATHEMATICAL_OPERATORS
Definition uchar.h:1123
@ UBLOCK_KHOJKI
Definition uchar.h:1580
@ UBLOCK_ORIYA
Definition uchar.h:1036
@ UBLOCK_NO_BLOCK
New No_Block value in Unicode 4.
Definition uchar.h:976
@ UBLOCK_YI_RADICALS
Definition uchar.h:1201
@ UBLOCK_BUGINESE
Definition uchar.h:1362
@ UBLOCK_SMALL_FORM_VARIANTS
Definition uchar.h:1252
@ UBLOCK_OLD_SOGDIAN
Definition uchar.h:1714
@ UBLOCK_GEORGIAN_EXTENDED
Definition uchar.h:1700
@ UBLOCK_TIFINAGH
Definition uchar.h:1392
@ UBLOCK_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B
Definition uchar.h:1308
@ UBLOCK_LATIN_EXTENDED_D
Definition uchar.h:1405
@ UBLOCK_LATIN_EXTENDED_ADDITIONAL
Definition uchar.h:1093
@ UBLOCK_MEETEI_MAYEK
Definition uchar.h:1481
@ UBLOCK_MYANMAR
Definition uchar.h:1063
@ UBLOCK_OL_CHIKI
Definition uchar.h:1424
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D
Definition uchar.h:1534
@ UBLOCK_SHORTHAND_FORMAT_CONTROLS
Definition uchar.h:1616
@ UBLOCK_COMBINING_MARKS_FOR_SYMBOLS
Unicode 3.2 renames this block to "Combining Diacritical Marks for Symbols".
Definition uchar.h:1111
@ UBLOCK_MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS
Definition uchar.h:1526
@ UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS
Definition uchar.h:1078
@ UBLOCK_BOPOMOFO
Definition uchar.h:1174
@ UBLOCK_KATAKANA_PHONETIC_EXTENSIONS
Definition uchar.h:1312
@ UBLOCK_MARCHEN
Definition uchar.h:1664
@ UBLOCK_MODI
Definition uchar.h:1594
@ UBLOCK_SUPPLEMENTAL_MATHEMATICAL_OPERATORS
Definition uchar.h:1310
@ UBLOCK_MULTANI
Definition uchar.h:1643
@ UBLOCK_ETHIOPIC_EXTENDED
Definition uchar.h:1370
@ UBLOCK_AVESTAN
Definition uchar.h:1489
@ UBLOCK_PRIVATE_USE
Same as UBLOCK_PRIVATE_USE_AREA.
Definition uchar.h:1234
@ UBLOCK_GEORGIAN_SUPPLEMENT
Definition uchar.h:1374
@ UBLOCK_COPTIC
Definition uchar.h:1368
@ UBLOCK_HANGUL_COMPATIBILITY_JAMO
Definition uchar.h:1177
@ UBLOCK_LOW_SURROGATES
Definition uchar.h:1213
@ UBLOCK_SOYOMBO
Definition uchar.h:1687
@ UBLOCK_ARABIC_SUPPLEMENT
Definition uchar.h:1360
@ UBLOCK_HANGUL_SYLLABLES
Definition uchar.h:1204
@ UBLOCK_MISCELLANEOUS_SYMBOLS_AND_ARROWS
Definition uchar.h:1331
@ UBLOCK_CJK_COMPATIBILITY
Definition uchar.h:1189
@ UBLOCK_CARIAN
Definition uchar.h:1446
@ UBLOCK_HANIFI_ROHINGYA
Definition uchar.h:1704
@ UBLOCK_TIBETAN
Definition uchar.h:1060
@ UBLOCK_BASSA_VAH
Definition uchar.h:1564
@ UBLOCK_OLD_TURKIC
Definition uchar.h:1495
@ UBLOCK_CJK_RADICALS_SUPPLEMENT
Definition uchar.h:1156
@ UBLOCK_ADLAM
Definition uchar.h:1654
@ UBLOCK_MASARAM_GONDI
Definition uchar.h:1683
@ UBLOCK_ARABIC_PRESENTATION_FORMS_B
Definition uchar.h:1255
@ UBLOCK_RUNIC
Definition uchar.h:1084
@ UBLOCK_ARABIC_PRESENTATION_FORMS_A
Definition uchar.h:1243
@ UBLOCK_ENCLOSED_IDEOGRAPHIC_SUPPLEMENT
Definition uchar.h:1505
@ UBLOCK_BOPOMOFO_EXTENDED
Definition uchar.h:1183
@ UBLOCK_IDEOGRAPHIC_SYMBOLS_AND_PUNCTUATION
Definition uchar.h:1662
@ UBLOCK_KANGXI_RADICALS
Definition uchar.h:1159
@ UBLOCK_SORA_SOMPENG
Definition uchar.h:1555
@ UBLOCK_KANA_SUPPLEMENT
Definition uchar.h:1522
@ UBLOCK_CHEROKEE
Definition uchar.h:1075
@ UBLOCK_BRAHMI
Definition uchar.h:1518
@ UBLOCK_SYLOTI_NAGRI
Definition uchar.h:1390
@ UBLOCK_CYPRIOT_SYLLABARY
Definition uchar.h:1347
@ UBLOCK_ETHIOPIC_SUPPLEMENT
Definition uchar.h:1372
@ UBLOCK_KHAROSHTHI
Definition uchar.h:1378
@ UBLOCK_OLD_ITALIC
Definition uchar.h:1266
@ UBLOCK_OLD_SOUTH_ARABIAN
Definition uchar.h:1487
@ UBLOCK_SUPPLEMENTARY_PRIVATE_USE_AREA_B
Definition uchar.h:1318
@ UBLOCK_MALAYALAM
Definition uchar.h:1048
@ UBLOCK_KHMER_SYMBOLS
Definition uchar.h:1327
@ UBLOCK_JAVANESE
Definition uchar.h:1475
@ UBLOCK_BAMUM_SUPPLEMENT
Definition uchar.h:1520
@ UBLOCK_CYRILLIC_SUPPLEMENT
Definition uchar.h:1287
@ UBLOCK_MYANMAR_EXTENDED_B
Definition uchar.h:1598
@ UBLOCK_ANCIENT_GREEK_MUSICAL_NOTATION
Definition uchar.h:1356
@ UBLOCK_BATAK
Definition uchar.h:1514
@ UBLOCK_SYRIAC_SUPPLEMENT
Definition uchar.h:1689
@ UBLOCK_PAHAWH_HMONG
Definition uchar.h:1608
@ UBLOCK_ORNAMENTAL_DINGBATS
Definition uchar.h:1606
@ UBLOCK_SINHALA
Definition uchar.h:1051
@ UBLOCK_AHOM
Definition uchar.h:1631
@ UBLOCK_NEW_TAI_LUE
Definition uchar.h:1382
@ UBLOCK_SIDDHAM
Definition uchar.h:1618
@ UBLOCK_OLD_NORTH_ARABIAN
Definition uchar.h:1602
@ UBLOCK_YI_SYLLABLES
Definition uchar.h:1198
@ UBLOCK_TELUGU
Definition uchar.h:1042
@ UBLOCK_DEVANAGARI_EXTENDED
Definition uchar.h:1471
@ UBLOCK_SHARADA
Definition uchar.h:1553
@ UBLOCK_SUPPLEMENTARY_PRIVATE_USE_AREA_A
Definition uchar.h:1316
@ UBLOCK_DESERET
Definition uchar.h:1270
@ UBLOCK_ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS
Definition uchar.h:1541
@ UBLOCK_SAURASHTRA
Definition uchar.h:1432
@ UBLOCK_KANBUN
Definition uchar.h:1180
@ UBLOCK_HIRAGANA
Definition uchar.h:1168
@ UBLOCK_KANNADA
Definition uchar.h:1045
@ UBLOCK_SUPPLEMENTAL_ARROWS_C
Definition uchar.h:1622
@ UBLOCK_GEORGIAN
Definition uchar.h:1066
@ UBLOCK_DEVANAGARI
Definition uchar.h:1024
@ UBLOCK_KATAKANA
Definition uchar.h:1171
@ UBLOCK_TAI_VIET
Definition uchar.h:1479
@ UBLOCK_LATIN_EXTENDED_B
Definition uchar.h:988
@ UBLOCK_THAANA
Definition uchar.h:1021
@ UBLOCK_MODIFIER_TONE_LETTERS
Definition uchar.h:1380
@ UBLOCK_KHUDAWADI
Definition uchar.h:1582
@ UBLOCK_LINEAR_A
Definition uchar.h:1586
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS
Definition uchar.h:1195
@ UBLOCK_GRANTHA
Definition uchar.h:1578
@ UBLOCK_ETHIOPIC
Definition uchar.h:1072
@ UBLOCK_SYRIAC
Definition uchar.h:1018
@ UBLOCK_GREEK_EXTENDED
Definition uchar.h:1096
@ UBLOCK_CJK_COMPATIBILITY_FORMS
Definition uchar.h:1249
@ UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS
Definition uchar.h:1237
@ UBLOCK_MAYAN_NUMERALS
Definition uchar.h:1710
@ UBLOCK_KAYAH_LI
Definition uchar.h:1434
@ UBLOCK_VEDIC_EXTENSIONS
Definition uchar.h:1463
@ UBLOCK_PHAISTOS_DISC
Definition uchar.h:1442
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
Definition uchar.h:1192
@ UBLOCK_LATIN_1_SUPPLEMENT
Definition uchar.h:982
@ UBLOCK_PHOENICIAN
Definition uchar.h:1409
@ UBLOCK_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A
Definition uchar.h:1302
@ UBLOCK_CAUCASIAN_ALBANIAN
Definition uchar.h:1566
@ UBLOCK_ALCHEMICAL_SYMBOLS
Definition uchar.h:1532
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_F
Definition uchar.h:1679
@ UBLOCK_MYANMAR_EXTENDED_A
Definition uchar.h:1477
@ UBLOCK_EARLY_DYNASTIC_CUNEIFORM
Definition uchar.h:1639
@ UBLOCK_MENDE_KIKAKUI
Definition uchar.h:1592
@ UBLOCK_VAI
Definition uchar.h:1428
@ UBLOCK_PHONETIC_EXTENSIONS
Definition uchar.h:1329
@ UBLOCK_PHAGS_PA
Definition uchar.h:1407
@ UBLOCK_OLD_PERSIAN
Definition uchar.h:1384
@ UBLOCK_KAITHI
Definition uchar.h:1499
@ UBLOCK_GEOMETRIC_SHAPES
Definition uchar.h:1144
@ UBLOCK_LATIN_EXTENDED_C
Definition uchar.h:1403
@ UBLOCK_SUPPLEMENTAL_ARROWS_B
Definition uchar.h:1306
@ UBLOCK_MAHAJANI
Definition uchar.h:1588
@ UBLOCK_OSAGE
Definition uchar.h:1670
@ UBLOCK_INVALID_CODE
Definition uchar.h:1729
@ UBLOCK_TAI_LE
Definition uchar.h:1325
@ UBLOCK_MAKASAR
Definition uchar.h:1708
@ UBLOCK_GOTHIC
Definition uchar.h:1268
@ UBLOCK_ETHIOPIC_EXTENDED_A
Definition uchar.h:1516
@ UBLOCK_GEOMETRIC_SHAPES_EXTENDED
Definition uchar.h:1576
@ UBLOCK_MANICHAEAN
Definition uchar.h:1590
@ UBLOCK_ALPHABETIC_PRESENTATION_FORMS
Definition uchar.h:1240
@ UBLOCK_MUSICAL_SYMBOLS
Definition uchar.h:1274
@ UBLOCK_LETTERLIKE_SYMBOLS
Definition uchar.h:1114
@ UBLOCK_ARABIC
Definition uchar.h:1015
@ UBLOCK_NUSHU
Definition uchar.h:1685
@ UBLOCK_CYRILLIC_SUPPLEMENTARY
Unicode 4.0.1 renames the "Cyrillic Supplementary" block to "Cyrillic Supplement".
Definition uchar.h:1292
@ UBLOCK_HANGUL_JAMO_EXTENDED_A
Definition uchar.h:1473
@ UBLOCK_BYZANTINE_MUSICAL_SYMBOLS
Definition uchar.h:1272
@ UBLOCK_ANCIENT_SYMBOLS
Definition uchar.h:1440
@ UBLOCK_UGARITIC
Definition uchar.h:1341
@ UBLOCK_GUJARATI
Definition uchar.h:1033
@ UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT
Definition uchar.h:1280
@ UBLOCK_COMBINING_DIACRITICAL_MARKS
Definition uchar.h:997
@ UBLOCK_PSALTER_PAHLAVI
Definition uchar.h:1614
@ UBLOCK_THAI
Definition uchar.h:1054
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_E
Definition uchar.h:1637
@ UBLOCK_KANA_EXTENDED_A
Definition uchar.h:1681
@ UBLOCK_VARIATION_SELECTORS
Definition uchar.h:1314
@ UBLOCK_BAMUM
Definition uchar.h:1467
@ UBLOCK_SHAVIAN
Definition uchar.h:1343
void u_getUnicodeVersion(UVersionInfo versionArray)
Gets the Unicode version information.
UBool u_isdigit(UChar32 c)
Determines whether the specified code point is a digit character according to Java.
UBool u_isMirrored(UChar32 c)
Determines whether the code point has the Bidi_Mirrored property.
UBool u_hasBinaryProperty(UChar32 c, UProperty which)
Check a binary Unicode property for a code point.
UCharNameChoice
Selector constants for u_charName().
Definition uchar.h:1777
@ U_CHAR_NAME_CHOICE_COUNT
One more than the highest normal UCharNameChoice value.
Definition uchar.h:1797
@ U_UNICODE_10_CHAR_NAME
The Unicode_1_Name property value which is of little practical value.
Definition uchar.h:1786
@ U_CHAR_NAME_ALIAS
Corrected name from NameAliases.txt.
Definition uchar.h:1791
@ U_EXTENDED_CHAR_NAME
Standard or synthetic character name.
Definition uchar.h:1789
@ U_UNICODE_CHAR_NAME
Unicode character name (Name property).
Definition uchar.h:1779
int32_t u_getIntPropertyValue(UChar32 c, UProperty which)
Get the property value for an enumerated or integer Unicode property for a code point.
UBool u_isUWhiteSpace(UChar32 c)
Check if a code point has the White_Space Unicode property.
UBool u_istitle(UChar32 c)
Determines whether the specified code point is a titlecase letter.
double u_getNumericValue(UChar32 c)
Get the numeric value for a Unicode code point as defined in the Unicode Character Database.
int32_t u_digit(UChar32 ch, int8_t radix)
Returns the decimal digit value of the code point in the specified radix.
UJoiningType
Joining Type constants.
Definition uchar.h:1874
@ U_JT_COUNT
One more than the highest normal UJoiningType value.
Definition uchar.h:1894
UBool u_isUAlphabetic(UChar32 c)
Check if a code point has the Alphabetic Unicode property.
int32_t u_getFC_NFKC_Closure(UChar32 c, UChar *dest, int32_t destCapacity, UErrorCode *pErrorCode)
Get the FC_NFKC_Closure property string for a character.
void u_enumCharTypes(UCharEnumTypeRange *enumRange, const void *context)
Enumerate efficiently all code points with their Unicode general categories.
UBool u_ispunct(UChar32 c)
Determines whether the specified code point is a punctuation character.
UBlockCode ublock_getCode(UChar32 c)
Returns the Unicode allocation block that contains the character.
UCharDirection
This specifies the language directional property of a character set.
Definition uchar.h:869
@ U_SEGMENT_SEPARATOR
S.
Definition uchar.h:894
@ U_EUROPEAN_NUMBER_TERMINATOR
ET.
Definition uchar.h:886
@ U_BOUNDARY_NEUTRAL
BN.
Definition uchar.h:914
@ U_RIGHT_TO_LEFT_ARABIC
AL.
Definition uchar.h:904
@ U_RIGHT_TO_LEFT
R.
Definition uchar.h:880
@ U_POP_DIRECTIONAL_ISOLATE
PDI.
Definition uchar.h:922
@ U_COMMON_NUMBER_SEPARATOR
CS.
Definition uchar.h:890
@ U_LEFT_TO_RIGHT
L.
Definition uchar.h:878
@ U_DIR_NON_SPACING_MARK
NSM.
Definition uchar.h:912
@ U_FIRST_STRONG_ISOLATE
FSI.
Definition uchar.h:916
@ U_ARABIC_NUMBER
AN.
Definition uchar.h:888
@ U_POP_DIRECTIONAL_FORMAT
PDF.
Definition uchar.h:910
@ U_OTHER_NEUTRAL
ON.
Definition uchar.h:898
@ U_CHAR_DIRECTION_COUNT
One more than the highest UCharDirection value.
Definition uchar.h:930
@ U_WHITE_SPACE_NEUTRAL
WS.
Definition uchar.h:896
@ U_RIGHT_TO_LEFT_OVERRIDE
RLO.
Definition uchar.h:908
@ U_RIGHT_TO_LEFT_EMBEDDING
RLE.
Definition uchar.h:906
@ U_EUROPEAN_NUMBER_SEPARATOR
ES.
Definition uchar.h:884
@ U_LEFT_TO_RIGHT_ISOLATE
LRI.
Definition uchar.h:918
@ U_LEFT_TO_RIGHT_OVERRIDE
LRO.
Definition uchar.h:902
@ U_EUROPEAN_NUMBER
EN.
Definition uchar.h:882
@ U_BLOCK_SEPARATOR
B.
Definition uchar.h:892
@ U_LEFT_TO_RIGHT_EMBEDDING
LRE.
Definition uchar.h:900
@ U_RIGHT_TO_LEFT_ISOLATE
RLI.
Definition uchar.h:920
UPropertyNameChoice
Selector constants for u_getPropertyName() and u_getPropertyValueName().
Definition uchar.h:1814
@ U_PROPERTY_NAME_CHOICE_COUNT
One more than the highest normal UPropertyNameChoice value.
Definition uchar.h:1822
UBool UEnumCharNamesFn(void *context, UChar32 code, UCharNameChoice nameChoice, const char *name, int32_t length)
Type of a callback function for u_enumCharNames() that gets called for each Unicode character with th...
Definition uchar.h:3251
UBool u_isgraph(UChar32 c)
Determines whether the specified code point is a "graphic" character (printable, excluding spaces).
UBool u_isbase(UChar32 c)
Determines whether the specified code point is a base character.
UChar32 u_tolower(UChar32 c)
The given character is mapped to its lowercase equivalent according to UnicodeData....
const char * u_getPropertyName(UProperty property, UPropertyNameChoice nameChoice)
Return the Unicode name for a given property, as given in the Unicode database file PropertyAliases....
void u_enumCharNames(UChar32 start, UChar32 limit, UEnumCharNamesFn *fn, void *context, UCharNameChoice nameChoice, UErrorCode *pErrorCode)
Enumerate all assigned Unicode characters between the start and limit code points (start inclusive,...
UBool u_isUUppercase(UChar32 c)
Check if a code point has the Uppercase Unicode property.
UBool u_isWhitespace(UChar32 c)
Determines if the specified code point is a whitespace character according to Java/ICU.
ULineBreak
Line Break constants.
Definition uchar.h:2188
@ U_LB_E_MODIFIER
Definition uchar.h:2251
@ U_LB_WORD_JOINER
Definition uchar.h:2229
@ U_LB_H3
Definition uchar.h:2233
@ U_LB_H2
Definition uchar.h:2231
@ U_LB_CONDITIONAL_JAPANESE_STARTER
Definition uchar.h:2243
@ U_LB_NEXT_LINE
Definition uchar.h:2227
@ U_LB_INSEPARABLE
Renamed from the misspelled "inseperable" in Unicode 4.0.1/ICU 3.0.
Definition uchar.h:2211
@ U_LB_E_BASE
Definition uchar.h:2249
@ U_LB_JV
Definition uchar.h:2239
@ U_LB_JL
Definition uchar.h:2235
@ U_LB_CLOSE_PARENTHESIS
Definition uchar.h:2241
@ U_LB_ZWJ
Definition uchar.h:2253
@ U_LB_COUNT
One more than the highest normal ULineBreak value.
Definition uchar.h:2261
@ U_LB_REGIONAL_INDICATOR
Definition uchar.h:2247
@ U_LB_HEBREW_LETTER
Definition uchar.h:2245
@ U_LB_JT
Definition uchar.h:2237
UBool u_isalnum(UChar32 c)
Determines whether the specified code point is an alphanumeric character (letter or digit) according ...
int32_t u_getISOComment(UChar32 c, char *dest, int32_t destCapacity, UErrorCode *pErrorCode)
Returns an empty string.
UBool u_isJavaSpaceChar(UChar32 c)
Determine if the specified code point is a space character according to Java.
UBool u_isdefined(UChar32 c)
Determines whether the specified code point is "defined", which usually means that it is assigned a c...
UChar32 u_charMirror(UChar32 c)
Maps the specified character to a "mirror-image" character.
UCharCategory
Data for enumerated Unicode general category types.
Definition uchar.h:673
@ U_FORMAT_CHAR
Cf.
Definition uchar.h:716
@ U_SPACE_SEPARATOR
Zs.
Definition uchar.h:708
@ U_MODIFIER_SYMBOL
Sk.
Definition uchar.h:736
@ U_GENERAL_OTHER_TYPES
Cn "Other, Not Assigned (no characters in [UnicodeData.txt] have this property)" (same as U_UNASSIGNE...
Definition uchar.h:684
@ U_TITLECASE_LETTER
Lt.
Definition uchar.h:690
@ U_PRIVATE_USE_CHAR
Co.
Definition uchar.h:718
@ U_OTHER_SYMBOL
So.
Definition uchar.h:738
@ U_UPPERCASE_LETTER
Lu.
Definition uchar.h:686
@ U_MODIFIER_LETTER
Lm.
Definition uchar.h:692
@ U_PARAGRAPH_SEPARATOR
Zp.
Definition uchar.h:712
@ U_OTHER_PUNCTUATION
Po.
Definition uchar.h:730
@ U_ENCLOSING_MARK
Me.
Definition uchar.h:698
@ U_INITIAL_PUNCTUATION
Pi.
Definition uchar.h:740
@ U_UNASSIGNED
Non-category for unassigned and non-character code points.
Definition uchar.h:682
@ U_CURRENCY_SYMBOL
Sc.
Definition uchar.h:734
@ U_COMBINING_SPACING_MARK
Mc.
Definition uchar.h:700
@ U_CONTROL_CHAR
Cc.
Definition uchar.h:714
@ U_OTHER_LETTER
Lo.
Definition uchar.h:694
@ U_NON_SPACING_MARK
Mn.
Definition uchar.h:696
@ U_START_PUNCTUATION
Ps.
Definition uchar.h:724
@ U_CONNECTOR_PUNCTUATION
Pc.
Definition uchar.h:728
@ U_END_PUNCTUATION
Pe.
Definition uchar.h:726
@ U_OTHER_NUMBER
No.
Definition uchar.h:706
@ U_LINE_SEPARATOR
Zl.
Definition uchar.h:710
@ U_DASH_PUNCTUATION
Pd.
Definition uchar.h:722
@ U_MATH_SYMBOL
Sm.
Definition uchar.h:732
@ U_CHAR_CATEGORY_COUNT
One higher than the last enum UCharCategory constant.
Definition uchar.h:750
@ U_DECIMAL_DIGIT_NUMBER
Nd.
Definition uchar.h:702
@ U_LOWERCASE_LETTER
Ll.
Definition uchar.h:688
@ U_FINAL_PUNCTUATION
Pf.
Definition uchar.h:742
@ U_LETTER_NUMBER
Nl.
Definition uchar.h:704
@ U_SURROGATE
Cs.
Definition uchar.h:720
UBool u_isIDIgnorable(UChar32 c)
Determines if the specified character should be regarded as an ignorable character in an identifier,...
int32_t u_getPropertyValueEnum(UProperty property, const char *alias)
Return the property value integer for a given value name, as specified in the Unicode database file P...
UJoiningGroup
Joining Group constants.
Definition uchar.h:1904
@ U_JG_FE
Definition uchar.h:1963
@ U_JG_BURUSHASKI_YEH_BARREE
Definition uchar.h:1966
@ U_JG_MANICHAEAN_KAPH
Definition uchar.h:1979
@ U_JG_MANICHAEAN_SAMEKH
Definition uchar.h:1988
@ U_JG_MANICHAEAN_ZAYIN
Definition uchar.h:1996
@ U_JG_MALAYALAM_TTA
Definition uchar.h:2012
@ U_JG_MANICHAEAN_AYIN
Definition uchar.h:1971
@ U_JG_MANICHAEAN_ALEPH
Definition uchar.h:1970
@ U_JG_FARSI_YEH
Definition uchar.h:1967
@ U_JG_MANICHAEAN_DALETH
Definition uchar.h:1973
@ U_JG_MANICHAEAN_FIVE
Definition uchar.h:1975
@ U_JG_MANICHAEAN_SADHE
Definition uchar.h:1987
@ U_JG_MANICHAEAN_TAW
Definition uchar.h:1989
@ U_JG_MALAYALAM_LLLA
Definition uchar.h:2005
@ U_JG_MALAYALAM_NNNA
Definition uchar.h:2008
@ U_JG_MANICHAEAN_ONE
Definition uchar.h:1983
@ U_JG_MALAYALAM_LLA
Definition uchar.h:2004
@ U_JG_AFRICAN_FEH
Definition uchar.h:1998
@ U_JG_HANIFI_ROHINGYA_PA
Definition uchar.h:2015
@ U_JG_MALAYALAM_BHA
Definition uchar.h:2002
@ U_JG_MANICHAEAN_TWENTY
Definition uchar.h:1993
@ U_JG_MANICHAEAN_THAMEDH
Definition uchar.h:1992
@ U_JG_MANICHAEAN_PE
Definition uchar.h:1984
@ U_JG_ZHAIN
Definition uchar.h:1965
@ U_JG_MANICHAEAN_TETH
Definition uchar.h:1991
@ U_JG_MANICHAEAN_BETH
Definition uchar.h:1972
@ U_JG_COUNT
One more than the highest normal UJoiningGroup value.
Definition uchar.h:2024
@ U_JG_MANICHAEAN_TEN
Definition uchar.h:1990
@ U_JG_MANICHAEAN_GIMEL
Definition uchar.h:1976
@ U_JG_TEH_MARBUTA_GOAL
Definition uchar.h:1925
@ U_JG_AFRICAN_NOON
Definition uchar.h:1999
@ U_JG_MALAYALAM_NGA
Definition uchar.h:2006
@ U_JG_MANICHAEAN_MEM
Definition uchar.h:1981
@ U_JG_KHAPH
Definition uchar.h:1964
@ U_JG_MALAYALAM_RA
Definition uchar.h:2010
@ U_JG_MALAYALAM_NNA
Definition uchar.h:2007
@ U_JG_MALAYALAM_JA
Definition uchar.h:2003
@ U_JG_MALAYALAM_NYA
Definition uchar.h:2009
@ U_JG_MALAYALAM_SSA
Definition uchar.h:2011
@ U_JG_MANICHAEAN_WAW
Definition uchar.h:1994
@ U_JG_AFRICAN_QAF
Definition uchar.h:2000
@ U_JG_MANICHAEAN_DHAMEDH
Definition uchar.h:1974
@ U_JG_STRAIGHT_WAW
Definition uchar.h:1997
@ U_JG_ROHINGYA_YEH
Definition uchar.h:1969
@ U_JG_MANICHAEAN_HETH
Definition uchar.h:1977
@ U_JG_MANICHAEAN_LAMEDH
Definition uchar.h:1980
@ U_JG_MANICHAEAN_HUNDRED
Definition uchar.h:1978
@ U_JG_HANIFI_ROHINGYA_KINNA_YA
Definition uchar.h:2014
@ U_JG_MANICHAEAN_NUN
Definition uchar.h:1982
@ U_JG_NYA
Definition uchar.h:1968
@ U_JG_MANICHAEAN_YODH
Definition uchar.h:1995
@ U_JG_MANICHAEAN_RESH
Definition uchar.h:1986
@ U_JG_MANICHAEAN_QOPH
Definition uchar.h:1985
UBool u_isIDPart(UChar32 c)
Determines if the specified character is permissible in an identifier according to Java.
UHangulSyllableType
Hangul Syllable Type constants.
Definition uchar.h:2299
@ U_HST_COUNT
One more than the highest normal UHangulSyllableType value.
Definition uchar.h:2319
UBool u_isULowercase(UChar32 c)
Check if a code point has the Lowercase Unicode property.
UChar32 u_toupper(UChar32 c)
The given character is mapped to its uppercase equivalent according to UnicodeData....
UBool u_isalpha(UChar32 c)
Determines whether the specified code point is a letter character.
int32_t u_getIntPropertyMaxValue(UProperty which)
Get the maximum value for an enumerated/integer/binary Unicode property.
UProperty u_getPropertyEnum(const char *alias)
Return the UProperty enum for a given property name, as specified in the Unicode database file Proper...
USentenceBreak
Sentence Break constants.
Definition uchar.h:2149
@ U_SB_COUNT
One more than the highest normal USentenceBreak value.
Definition uchar.h:2178
UBool u_isblank(UChar32 c)
Determines whether the specified code point is a "blank" or "horizontal space", a character that visi...
UBool u_isJavaIDStart(UChar32 c)
Determines if the specified character is permissible as the first character in a Java identifier.
UBool UCharEnumTypeRange(const void *context, UChar32 start, UChar32 limit, UCharCategory type)
Callback from u_enumCharTypes(), is called for each contiguous range of code points c (where start<=c...
Definition uchar.h:3071
UChar32 u_foldCase(UChar32 c, uint32_t options)
The given character is mapped to its case folding equivalent according to UnicodeData....
UBool u_isISOControl(UChar32 c)
Determines whether the specified code point is an ISO control code.
UEastAsianWidth
East Asian Width constants.
Definition uchar.h:1742
@ U_EA_COUNT
One more than the highest normal UEastAsianWidth value.
Definition uchar.h:1762
UBool u_isspace(UChar32 c)
Determines if the specified character is a space character or not.
UBool u_islower(UChar32 c)
Determines whether the specified code point has the general category "Ll" (lowercase letter).
int32_t u_charName(UChar32 code, UCharNameChoice nameChoice, char *buffer, int32_t bufferLength, UErrorCode *pErrorCode)
Retrieve the name of a Unicode character.
UBool u_isIDStart(UChar32 c)
Determines if the specified character is permissible as the first character in an identifier accordin...
UBool u_isJavaIDPart(UChar32 c)
Determines if the specified character is permissible in a Java identifier.
UChar32 u_forDigit(int32_t digit, int8_t radix)
Determines the character representation for a specific digit in the specified radix.
UBool u_isxdigit(UChar32 c)
Determines whether the specified code point is a hexadecimal digit.
int32_t u_getIntPropertyMinValue(UProperty which)
Get the minimum value for an enumerated/integer/binary Unicode property.
int8_t u_charType(UChar32 c)
Returns the general category value for the code point.
UGraphemeClusterBreak
Grapheme Cluster Break constants.
Definition uchar.h:2034
@ U_GCB_SPACING_MARK
Definition uchar.h:2052
@ U_GCB_E_BASE
Definition uchar.h:2058
@ U_GCB_REGIONAL_INDICATOR
Definition uchar.h:2056
@ U_GCB_GLUE_AFTER_ZWJ
Definition uchar.h:2064
@ U_GCB_ZWJ
Definition uchar.h:2066
@ U_GCB_PREPEND
Definition uchar.h:2054
@ U_GCB_COUNT
One more than the highest normal UGraphemeClusterBreak value.
Definition uchar.h:2075
@ U_GCB_E_MODIFIER
Definition uchar.h:2062
@ U_GCB_E_BASE_GAZ
Definition uchar.h:2060
const char * u_getPropertyValueName(UProperty property, int32_t value, UPropertyNameChoice nameChoice)
Return the Unicode name for a given property value, as given in the Unicode database file PropertyVal...
UBool u_isupper(UChar32 c)
Determines whether the specified code point has the general category "Lu" (uppercase letter).
void u_charAge(UChar32 c, UVersionInfo versionArray)
Get the "age" of the code point.
UChar32 u_totitle(UChar32 c)
The given character is mapped to its titlecase equivalent according to UnicodeData....
UChar32 u_getBidiPairedBracket(UChar32 c)
Maps the specified character to its paired bracket character.
UNumericType
Numeric Type constants.
Definition uchar.h:2271
@ U_NT_COUNT
One more than the highest normal UNumericType value.
Definition uchar.h:2289
UDecompositionType
Decomposition Type constants.
Definition uchar.h:1832
@ U_DT_COUNT
One more than the highest normal UDecompositionType value.
Definition uchar.h:1864
UProperty
Selection constants for Unicode properties.
Definition uchar.h:165
@ UCHAR_GRAPHEME_CLUSTER_BREAK
Enumerated property Grapheme_Cluster_Break (new in Unicode 4.1).
Definition uchar.h:533
@ UCHAR_BIDI_PAIRED_BRACKET
String property Bidi_Paired_Bracket (new in Unicode 6.3).
Definition uchar.h:638
@ UCHAR_ALPHABETIC
Binary property Alphabetic.
Definition uchar.h:179
@ UCHAR_POSIX_GRAPH
Binary property graph (a C/POSIX character class).
Definition uchar.h:377
@ UCHAR_BLOCK
Enumerated property Block.
Definition uchar.h:471
@ UCHAR_INVALID_CODE
Represents a nonexistent or invalid property or property value.
Definition uchar.h:664
@ UCHAR_SEGMENT_STARTER
Binary Property Segment_Starter.
Definition uchar.h:352
@ UCHAR_PREPENDED_CONCATENATION_MARK
Binary property Prepended_Concatenation_Mark.
Definition uchar.h:448
@ UCHAR_REGIONAL_INDICATOR
Binary property Regional_Indicator.
Definition uchar.h:443
@ UCHAR_OTHER_PROPERTY_START
First constant for Unicode properties with unusual value types.
Definition uchar.h:654
@ UCHAR_S_TERM
Binary property STerm (new in Unicode 4.0.1).
Definition uchar.h:307
@ UCHAR_WHITE_SPACE
Binary property White_Space.
Definition uchar.h:291
@ UCHAR_CANONICAL_COMBINING_CLASS
Enumerated property Canonical_Combining_Class.
Definition uchar.h:474
@ UCHAR_SOFT_DOTTED
Binary property Soft_Dotted (new in Unicode 3.2).
Definition uchar.h:276
@ UCHAR_GRAPHEME_LINK
Binary property Grapheme_Link (new in Unicode 3.2).
Definition uchar.h:223
@ UCHAR_PATTERN_SYNTAX
Binary property Pattern_Syntax (new in Unicode 4.1).
Definition uchar.h:357
@ UCHAR_GRAPHEME_EXTEND
Binary property Grapheme_Extend (new in Unicode 3.2).
Definition uchar.h:220
@ UCHAR_CASED
Binary property Cased.
Definition uchar.h:389
@ UCHAR_XID_START
Binary property XID_Start.
Definition uchar.h:298
@ UCHAR_NFKC_INERT
Binary property NFKC_Inert.
Definition uchar.h:341
@ UCHAR_INT_LIMIT
One more than the last constant for enumerated/integer Unicode properties.
Definition uchar.h:554
@ UCHAR_OTHER_PROPERTY_LIMIT
One more than the last constant for Unicode properties with unusual value types.
Definition uchar.h:660
@ UCHAR_PATTERN_WHITE_SPACE
Binary property Pattern_White_Space (new in Unicode 4.1).
Definition uchar.h:362
@ UCHAR_VARIATION_SELECTOR
Binary property Variation_Selector (new in Unicode 4.0.1).
Definition uchar.h:313
@ UCHAR_NUMERIC_VALUE
Double property Numeric_Value.
Definition uchar.h:578
@ UCHAR_DOUBLE_START
First constant for double Unicode properties.
Definition uchar.h:580
@ UCHAR_HEX_DIGIT
Binary property Hex_Digit.
Definition uchar.h:226
@ UCHAR_SIMPLE_TITLECASE_MAPPING
String property Simple_Titlecase_Mapping.
Definition uchar.h:619
@ UCHAR_TRAIL_CANONICAL_COMBINING_CLASS
Enumerated property Trail_Canonical_Combining_Class.
Definition uchar.h:528
@ UCHAR_DIACRITIC
Binary property Diacritic.
Definition uchar.h:204
@ UCHAR_XID_CONTINUE
Binary property XID_Continue.
Definition uchar.h:295
@ UCHAR_NFKC_QUICK_CHECK
Enumerated property NFKC_Quick_Check.
Definition uchar.h:514
@ UCHAR_HYPHEN
Binary property Hyphen.
Definition uchar.h:229
@ UCHAR_RADICAL
Binary property Radical (new in Unicode 3.2).
Definition uchar.h:271
@ UCHAR_BIDI_PAIRED_BRACKET_TYPE
Enumerated property Bidi_Paired_Bracket_Type (new in Unicode 6.3).
Definition uchar.h:548
@ UCHAR_DASH
Binary property Dash.
Definition uchar.h:194
@ UCHAR_ASCII_HEX_DIGIT
Binary property ASCII_Hex_Digit.
Definition uchar.h:183
@ UCHAR_ID_CONTINUE
Binary property ID_Continue.
Definition uchar.h:234
@ UCHAR_NFKD_INERT
Binary property NFKD_Inert.
Definition uchar.h:327
@ UCHAR_BIDI_MIRRORING_GLYPH
String property Bidi_Mirroring_Glyph.
Definition uchar.h:596
@ UCHAR_LEAD_CANONICAL_COMBINING_CLASS
Enumerated property Lead_Canonical_Combining_Class.
Definition uchar.h:521
@ UCHAR_UNICODE_1_NAME
String property Unicode_1_Name.
Definition uchar.h:631
@ UCHAR_BIDI_MIRRORED
Binary property Bidi_Mirrored.
Definition uchar.h:192
@ UCHAR_CASE_IGNORABLE
Binary property Case_Ignorable.
Definition uchar.h:391
@ UCHAR_EAST_ASIAN_WIDTH
Enumerated property East_Asian_Width.
Definition uchar.h:481
@ UCHAR_STRING_LIMIT
One more than the last constant for string Unicode properties.
Definition uchar.h:644
@ UCHAR_EMOJI_PRESENTATION
Binary property Emoji_Presentation.
Definition uchar.h:417
@ UCHAR_GRAPHEME_BASE
Binary property Grapheme_Base (new in Unicode 3.2).
Definition uchar.h:216
@ UCHAR_NFKD_QUICK_CHECK
Enumerated property NFKD_Quick_Check.
Definition uchar.h:508
@ UCHAR_NAME
String property Name.
Definition uchar.h:610
@ UCHAR_UPPERCASE
Binary property Uppercase.
Definition uchar.h:287
@ UCHAR_CASE_FOLDING
String property Case_Folding.
Definition uchar.h:599
@ UCHAR_MATH
Binary property Math.
Definition uchar.h:261
@ UCHAR_NUMERIC_TYPE
Enumerated property Numeric_Type.
Definition uchar.h:496
@ UCHAR_ISO_COMMENT
Deprecated string property ISO_Comment.
Definition uchar.h:603
@ UCHAR_SCRIPT
Enumerated property Script.
Definition uchar.h:499
@ UCHAR_CHANGES_WHEN_TITLECASED
Binary property Changes_When_Titlecased.
Definition uchar.h:397
@ UCHAR_EXTENDED_PICTOGRAPHIC
Binary property Extended_Pictographic.
Definition uchar.h:455
@ UCHAR_DEPRECATED
Binary property Deprecated (new in Unicode 3.2).
Definition uchar.h:201
@ UCHAR_CHANGES_WHEN_UPPERCASED
Binary property Changes_When_Uppercased.
Definition uchar.h:395
@ UCHAR_CHANGES_WHEN_CASEFOLDED
Binary property Changes_When_Casefolded.
Definition uchar.h:399
@ UCHAR_DEFAULT_IGNORABLE_CODE_POINT
Binary property Default_Ignorable_Code_Point (new in Unicode 3.2).
Definition uchar.h:198
@ UCHAR_GENERAL_CATEGORY
Enumerated property General_Category.
Definition uchar.h:484
@ UCHAR_INT_START
First constant for enumerated/integer Unicode properties.
Definition uchar.h:468
@ UCHAR_EMOJI_MODIFIER
Binary property Emoji_Modifier.
Definition uchar.h:424
@ UCHAR_NFD_QUICK_CHECK
Enumerated property NFD_Quick_Check.
Definition uchar.h:505
@ UCHAR_IDS_BINARY_OPERATOR
Binary property IDS_Binary_Operator (new in Unicode 3.2).
Definition uchar.h:245
@ UCHAR_BINARY_START
First constant for binary Unicode properties.
Definition uchar.h:181
@ UCHAR_TERMINAL_PUNCTUATION
Binary property Terminal_Punctuation.
Definition uchar.h:280
@ UCHAR_GENERAL_CATEGORY_MASK
Bitmask property General_Category_Mask.
Definition uchar.h:565
@ UCHAR_MASK_START
First constant for bit-mask Unicode properties.
Definition uchar.h:567
@ UCHAR_DECOMPOSITION_TYPE
Enumerated property Decomposition_Type.
Definition uchar.h:477
@ UCHAR_TITLECASE_MAPPING
String property Titlecase_Mapping.
Definition uchar.h:625
@ UCHAR_HANGUL_SYLLABLE_TYPE
Enumerated property Hangul_Syllable_Type, new in Unicode 4.
Definition uchar.h:502
@ UCHAR_LINE_BREAK
Enumerated property Line_Break.
Definition uchar.h:493
@ UCHAR_SIMPLE_UPPERCASE_MAPPING
String property Simple_Uppercase_Mapping.
Definition uchar.h:622
@ UCHAR_POSIX_ALNUM
Binary property alnum (a C/POSIX character class).
Definition uchar.h:367
@ UCHAR_JOINING_TYPE
Enumerated property Joining_Type.
Definition uchar.h:490
@ UCHAR_QUOTATION_MARK
Binary property Quotation_Mark.
Definition uchar.h:267
@ UCHAR_NFC_INERT
Binary property NFC_Inert.
Definition uchar.h:334
@ UCHAR_LOWERCASE_MAPPING
String property Lowercase_Mapping.
Definition uchar.h:607
@ UCHAR_SIMPLE_CASE_FOLDING
String property Simple_Case_Folding.
Definition uchar.h:613
@ UCHAR_JOIN_CONTROL
Binary property Join_Control.
Definition uchar.h:252
@ UCHAR_NONCHARACTER_CODE_POINT
Binary property Noncharacter_Code_Point.
Definition uchar.h:265
@ UCHAR_BIDI_CONTROL
Binary property Bidi_Control.
Definition uchar.h:187
@ UCHAR_CHANGES_WHEN_LOWERCASED
Binary property Changes_When_Lowercased.
Definition uchar.h:393
@ UCHAR_BINARY_LIMIT
One more than the last constant for binary Unicode properties.
Definition uchar.h:461
@ UCHAR_IDS_TRINARY_OPERATOR
Binary property IDS_Trinary_Operator (new in Unicode 3.2).
Definition uchar.h:249
@ UCHAR_ID_START
Binary property ID_Start.
Definition uchar.h:238
@ UCHAR_AGE
String property Age.
Definition uchar.h:591
@ UCHAR_WORD_BREAK
Enumerated property Word_Break (new in Unicode 4.1).
Definition uchar.h:543
@ UCHAR_DOUBLE_LIMIT
One more than the last constant for double Unicode properties.
Definition uchar.h:586
@ UCHAR_EMOJI_MODIFIER_BASE
Binary property Emoji_Modifier_Base.
Definition uchar.h:431
@ UCHAR_EMOJI_COMPONENT
Binary property Emoji_Component.
Definition uchar.h:438
@ UCHAR_POSIX_BLANK
Binary property blank (a C/POSIX character class).
Definition uchar.h:372
@ UCHAR_SIMPLE_LOWERCASE_MAPPING
String property Simple_Lowercase_Mapping.
Definition uchar.h:616
@ UCHAR_NFD_INERT
Binary property NFD_Inert.
Definition uchar.h:320
@ UCHAR_POSIX_PRINT
Binary property print (a C/POSIX character class).
Definition uchar.h:382
@ UCHAR_SENTENCE_BREAK
Enumerated property Sentence_Break (new in Unicode 4.1).
Definition uchar.h:538
@ UCHAR_IDEOGRAPHIC
Binary property Ideographic.
Definition uchar.h:241
@ UCHAR_UNIFIED_IDEOGRAPH
Binary property Unified_Ideograph (new in Unicode 3.2).
Definition uchar.h:284
@ UCHAR_CHANGES_WHEN_NFKC_CASEFOLDED
Binary property Changes_When_NFKC_Casefolded.
Definition uchar.h:403
@ UCHAR_NFC_QUICK_CHECK
Enumerated property NFC_Quick_Check.
Definition uchar.h:511
@ UCHAR_CASE_SENSITIVE
Binary property Case_Sensitive.
Definition uchar.h:302
@ UCHAR_UPPERCASE_MAPPING
String property Uppercase_Mapping.
Definition uchar.h:635
@ UCHAR_BIDI_CLASS
Enumerated property Bidi_Class.
Definition uchar.h:466
@ UCHAR_MASK_LIMIT
One more than the last constant for bit-mask Unicode properties.
Definition uchar.h:573
@ UCHAR_JOINING_GROUP
Enumerated property Joining_Group.
Definition uchar.h:487
@ UCHAR_LOGICAL_ORDER_EXCEPTION
Binary property Logical_Order_Exception (new in Unicode 3.2).
Definition uchar.h:256
@ UCHAR_EXTENDER
Binary property Extender.
Definition uchar.h:208
@ UCHAR_STRING_START
First constant for string Unicode properties.
Definition uchar.h:593
@ UCHAR_SCRIPT_EXTENSIONS
Miscellaneous property Script_Extensions (new in Unicode 6.0).
Definition uchar.h:652
@ UCHAR_FULL_COMPOSITION_EXCLUSION
Binary property Full_Composition_Exclusion.
Definition uchar.h:212
@ UCHAR_EMOJI
Binary property Emoji.
Definition uchar.h:410
@ UCHAR_LOWERCASE
Binary property Lowercase.
Definition uchar.h:259
@ UCHAR_CHANGES_WHEN_CASEMAPPED
Binary property Changes_When_Casemapped.
Definition uchar.h:401
@ UCHAR_POSIX_XDIGIT
Binary property xdigit (a C/POSIX character class).
Definition uchar.h:387
UWordBreakValues
Word Break constants.
Definition uchar.h:2086
@ U_WB_E_MODIFIER
Definition uchar.h:2124
@ U_WB_E_BASE_GAZ
Definition uchar.h:2122
@ U_WB_REGIONAL_INDICATOR
Definition uchar.h:2112
@ U_WB_DOUBLE_QUOTE
Definition uchar.h:2118
@ U_WB_LF
Definition uchar.h:2106
@ U_WB_HEBREW_LETTER
Definition uchar.h:2114
@ U_WB_WSEGSPACE
Definition uchar.h:2130
@ U_WB_COUNT
One more than the highest normal UWordBreakValues value.
Definition uchar.h:2139
@ U_WB_GLUE_AFTER_ZWJ
Definition uchar.h:2126
@ U_WB_NEWLINE
Definition uchar.h:2110
@ U_WB_SINGLE_QUOTE
Definition uchar.h:2116
@ U_WB_CR
Definition uchar.h:2102
@ U_WB_E_BASE
Definition uchar.h:2120
@ U_WB_ZWJ
Definition uchar.h:2128
@ U_WB_EXTEND
Definition uchar.h:2104
@ U_WB_MIDNUMLET
Definition uchar.h:2108
UBidiPairedBracketType
Bidi Paired Bracket Type constants.
Definition uchar.h:940
@ U_BPT_CLOSE
Close paired bracket.
Definition uchar.h:952
@ U_BPT_COUNT
One more than the highest normal UBidiPairedBracketType value.
Definition uchar.h:960
@ U_BPT_NONE
Not a paired bracket.
Definition uchar.h:948
@ U_BPT_OPEN
Open paired bracket.
Definition uchar.h:950
UBool u_isprint(UChar32 c)
Determines whether the specified code point is a printable character.
int32_t u_charDigitValue(UChar32 c)
Returns the decimal digit value of a decimal digit character.
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
Definition umachine.h:400
#define U_DEPRECATED
This is used to declare a function as a deprecated public ICU C API
Definition umachine.h:115
#define U_CDECL_END
This is used to end a declaration of a library private ICU C API.
Definition umachine.h:85
int8_t UBool
The ICU boolean type.
Definition umachine.h:236
uint16_t UChar
The base type for UTF-16 code units and pointers.
Definition umachine.h:353
#define U_CDECL_BEGIN
This is used to begin a declaration of a library private ICU C API.
Definition umachine.h:84
#define U_STABLE
This is used to declare a function as a stable public ICU C API.
Definition umachine.h:111
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Error code to replace exception handling, so that the code is compatible with all C++ compilers,...
Definition utypes.h:396
uint8_t UVersionInfo[U_MAX_VERSION_LENGTH]
The binary form of a version on ICU APIs is an array of 4 uint8_t.
Definition uversion.h:59