ICU 69.1 69.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#include "unicode/ucpmap.h"
31
32#if !defined(USET_DEFINED) && !defined(U_IN_DOXYGEN)
33
34#define USET_DEFINED
35
44typedef struct USet USet;
45
46#endif
47
48
50
51/*==========================================================================*/
52/* Unicode version number */
53/*==========================================================================*/
63#define U_UNICODE_VERSION "13.0"
64
157#define UCHAR_MIN_VALUE 0
158
167#define UCHAR_MAX_VALUE 0x10ffff
168
173#define U_MASK(x) ((uint32_t)1<<(x))
174
195typedef enum UProperty {
196 /*
197 * Note: UProperty constants are parsed by preparseucd.py.
198 * It matches lines like
199 * UCHAR_<Unicode property name>=<integer>,
200 */
201
202 /* Note: Place UCHAR_ALPHABETIC before UCHAR_BINARY_START so that
203 debuggers display UCHAR_ALPHABETIC as the symbolic name for 0,
204 rather than UCHAR_BINARY_START. Likewise for other *_START
205 identifiers. */
206
486#ifndef U_HIDE_DEPRECATED_API
492#endif // U_HIDE_DEPRECATED_API
493
601#ifndef U_HIDE_DEPRECATED_API
607#endif // U_HIDE_DEPRECATED_API
608
620#ifndef U_HIDE_DEPRECATED_API
626#endif // U_HIDE_DEPRECATED_API
627
633#ifndef U_HIDE_DEPRECATED_API
639#endif // U_HIDE_DEPRECATED_API
640
643 UCHAR_AGE=0x4000,
652#ifndef U_HIDE_DEPRECATED_API
656#endif /* U_HIDE_DEPRECATED_API */
678#ifndef U_HIDE_DEPRECATED_API
684#endif /* U_HIDE_DEPRECATED_API */
691#ifndef U_HIDE_DEPRECATED_API
697#endif // U_HIDE_DEPRECATED_API
698
707#ifndef U_HIDE_DEPRECATED_API
713#endif // U_HIDE_DEPRECATED_API
714
718
724typedef enum UCharCategory
725{
726 /*
727 * Note: UCharCategory constants and their API comments are parsed by preparseucd.py.
728 * It matches pairs of lines like
729 * / ** <Unicode 2-letter General_Category value> comment... * /
730 * U_<[A-Z_]+> = <integer>,
731 */
732
804
819#define U_GC_CN_MASK U_MASK(U_GENERAL_OTHER_TYPES)
820
822#define U_GC_LU_MASK U_MASK(U_UPPERCASE_LETTER)
824#define U_GC_LL_MASK U_MASK(U_LOWERCASE_LETTER)
826#define U_GC_LT_MASK U_MASK(U_TITLECASE_LETTER)
828#define U_GC_LM_MASK U_MASK(U_MODIFIER_LETTER)
830#define U_GC_LO_MASK U_MASK(U_OTHER_LETTER)
831
833#define U_GC_MN_MASK U_MASK(U_NON_SPACING_MARK)
835#define U_GC_ME_MASK U_MASK(U_ENCLOSING_MARK)
837#define U_GC_MC_MASK U_MASK(U_COMBINING_SPACING_MARK)
838
840#define U_GC_ND_MASK U_MASK(U_DECIMAL_DIGIT_NUMBER)
842#define U_GC_NL_MASK U_MASK(U_LETTER_NUMBER)
844#define U_GC_NO_MASK U_MASK(U_OTHER_NUMBER)
845
847#define U_GC_ZS_MASK U_MASK(U_SPACE_SEPARATOR)
849#define U_GC_ZL_MASK U_MASK(U_LINE_SEPARATOR)
851#define U_GC_ZP_MASK U_MASK(U_PARAGRAPH_SEPARATOR)
852
854#define U_GC_CC_MASK U_MASK(U_CONTROL_CHAR)
856#define U_GC_CF_MASK U_MASK(U_FORMAT_CHAR)
858#define U_GC_CO_MASK U_MASK(U_PRIVATE_USE_CHAR)
860#define U_GC_CS_MASK U_MASK(U_SURROGATE)
861
863#define U_GC_PD_MASK U_MASK(U_DASH_PUNCTUATION)
865#define U_GC_PS_MASK U_MASK(U_START_PUNCTUATION)
867#define U_GC_PE_MASK U_MASK(U_END_PUNCTUATION)
869#define U_GC_PC_MASK U_MASK(U_CONNECTOR_PUNCTUATION)
871#define U_GC_PO_MASK U_MASK(U_OTHER_PUNCTUATION)
872
874#define U_GC_SM_MASK U_MASK(U_MATH_SYMBOL)
876#define U_GC_SC_MASK U_MASK(U_CURRENCY_SYMBOL)
878#define U_GC_SK_MASK U_MASK(U_MODIFIER_SYMBOL)
880#define U_GC_SO_MASK U_MASK(U_OTHER_SYMBOL)
881
883#define U_GC_PI_MASK U_MASK(U_INITIAL_PUNCTUATION)
885#define U_GC_PF_MASK U_MASK(U_FINAL_PUNCTUATION)
886
887
889#define U_GC_L_MASK \
890 (U_GC_LU_MASK|U_GC_LL_MASK|U_GC_LT_MASK|U_GC_LM_MASK|U_GC_LO_MASK)
891
893#define U_GC_LC_MASK \
894 (U_GC_LU_MASK|U_GC_LL_MASK|U_GC_LT_MASK)
895
897#define U_GC_M_MASK (U_GC_MN_MASK|U_GC_ME_MASK|U_GC_MC_MASK)
898
900#define U_GC_N_MASK (U_GC_ND_MASK|U_GC_NL_MASK|U_GC_NO_MASK)
901
903#define U_GC_Z_MASK (U_GC_ZS_MASK|U_GC_ZL_MASK|U_GC_ZP_MASK)
904
906#define U_GC_C_MASK \
907 (U_GC_CN_MASK|U_GC_CC_MASK|U_GC_CF_MASK|U_GC_CO_MASK|U_GC_CS_MASK)
908
910#define U_GC_P_MASK \
911 (U_GC_PD_MASK|U_GC_PS_MASK|U_GC_PE_MASK|U_GC_PC_MASK|U_GC_PO_MASK| \
912 U_GC_PI_MASK|U_GC_PF_MASK)
913
915#define U_GC_S_MASK (U_GC_SM_MASK|U_GC_SC_MASK|U_GC_SK_MASK|U_GC_SO_MASK)
916
921typedef enum UCharDirection {
922 /*
923 * Note: UCharDirection constants and their API comments are parsed by preparseucd.py.
924 * It matches pairs of lines like
925 * / ** <Unicode 1..3-letter Bidi_Class value> comment... * /
926 * U_<[A-Z_]+> = <integer>,
927 */
928
975#ifndef U_HIDE_DEPRECATED_API
983#endif // U_HIDE_DEPRECATED_API
985
993 /*
994 * Note: UBidiPairedBracketType constants are parsed by preparseucd.py.
995 * It matches lines like
996 * U_BPT_<Unicode Bidi_Paired_Bracket_Type value name>
997 */
998
1005#ifndef U_HIDE_DEPRECATED_API
1012 U_BPT_COUNT /* 3 */
1013#endif // U_HIDE_DEPRECATED_API
1015
1021 /*
1022 * Note: UBlockCode constants are parsed by preparseucd.py.
1023 * It matches lines like
1024 * UBLOCK_<Unicode Block value name> = <integer>,
1025 */
1026
1028 UBLOCK_NO_BLOCK = 0, /*[none]*/ /* Special range indicating No_Block */
1029
1031 UBLOCK_BASIC_LATIN = 1, /*[0000]*/
1032
1035
1038
1041
1044
1047
1050
1055 UBLOCK_GREEK =8, /*[0370]*/
1056
1058 UBLOCK_CYRILLIC =9, /*[0400]*/
1059
1061 UBLOCK_ARMENIAN =10, /*[0530]*/
1062
1064 UBLOCK_HEBREW =11, /*[0590]*/
1065
1067 UBLOCK_ARABIC =12, /*[0600]*/
1068
1070 UBLOCK_SYRIAC =13, /*[0700]*/
1071
1073 UBLOCK_THAANA =14, /*[0780]*/
1074
1076 UBLOCK_DEVANAGARI =15, /*[0900]*/
1077
1079 UBLOCK_BENGALI =16, /*[0980]*/
1080
1082 UBLOCK_GURMUKHI =17, /*[0A00]*/
1083
1085 UBLOCK_GUJARATI =18, /*[0A80]*/
1086
1088 UBLOCK_ORIYA =19, /*[0B00]*/
1089
1091 UBLOCK_TAMIL =20, /*[0B80]*/
1092
1094 UBLOCK_TELUGU =21, /*[0C00]*/
1095
1097 UBLOCK_KANNADA =22, /*[0C80]*/
1098
1100 UBLOCK_MALAYALAM =23, /*[0D00]*/
1101
1103 UBLOCK_SINHALA =24, /*[0D80]*/
1104
1106 UBLOCK_THAI =25, /*[0E00]*/
1107
1109 UBLOCK_LAO =26, /*[0E80]*/
1110
1112 UBLOCK_TIBETAN =27, /*[0F00]*/
1113
1115 UBLOCK_MYANMAR =28, /*[1000]*/
1116
1118 UBLOCK_GEORGIAN =29, /*[10A0]*/
1119
1121 UBLOCK_HANGUL_JAMO =30, /*[1100]*/
1122
1124 UBLOCK_ETHIOPIC =31, /*[1200]*/
1125
1127 UBLOCK_CHEROKEE =32, /*[13A0]*/
1128
1131
1133 UBLOCK_OGHAM =34, /*[1680]*/
1134
1136 UBLOCK_RUNIC =35, /*[16A0]*/
1137
1139 UBLOCK_KHMER =36, /*[1780]*/
1140
1142 UBLOCK_MONGOLIAN =37, /*[1800]*/
1143
1146
1149
1152
1155
1158
1164
1167
1169 UBLOCK_NUMBER_FORMS =45, /*[2150]*/
1170
1172 UBLOCK_ARROWS =46, /*[2190]*/
1173
1176
1179
1182
1185
1188
1190 UBLOCK_BOX_DRAWING =52, /*[2500]*/
1191
1194
1197
1200
1202 UBLOCK_DINGBATS =56, /*[2700]*/
1203
1206
1209
1212
1215
1218
1220 UBLOCK_HIRAGANA =62, /*[3040]*/
1221
1223 UBLOCK_KATAKANA =63, /*[30A0]*/
1224
1226 UBLOCK_BOPOMOFO =64, /*[3100]*/
1227
1230
1232 UBLOCK_KANBUN =66, /*[3190]*/
1233
1236
1239
1242
1245
1248
1250 UBLOCK_YI_SYLLABLES =72, /*[A000]*/
1251
1253 UBLOCK_YI_RADICALS =73, /*[A490]*/
1254
1257
1260
1263
1266
1287
1290
1293
1296
1299
1302
1305
1308
1310 UBLOCK_SPECIALS =86, /*[FFF0]*/
1311
1314
1315 /* New blocks in Unicode 3.1 */
1316
1318 UBLOCK_OLD_ITALIC = 88, /*[10300]*/
1320 UBLOCK_GOTHIC = 89, /*[10330]*/
1322 UBLOCK_DESERET = 90, /*[10400]*/
1326 UBLOCK_MUSICAL_SYMBOLS = 92, /*[1D100]*/
1334 UBLOCK_TAGS = 96, /*[E0000]*/
1335
1336 /* New blocks in Unicode 3.2 */
1337
1346 UBLOCK_TAGALOG = 98, /*[1700]*/
1348 UBLOCK_HANUNOO = 99, /*[1720]*/
1350 UBLOCK_BUHID = 100, /*[1740]*/
1352 UBLOCK_TAGBANWA = 101, /*[1760]*/
1371
1372 /* New blocks in Unicode 4 */
1373
1375 UBLOCK_LIMBU = 111, /*[1900]*/
1377 UBLOCK_TAI_LE = 112, /*[1950]*/
1379 UBLOCK_KHMER_SYMBOLS = 113, /*[19E0]*/
1387 UBLOCK_LINEAR_B_SYLLABARY = 117, /*[10000]*/
1389 UBLOCK_LINEAR_B_IDEOGRAMS = 118, /*[10080]*/
1391 UBLOCK_AEGEAN_NUMBERS = 119, /*[10100]*/
1393 UBLOCK_UGARITIC = 120, /*[10380]*/
1395 UBLOCK_SHAVIAN = 121, /*[10450]*/
1397 UBLOCK_OSMANYA = 122, /*[10480]*/
1399 UBLOCK_CYPRIOT_SYLLABARY = 123, /*[10800]*/
1404
1405 /* New blocks in Unicode 4.1 */
1406
1414 UBLOCK_BUGINESE = 129, /*[1A00]*/
1416 UBLOCK_CJK_STROKES = 130, /*[31C0]*/
1420 UBLOCK_COPTIC = 132, /*[2C80]*/
1428 UBLOCK_GLAGOLITIC = 136, /*[2C00]*/
1430 UBLOCK_KHAROSHTHI = 137, /*[10A00]*/
1434 UBLOCK_NEW_TAI_LUE = 139, /*[1980]*/
1436 UBLOCK_OLD_PERSIAN = 140, /*[103A0]*/
1442 UBLOCK_SYLOTI_NAGRI = 143, /*[A800]*/
1444 UBLOCK_TIFINAGH = 144, /*[2D30]*/
1446 UBLOCK_VERTICAL_FORMS = 145, /*[FE10]*/
1447
1448 /* New blocks in Unicode 5.0 */
1449
1451 UBLOCK_NKO = 146, /*[07C0]*/
1453 UBLOCK_BALINESE = 147, /*[1B00]*/
1455 UBLOCK_LATIN_EXTENDED_C = 148, /*[2C60]*/
1457 UBLOCK_LATIN_EXTENDED_D = 149, /*[A720]*/
1459 UBLOCK_PHAGS_PA = 150, /*[A840]*/
1461 UBLOCK_PHOENICIAN = 151, /*[10900]*/
1463 UBLOCK_CUNEIFORM = 152, /*[12000]*/
1468
1469 /* New blocks in Unicode 5.1 */
1470
1472 UBLOCK_SUNDANESE = 155, /*[1B80]*/
1474 UBLOCK_LEPCHA = 156, /*[1C00]*/
1476 UBLOCK_OL_CHIKI = 157, /*[1C50]*/
1480 UBLOCK_VAI = 159, /*[A500]*/
1484 UBLOCK_SAURASHTRA = 161, /*[A880]*/
1486 UBLOCK_KAYAH_LI = 162, /*[A900]*/
1488 UBLOCK_REJANG = 163, /*[A930]*/
1490 UBLOCK_CHAM = 164, /*[AA00]*/
1492 UBLOCK_ANCIENT_SYMBOLS = 165, /*[10190]*/
1494 UBLOCK_PHAISTOS_DISC = 166, /*[101D0]*/
1496 UBLOCK_LYCIAN = 167, /*[10280]*/
1498 UBLOCK_CARIAN = 168, /*[102A0]*/
1500 UBLOCK_LYDIAN = 169, /*[10920]*/
1502 UBLOCK_MAHJONG_TILES = 170, /*[1F000]*/
1504 UBLOCK_DOMINO_TILES = 171, /*[1F030]*/
1505
1506 /* New blocks in Unicode 5.2 */
1507
1509 UBLOCK_SAMARITAN = 172, /*[0800]*/
1513 UBLOCK_TAI_THAM = 174, /*[1A20]*/
1515 UBLOCK_VEDIC_EXTENSIONS = 175, /*[1CD0]*/
1517 UBLOCK_LISU = 176, /*[A4D0]*/
1519 UBLOCK_BAMUM = 177, /*[A6A0]*/
1527 UBLOCK_JAVANESE = 181, /*[A980]*/
1531 UBLOCK_TAI_VIET = 183, /*[AA80]*/
1533 UBLOCK_MEETEI_MAYEK = 184, /*[ABC0]*/
1537 UBLOCK_IMPERIAL_ARAMAIC = 186, /*[10840]*/
1539 UBLOCK_OLD_SOUTH_ARABIAN = 187, /*[10A60]*/
1541 UBLOCK_AVESTAN = 188, /*[10B00]*/
1547 UBLOCK_OLD_TURKIC = 191, /*[10C00]*/
1551 UBLOCK_KAITHI = 193, /*[11080]*/
1560
1561 /* New blocks in Unicode 6.0 */
1562
1564 UBLOCK_MANDAIC = 198, /*[0840]*/
1566 UBLOCK_BATAK = 199, /*[1BC0]*/
1570 UBLOCK_BRAHMI = 201, /*[11000]*/
1572 UBLOCK_BAMUM_SUPPLEMENT = 202, /*[16800]*/
1574 UBLOCK_KANA_SUPPLEMENT = 203, /*[1B000]*/
1576 UBLOCK_PLAYING_CARDS = 204, /*[1F0A0]*/
1580 UBLOCK_EMOTICONS = 206, /*[1F600]*/
1584 UBLOCK_ALCHEMICAL_SYMBOLS = 208, /*[1F700]*/
1587
1588 /* New blocks in Unicode 6.1 */
1589
1595 UBLOCK_CHAKMA = 212, /*[11100]*/
1599 UBLOCK_MEROITIC_CURSIVE = 214, /*[109A0]*/
1603 UBLOCK_MIAO = 216, /*[16F00]*/
1605 UBLOCK_SHARADA = 217, /*[11180]*/
1607 UBLOCK_SORA_SOMPENG = 218, /*[110D0]*/
1611 UBLOCK_TAKRI = 220, /*[11680]*/
1612
1613 /* New blocks in Unicode 7.0 */
1614
1616 UBLOCK_BASSA_VAH = 221, /*[16AD0]*/
1618 UBLOCK_CAUCASIAN_ALBANIAN = 222, /*[10530]*/
1624 UBLOCK_DUPLOYAN = 225, /*[1BC00]*/
1626 UBLOCK_ELBASAN = 226, /*[10500]*/
1630 UBLOCK_GRANTHA = 228, /*[11300]*/
1632 UBLOCK_KHOJKI = 229, /*[11200]*/
1634 UBLOCK_KHUDAWADI = 230, /*[112B0]*/
1636 UBLOCK_LATIN_EXTENDED_E = 231, /*[AB30]*/
1638 UBLOCK_LINEAR_A = 232, /*[10600]*/
1640 UBLOCK_MAHAJANI = 233, /*[11150]*/
1642 UBLOCK_MANICHAEAN = 234, /*[10AC0]*/
1644 UBLOCK_MENDE_KIKAKUI = 235, /*[1E800]*/
1646 UBLOCK_MODI = 236, /*[11600]*/
1648 UBLOCK_MRO = 237, /*[16A40]*/
1652 UBLOCK_NABATAEAN = 239, /*[10880]*/
1654 UBLOCK_OLD_NORTH_ARABIAN = 240, /*[10A80]*/
1656 UBLOCK_OLD_PERMIC = 241, /*[10350]*/
1660 UBLOCK_PAHAWH_HMONG = 243, /*[16B00]*/
1662 UBLOCK_PALMYRENE = 244, /*[10860]*/
1664 UBLOCK_PAU_CIN_HAU = 245, /*[11AC0]*/
1666 UBLOCK_PSALTER_PAHLAVI = 246, /*[10B80]*/
1670 UBLOCK_SIDDHAM = 248, /*[11580]*/
1676 UBLOCK_TIRHUTA = 251, /*[11480]*/
1678 UBLOCK_WARANG_CITI = 252, /*[118A0]*/
1679
1680 /* New blocks in Unicode 8.0 */
1681
1683 UBLOCK_AHOM = 253, /*[11700]*/
1693 UBLOCK_HATRAN = 258, /*[108E0]*/
1695 UBLOCK_MULTANI = 259, /*[11280]*/
1697 UBLOCK_OLD_HUNGARIAN = 260, /*[10C80]*/
1701 UBLOCK_SUTTON_SIGNWRITING = 262, /*[1D800]*/
1702
1703 /* New blocks in Unicode 9.0 */
1704
1706 UBLOCK_ADLAM = 263, /*[1E900]*/
1708 UBLOCK_BHAIKSUKI = 264, /*[11C00]*/
1716 UBLOCK_MARCHEN = 268, /*[11C70]*/
1720 UBLOCK_NEWA = 270, /*[11400]*/
1722 UBLOCK_OSAGE = 271, /*[104B0]*/
1724 UBLOCK_TANGUT = 272, /*[17000]*/
1726 UBLOCK_TANGUT_COMPONENTS = 273, /*[18800]*/
1727
1728 // New blocks in Unicode 10.0
1729
1733 UBLOCK_KANA_EXTENDED_A = 275, /*[1B100]*/
1735 UBLOCK_MASARAM_GONDI = 276, /*[11D00]*/
1737 UBLOCK_NUSHU = 277, /*[1B170]*/
1739 UBLOCK_SOYOMBO = 278, /*[11A50]*/
1743 UBLOCK_ZANABAZAR_SQUARE = 280, /*[11A00]*/
1744
1745 // New blocks in Unicode 11.0
1746
1748 UBLOCK_CHESS_SYMBOLS = 281, /*[1FA00]*/
1750 UBLOCK_DOGRA = 282, /*[11800]*/
1754 UBLOCK_GUNJALA_GONDI = 284, /*[11D60]*/
1756 UBLOCK_HANIFI_ROHINGYA = 285, /*[10D00]*/
1760 UBLOCK_MAKASAR = 287, /*[11EE0]*/
1762 UBLOCK_MAYAN_NUMERALS = 288, /*[1D2E0]*/
1764 UBLOCK_MEDEFAIDRIN = 289, /*[16E40]*/
1766 UBLOCK_OLD_SOGDIAN = 290, /*[10F00]*/
1768 UBLOCK_SOGDIAN = 291, /*[10F30]*/
1769
1770 // New blocks in Unicode 12.0
1771
1775 UBLOCK_ELYMAIC = 293, /*[10FE0]*/
1777 UBLOCK_NANDINAGARI = 294, /*[119A0]*/
1787 UBLOCK_TAMIL_SUPPLEMENT = 299, /*[11FC0]*/
1789 UBLOCK_WANCHO = 300, /*[1E2C0]*/
1790
1791 // New blocks in Unicode 13.0
1792
1794 UBLOCK_CHORASMIAN = 301, /*[10FB0]*/
1798 UBLOCK_DIVES_AKURU = 303, /*[11900]*/
1802 UBLOCK_LISU_SUPPLEMENT = 305, /*[11FB0]*/
1806 UBLOCK_TANGUT_SUPPLEMENT = 307, /*[18D00]*/
1808 UBLOCK_YEZIDI = 308, /*[10E80]*/
1809
1810#ifndef U_HIDE_DEPRECATED_API
1818#endif // U_HIDE_DEPRECATED_API
1819
1823
1826
1834typedef enum UEastAsianWidth {
1835 /*
1836 * Note: UEastAsianWidth constants are parsed by preparseucd.py.
1837 * It matches lines like
1838 * U_EA_<Unicode East_Asian_Width value name>
1839 */
1840
1841 U_EA_NEUTRAL, /*[N]*/
1842 U_EA_AMBIGUOUS, /*[A]*/
1843 U_EA_HALFWIDTH, /*[H]*/
1844 U_EA_FULLWIDTH, /*[F]*/
1845 U_EA_NARROW, /*[Na]*/
1846 U_EA_WIDE, /*[W]*/
1847#ifndef U_HIDE_DEPRECATED_API
1855#endif // U_HIDE_DEPRECATED_API
1857
1869typedef enum UCharNameChoice {
1872#ifndef U_HIDE_DEPRECATED_API
1879#endif /* U_HIDE_DEPRECATED_API */
1884#ifndef U_HIDE_DEPRECATED_API
1890#endif // U_HIDE_DEPRECATED_API
1892
1907 U_SHORT_PROPERTY_NAME,
1908 U_LONG_PROPERTY_NAME,
1909#ifndef U_HIDE_DEPRECATED_API
1915#endif // U_HIDE_DEPRECATED_API
1917
1925 /*
1926 * Note: UDecompositionType constants are parsed by preparseucd.py.
1927 * It matches lines like
1928 * U_DT_<Unicode Decomposition_Type value name>
1929 */
1930
1931 U_DT_NONE, /*[none]*/
1932 U_DT_CANONICAL, /*[can]*/
1933 U_DT_COMPAT, /*[com]*/
1934 U_DT_CIRCLE, /*[enc]*/
1935 U_DT_FINAL, /*[fin]*/
1936 U_DT_FONT, /*[font]*/
1937 U_DT_FRACTION, /*[fra]*/
1938 U_DT_INITIAL, /*[init]*/
1939 U_DT_ISOLATED, /*[iso]*/
1940 U_DT_MEDIAL, /*[med]*/
1941 U_DT_NARROW, /*[nar]*/
1942 U_DT_NOBREAK, /*[nb]*/
1943 U_DT_SMALL, /*[sml]*/
1944 U_DT_SQUARE, /*[sqr]*/
1945 U_DT_SUB, /*[sub]*/
1946 U_DT_SUPER, /*[sup]*/
1947 U_DT_VERTICAL, /*[vert]*/
1948 U_DT_WIDE, /*[wide]*/
1949#ifndef U_HIDE_DEPRECATED_API
1956 U_DT_COUNT /* 18 */
1957#endif // U_HIDE_DEPRECATED_API
1959
1966typedef enum UJoiningType {
1967 /*
1968 * Note: UJoiningType constants are parsed by preparseucd.py.
1969 * It matches lines like
1970 * U_JT_<Unicode Joining_Type value name>
1971 */
1972
1973 U_JT_NON_JOINING, /*[U]*/
1974 U_JT_JOIN_CAUSING, /*[C]*/
1975 U_JT_DUAL_JOINING, /*[D]*/
1976 U_JT_LEFT_JOINING, /*[L]*/
1977 U_JT_RIGHT_JOINING, /*[R]*/
1978 U_JT_TRANSPARENT, /*[T]*/
1979#ifndef U_HIDE_DEPRECATED_API
1986 U_JT_COUNT /* 6 */
1987#endif // U_HIDE_DEPRECATED_API
1989
1996typedef enum UJoiningGroup {
1997 /*
1998 * Note: UJoiningGroup constants are parsed by preparseucd.py.
1999 * It matches lines like
2000 * U_JG_<Unicode Joining_Group value name>
2001 */
2002
2003 U_JG_NO_JOINING_GROUP,
2004 U_JG_AIN,
2005 U_JG_ALAPH,
2006 U_JG_ALEF,
2007 U_JG_BEH,
2008 U_JG_BETH,
2009 U_JG_DAL,
2010 U_JG_DALATH_RISH,
2011 U_JG_E,
2012 U_JG_FEH,
2013 U_JG_FINAL_SEMKATH,
2014 U_JG_GAF,
2015 U_JG_GAMAL,
2016 U_JG_HAH,
2018 U_JG_HAMZA_ON_HEH_GOAL=U_JG_TEH_MARBUTA_GOAL,
2019 U_JG_HE,
2020 U_JG_HEH,
2021 U_JG_HEH_GOAL,
2022 U_JG_HETH,
2023 U_JG_KAF,
2024 U_JG_KAPH,
2025 U_JG_KNOTTED_HEH,
2026 U_JG_LAM,
2027 U_JG_LAMADH,
2028 U_JG_MEEM,
2029 U_JG_MIM,
2030 U_JG_NOON,
2031 U_JG_NUN,
2032 U_JG_PE,
2033 U_JG_QAF,
2034 U_JG_QAPH,
2035 U_JG_REH,
2036 U_JG_REVERSED_PE,
2037 U_JG_SAD,
2038 U_JG_SADHE,
2039 U_JG_SEEN,
2040 U_JG_SEMKATH,
2041 U_JG_SHIN,
2042 U_JG_SWASH_KAF,
2043 U_JG_SYRIAC_WAW,
2044 U_JG_TAH,
2045 U_JG_TAW,
2046 U_JG_TEH_MARBUTA,
2047 U_JG_TETH,
2048 U_JG_WAW,
2049 U_JG_YEH,
2050 U_JG_YEH_BARREE,
2051 U_JG_YEH_WITH_TAIL,
2052 U_JG_YUDH,
2053 U_JG_YUDH_HE,
2054 U_JG_ZAIN,
2109#ifndef U_HIDE_DEPRECATED_API
2117#endif // U_HIDE_DEPRECATED_API
2119
2127 /*
2128 * Note: UGraphemeClusterBreak constants are parsed by preparseucd.py.
2129 * It matches lines like
2130 * U_GCB_<Unicode Grapheme_Cluster_Break value name>
2131 */
2132
2133 U_GCB_OTHER = 0, /*[XX]*/
2134 U_GCB_CONTROL = 1, /*[CN]*/
2135 U_GCB_CR = 2, /*[CR]*/
2136 U_GCB_EXTEND = 3, /*[EX]*/
2137 U_GCB_L = 4, /*[L]*/
2138 U_GCB_LF = 5, /*[LF]*/
2139 U_GCB_LV = 6, /*[LV]*/
2140 U_GCB_LVT = 7, /*[LVT]*/
2141 U_GCB_T = 8, /*[T]*/
2142 U_GCB_V = 9, /*[V]*/
2144 U_GCB_SPACING_MARK = 10, /*[SM]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */
2146 U_GCB_PREPEND = 11, /*[PP]*/
2148 U_GCB_REGIONAL_INDICATOR = 12, /*[RI]*/ /* new in Unicode 6.2/ICU 50 */
2150 U_GCB_E_BASE = 13, /*[EB]*/ /* from here on: new in Unicode 9.0/ICU 58 */
2152 U_GCB_E_BASE_GAZ = 14, /*[EBG]*/
2154 U_GCB_E_MODIFIER = 15, /*[EM]*/
2156 U_GCB_GLUE_AFTER_ZWJ = 16, /*[GAZ]*/
2158 U_GCB_ZWJ = 17, /*[ZWJ]*/
2159
2160#ifndef U_HIDE_DEPRECATED_API
2167 U_GCB_COUNT = 18
2168#endif // U_HIDE_DEPRECATED_API
2170
2178typedef enum UWordBreakValues {
2179 /*
2180 * Note: UWordBreakValues constants are parsed by preparseucd.py.
2181 * It matches lines like
2182 * U_WB_<Unicode Word_Break value name>
2183 */
2184
2185 U_WB_OTHER = 0, /*[XX]*/
2186 U_WB_ALETTER = 1, /*[LE]*/
2187 U_WB_FORMAT = 2, /*[FO]*/
2188 U_WB_KATAKANA = 3, /*[KA]*/
2189 U_WB_MIDLETTER = 4, /*[ML]*/
2190 U_WB_MIDNUM = 5, /*[MN]*/
2191 U_WB_NUMERIC = 6, /*[NU]*/
2192 U_WB_EXTENDNUMLET = 7, /*[EX]*/
2194 U_WB_CR = 8, /*[CR]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */
2196 U_WB_EXTEND = 9, /*[Extend]*/
2198 U_WB_LF = 10, /*[LF]*/
2200 U_WB_MIDNUMLET =11, /*[MB]*/
2202 U_WB_NEWLINE =12, /*[NL]*/
2204 U_WB_REGIONAL_INDICATOR = 13, /*[RI]*/ /* new in Unicode 6.2/ICU 50 */
2206 U_WB_HEBREW_LETTER = 14, /*[HL]*/ /* from here on: new in Unicode 6.3/ICU 52 */
2208 U_WB_SINGLE_QUOTE = 15, /*[SQ]*/
2210 U_WB_DOUBLE_QUOTE = 16, /*[DQ]*/
2212 U_WB_E_BASE = 17, /*[EB]*/ /* from here on: new in Unicode 9.0/ICU 58 */
2214 U_WB_E_BASE_GAZ = 18, /*[EBG]*/
2216 U_WB_E_MODIFIER = 19, /*[EM]*/
2218 U_WB_GLUE_AFTER_ZWJ = 20, /*[GAZ]*/
2220 U_WB_ZWJ = 21, /*[ZWJ]*/
2222 U_WB_WSEGSPACE = 22, /*[WSEGSPACE]*/
2223
2224#ifndef U_HIDE_DEPRECATED_API
2231 U_WB_COUNT = 23
2232#endif // U_HIDE_DEPRECATED_API
2234
2241typedef enum USentenceBreak {
2242 /*
2243 * Note: USentenceBreak constants are parsed by preparseucd.py.
2244 * It matches lines like
2245 * U_SB_<Unicode Sentence_Break value name>
2246 */
2247
2248 U_SB_OTHER = 0, /*[XX]*/
2249 U_SB_ATERM = 1, /*[AT]*/
2250 U_SB_CLOSE = 2, /*[CL]*/
2251 U_SB_FORMAT = 3, /*[FO]*/
2252 U_SB_LOWER = 4, /*[LO]*/
2253 U_SB_NUMERIC = 5, /*[NU]*/
2254 U_SB_OLETTER = 6, /*[LE]*/
2255 U_SB_SEP = 7, /*[SE]*/
2256 U_SB_SP = 8, /*[SP]*/
2257 U_SB_STERM = 9, /*[ST]*/
2258 U_SB_UPPER = 10, /*[UP]*/
2259 U_SB_CR = 11, /*[CR]*/ /* from here on: new in Unicode 5.1/ICU 4.0 */
2260 U_SB_EXTEND = 12, /*[EX]*/
2261 U_SB_LF = 13, /*[LF]*/
2262 U_SB_SCONTINUE = 14, /*[SC]*/
2263#ifndef U_HIDE_DEPRECATED_API
2270 U_SB_COUNT = 15
2271#endif // U_HIDE_DEPRECATED_API
2273
2280typedef enum ULineBreak {
2281 /*
2282 * Note: ULineBreak constants are parsed by preparseucd.py.
2283 * It matches lines like
2284 * U_LB_<Unicode Line_Break value name>
2285 */
2286
2287 U_LB_UNKNOWN = 0, /*[XX]*/
2288 U_LB_AMBIGUOUS = 1, /*[AI]*/
2289 U_LB_ALPHABETIC = 2, /*[AL]*/
2290 U_LB_BREAK_BOTH = 3, /*[B2]*/
2291 U_LB_BREAK_AFTER = 4, /*[BA]*/
2292 U_LB_BREAK_BEFORE = 5, /*[BB]*/
2293 U_LB_MANDATORY_BREAK = 6, /*[BK]*/
2294 U_LB_CONTINGENT_BREAK = 7, /*[CB]*/
2295 U_LB_CLOSE_PUNCTUATION = 8, /*[CL]*/
2296 U_LB_COMBINING_MARK = 9, /*[CM]*/
2297 U_LB_CARRIAGE_RETURN = 10, /*[CR]*/
2298 U_LB_EXCLAMATION = 11, /*[EX]*/
2299 U_LB_GLUE = 12, /*[GL]*/
2300 U_LB_HYPHEN = 13, /*[HY]*/
2301 U_LB_IDEOGRAPHIC = 14, /*[ID]*/
2303 U_LB_INSEPARABLE = 15, /*[IN]*/
2304 U_LB_INSEPERABLE = U_LB_INSEPARABLE,
2305 U_LB_INFIX_NUMERIC = 16, /*[IS]*/
2306 U_LB_LINE_FEED = 17, /*[LF]*/
2307 U_LB_NONSTARTER = 18, /*[NS]*/
2308 U_LB_NUMERIC = 19, /*[NU]*/
2309 U_LB_OPEN_PUNCTUATION = 20, /*[OP]*/
2310 U_LB_POSTFIX_NUMERIC = 21, /*[PO]*/
2311 U_LB_PREFIX_NUMERIC = 22, /*[PR]*/
2312 U_LB_QUOTATION = 23, /*[QU]*/
2313 U_LB_COMPLEX_CONTEXT = 24, /*[SA]*/
2314 U_LB_SURROGATE = 25, /*[SG]*/
2315 U_LB_SPACE = 26, /*[SP]*/
2316 U_LB_BREAK_SYMBOLS = 27, /*[SY]*/
2317 U_LB_ZWSPACE = 28, /*[ZW]*/
2319 U_LB_NEXT_LINE = 29, /*[NL]*/ /* from here on: new in Unicode 4/ICU 2.6 */
2321 U_LB_WORD_JOINER = 30, /*[WJ]*/
2323 U_LB_H2 = 31, /*[H2]*/ /* from here on: new in Unicode 4.1/ICU 3.4 */
2325 U_LB_H3 = 32, /*[H3]*/
2327 U_LB_JL = 33, /*[JL]*/
2329 U_LB_JT = 34, /*[JT]*/
2331 U_LB_JV = 35, /*[JV]*/
2333 U_LB_CLOSE_PARENTHESIS = 36, /*[CP]*/ /* new in Unicode 5.2/ICU 4.4 */
2335 U_LB_CONDITIONAL_JAPANESE_STARTER = 37,/*[CJ]*/ /* new in Unicode 6.1/ICU 49 */
2337 U_LB_HEBREW_LETTER = 38, /*[HL]*/ /* new in Unicode 6.1/ICU 49 */
2339 U_LB_REGIONAL_INDICATOR = 39,/*[RI]*/ /* new in Unicode 6.2/ICU 50 */
2341 U_LB_E_BASE = 40, /*[EB]*/ /* from here on: new in Unicode 9.0/ICU 58 */
2343 U_LB_E_MODIFIER = 41, /*[EM]*/
2345 U_LB_ZWJ = 42, /*[ZWJ]*/
2346#ifndef U_HIDE_DEPRECATED_API
2353 U_LB_COUNT = 43
2354#endif // U_HIDE_DEPRECATED_API
2356
2363typedef enum UNumericType {
2364 /*
2365 * Note: UNumericType constants are parsed by preparseucd.py.
2366 * It matches lines like
2367 * U_NT_<Unicode Numeric_Type value name>
2368 */
2369
2370 U_NT_NONE, /*[None]*/
2371 U_NT_DECIMAL, /*[de]*/
2372 U_NT_DIGIT, /*[di]*/
2373 U_NT_NUMERIC, /*[nu]*/
2374#ifndef U_HIDE_DEPRECATED_API
2382#endif // U_HIDE_DEPRECATED_API
2384
2392 /*
2393 * Note: UHangulSyllableType constants are parsed by preparseucd.py.
2394 * It matches lines like
2395 * U_HST_<Unicode Hangul_Syllable_Type value name>
2396 */
2397
2398 U_HST_NOT_APPLICABLE, /*[NA]*/
2399 U_HST_LEADING_JAMO, /*[L]*/
2400 U_HST_VOWEL_JAMO, /*[V]*/
2401 U_HST_TRAILING_JAMO, /*[T]*/
2402 U_HST_LV_SYLLABLE, /*[LV]*/
2403 U_HST_LVT_SYLLABLE, /*[LVT]*/
2404#ifndef U_HIDE_DEPRECATED_API
2412#endif // U_HIDE_DEPRECATED_API
2414
2461
2548
2556 /*
2557 * Note: UVerticalOrientation constants are parsed by preparseucd.py.
2558 * It matches lines like
2559 * U_VO_<Unicode Vertical_Orientation value name>
2560 */
2561
2571
2599U_CAPI UBool U_EXPORT2
2601
2617U_CAPI const USet * U_EXPORT2
2619
2632U_CAPI UBool U_EXPORT2
2634
2647U_CAPI UBool U_EXPORT2
2649
2662U_CAPI UBool U_EXPORT2
2664
2683U_CAPI UBool U_EXPORT2
2685
2724U_CAPI int32_t U_EXPORT2
2726
2745U_CAPI int32_t U_EXPORT2
2747
2774U_CAPI int32_t U_EXPORT2
2776
2792U_CAPI const UCPMap * U_EXPORT2
2794
2817U_CAPI double U_EXPORT2
2819
2827#define U_NO_NUMERIC_VALUE ((double)-123456789.)
2828
2852U_CAPI UBool U_EXPORT2
2854
2879U_CAPI UBool U_EXPORT2
2881
2896U_CAPI UBool U_EXPORT2
2898
2917U_CAPI UBool U_EXPORT2
2919
2938U_CAPI UBool U_EXPORT2
2940
2959U_CAPI UBool U_EXPORT2
2961
2982U_CAPI UBool U_EXPORT2
2984
2998U_CAPI UBool U_EXPORT2
3000
3017U_CAPI UBool U_EXPORT2
3019
3045U_CAPI UBool U_EXPORT2
3047
3070U_CAPI UBool U_EXPORT2
3072
3091U_CAPI UBool U_EXPORT2
3093
3112U_CAPI UBool U_EXPORT2
3114
3152U_CAPI UBool U_EXPORT2
3154
3176U_CAPI UBool U_EXPORT2
3178
3191U_CAPI UBool U_EXPORT2
3193
3209U_CAPI UBool U_EXPORT2
3211
3229U_CAPI UBool U_EXPORT2
3231
3248U_CAPI UCharDirection U_EXPORT2
3250
3266U_CAPI UBool U_EXPORT2
3268
3288U_CAPI UChar32 U_EXPORT2
3290
3307U_CAPI UChar32 U_EXPORT2
3309
3321U_CAPI int8_t U_EXPORT2
3323
3337#define U_GET_GC_MASK(c) U_MASK(u_charType(c))
3338
3356typedef UBool U_CALLCONV
3357UCharEnumTypeRange(const void *context, UChar32 start, UChar32 limit, UCharCategory type);
3358
3378U_CAPI void U_EXPORT2
3379u_enumCharTypes(UCharEnumTypeRange *enumRange, const void *context);
3380
3381#if !UCONFIG_NO_NORMALIZATION
3382
3390U_CAPI uint8_t U_EXPORT2
3392
3393#endif
3394
3418U_CAPI int32_t U_EXPORT2
3420
3430U_CAPI UBlockCode U_EXPORT2
3432
3465U_CAPI int32_t U_EXPORT2
3467 char *buffer, int32_t bufferLength,
3468 UErrorCode *pErrorCode);
3469
3470#ifndef U_HIDE_DEPRECATED_API
3489U_DEPRECATED int32_t U_EXPORT2
3491 char *dest, int32_t destCapacity,
3492 UErrorCode *pErrorCode);
3493#endif /* U_HIDE_DEPRECATED_API */
3494
3515U_CAPI UChar32 U_EXPORT2
3517 const char *name,
3518 UErrorCode *pErrorCode);
3519
3537typedef UBool U_CALLCONV UEnumCharNamesFn(void *context,
3538 UChar32 code,
3539 UCharNameChoice nameChoice,
3540 const char *name,
3541 int32_t length);
3542
3564U_CAPI void U_EXPORT2
3566 UEnumCharNamesFn *fn,
3567 void *context,
3568 UCharNameChoice nameChoice,
3569 UErrorCode *pErrorCode);
3570
3602U_CAPI const char* U_EXPORT2
3604 UPropertyNameChoice nameChoice);
3605
3625U_CAPI UProperty U_EXPORT2
3626u_getPropertyEnum(const char* alias);
3627
3675U_CAPI const char* U_EXPORT2
3677 int32_t value,
3678 UPropertyNameChoice nameChoice);
3679
3711U_CAPI int32_t U_EXPORT2
3713 const char* alias);
3714
3732U_CAPI UBool U_EXPORT2
3734
3756U_CAPI UBool U_EXPORT2
3758
3779U_CAPI UBool U_EXPORT2
3781
3798U_CAPI UBool U_EXPORT2
3800
3819U_CAPI UBool U_EXPORT2
3821
3844U_CAPI UChar32 U_EXPORT2
3846
3869U_CAPI UChar32 U_EXPORT2
3871
3894U_CAPI UChar32 U_EXPORT2
3896
3919U_CAPI UChar32 U_EXPORT2
3920u_foldCase(UChar32 c, uint32_t options);
3921
3960U_CAPI int32_t U_EXPORT2
3961u_digit(UChar32 ch, int8_t radix);
3962
3991U_CAPI UChar32 U_EXPORT2
3992u_forDigit(int32_t digit, int8_t radix);
3993
4008U_CAPI void U_EXPORT2
4010
4022U_CAPI void U_EXPORT2
4024
4025#if !UCONFIG_NO_NORMALIZATION
4047U_CAPI int32_t U_EXPORT2
4048u_getFC_NFKC_Closure(UChar32 c, UChar *dest, int32_t destCapacity, UErrorCode *pErrorCode);
4049
4050#endif
4051
4052
4054
4055#endif /*_UCHAR*/
4056/*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:869
C API: Bit set option bit constants for various string and character processing functions.
U_CAPI UBool u_isupper(UChar32 c)
Determines whether the specified code point has the general category "Lu" (uppercase letter).
U_CAPI UBool u_isUAlphabetic(UChar32 c)
Check if a code point has the Alphabetic Unicode property.
UBlockCode
Constants for Unicode blocks, see the Unicode Data file Blocks.txt.
Definition uchar.h:1020
@ UBLOCK_NANDINAGARI
Definition uchar.h:1777
@ UBLOCK_MRO
Definition uchar.h:1648
@ UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS_EXTENDED
Definition uchar.h:1511
@ UBLOCK_COUNT
One more than the highest normal UBlockCode value.
Definition uchar.h:1817
@ UBLOCK_OPTICAL_CHARACTER_RECOGNITION
Definition uchar.h:1184
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_B
Definition uchar.h:1330
@ UBLOCK_INSCRIPTIONAL_PAHLAVI
Definition uchar.h:1545
@ UBLOCK_KHMER
Definition uchar.h:1139
@ UBLOCK_BHAIKSUKI
Definition uchar.h:1708
@ UBLOCK_DUPLOYAN
Definition uchar.h:1624
@ UBLOCK_MEDEFAIDRIN
Definition uchar.h:1764
@ UBLOCK_BALINESE
Definition uchar.h:1453
@ UBLOCK_HEBREW
Definition uchar.h:1064
@ UBLOCK_YIJING_HEXAGRAM_SYMBOLS
Definition uchar.h:1385
@ UBLOCK_SUPPLEMENTAL_SYMBOLS_AND_PICTOGRAPHS
Definition uchar.h:1699
@ UBLOCK_CYRILLIC
Definition uchar.h:1058
@ UBLOCK_SPECIALS
Definition uchar.h:1310
@ UBLOCK_HALFWIDTH_AND_FULLWIDTH_FORMS
Definition uchar.h:1313
@ UBLOCK_NEWA
Definition uchar.h:1720
@ UBLOCK_ARROWS
Definition uchar.h:1172
@ UBLOCK_CJK_SYMBOLS_AND_PUNCTUATION
Definition uchar.h:1217
@ UBLOCK_TAKRI
Definition uchar.h:1611
@ UBLOCK_BOX_DRAWING
Definition uchar.h:1190
@ UBLOCK_CURRENCY_SYMBOLS
Definition uchar.h:1157
@ UBLOCK_MISCELLANEOUS_SYMBOLS
Definition uchar.h:1199
@ UBLOCK_ANCIENT_GREEK_NUMBERS
Definition uchar.h:1410
@ UBLOCK_OLD_PERMIC
Definition uchar.h:1656
@ UBLOCK_CJK_STROKES
Definition uchar.h:1416
@ UBLOCK_PALMYRENE
Definition uchar.h:1662
@ UBLOCK_OGHAM
Definition uchar.h:1133
@ UBLOCK_SUTTON_SIGNWRITING
Definition uchar.h:1701
@ UBLOCK_ANATOLIAN_HIEROGLYPHS
Definition uchar.h:1685
@ UBLOCK_SYMBOLS_FOR_LEGACY_COMPUTING
Definition uchar.h:1804
@ UBLOCK_SUPPLEMENTAL_PUNCTUATION
Definition uchar.h:1440
@ UBLOCK_MEROITIC_HIEROGLYPHS
Definition uchar.h:1601
@ UBLOCK_EMOTICONS
Definition uchar.h:1580
@ UBLOCK_INDIC_SIYAQ_NUMBERS
Definition uchar.h:1758
@ UBLOCK_REJANG
Definition uchar.h:1488
@ UBLOCK_TAGALOG
Definition uchar.h:1346
@ UBLOCK_LISU
Definition uchar.h:1517
@ UBLOCK_COPTIC_EPACT_NUMBERS
Definition uchar.h:1620
@ UBLOCK_SUPERSCRIPTS_AND_SUBSCRIPTS
Definition uchar.h:1154
@ UBLOCK_TAGS
Definition uchar.h:1334
@ UBLOCK_MIAO
Definition uchar.h:1603
@ UBLOCK_TAMIL_SUPPLEMENT
Definition uchar.h:1787
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_C
Definition uchar.h:1559
@ UBLOCK_LIMBU
Definition uchar.h:1375
@ UBLOCK_LYDIAN
Definition uchar.h:1500
@ UBLOCK_NYIAKENG_PUACHUE_HMONG
Definition uchar.h:1779
@ UBLOCK_PHONETIC_EXTENSIONS_SUPPLEMENT
Definition uchar.h:1438
@ UBLOCK_TAI_THAM
Definition uchar.h:1513
@ UBLOCK_MAHJONG_TILES
Definition uchar.h:1502
@ UBLOCK_PLAYING_CARDS
Definition uchar.h:1576
@ UBLOCK_TRANSPORT_AND_MAP_SYMBOLS
Definition uchar.h:1582
@ UBLOCK_IDEOGRAPHIC_DESCRIPTION_CHARACTERS
Definition uchar.h:1214
@ UBLOCK_BASIC_LATIN
Definition uchar.h:1031
@ UBLOCK_GURMUKHI
Definition uchar.h:1082
@ UBLOCK_SYMBOLS_AND_PICTOGRAPHS_EXTENDED_A
Definition uchar.h:1785
@ UBLOCK_HATRAN
Definition uchar.h:1693
@ UBLOCK_PRIVATE_USE_AREA
Same as UBLOCK_PRIVATE_USE.
Definition uchar.h:1276
@ UBLOCK_ARMENIAN
Definition uchar.h:1061
@ UBLOCK_HANGUL_JAMO
Definition uchar.h:1121
@ UBLOCK_VERTICAL_FORMS
Definition uchar.h:1446
@ UBLOCK_SINHALA_ARCHAIC_NUMBERS
Definition uchar.h:1672
@ UBLOCK_SOGDIAN
Definition uchar.h:1768
@ UBLOCK_TIRHUTA
Definition uchar.h:1676
@ UBLOCK_ELBASAN
Definition uchar.h:1626
@ UBLOCK_MATHEMATICAL_ALPHANUMERIC_SYMBOLS
Definition uchar.h:1328
@ UBLOCK_KHITAN_SMALL_SCRIPT
Definition uchar.h:1800
@ UBLOCK_NUMBER_FORMS
Definition uchar.h:1169
@ UBLOCK_CHAM
Definition uchar.h:1490
@ UBLOCK_TANGUT
Definition uchar.h:1724
@ UBLOCK_TAMIL
Definition uchar.h:1091
@ UBLOCK_BLOCK_ELEMENTS
Definition uchar.h:1193
@ UBLOCK_ENCLOSED_ALPHANUMERIC_SUPPLEMENT
Definition uchar.h:1555
@ UBLOCK_CUNEIFORM_NUMBERS_AND_PUNCTUATION
Definition uchar.h:1465
@ UBLOCK_LEPCHA
Definition uchar.h:1474
@ UBLOCK_COMBINING_DIACRITICAL_MARKS_SUPPLEMENT
Definition uchar.h:1418
@ UBLOCK_VARIATION_SELECTORS_SUPPLEMENT
Definition uchar.h:1403
@ UBLOCK_DOMINO_TILES
Definition uchar.h:1504
@ UBLOCK_COMBINING_DIACRITICAL_MARKS_EXTENDED
Definition uchar.h:1622
@ UBLOCK_EGYPTIAN_HIEROGLYPHS
Definition uchar.h:1553
@ UBLOCK_IPA_EXTENSIONS
Definition uchar.h:1043
@ UBLOCK_TANGUT_COMPONENTS
Definition uchar.h:1726
@ UBLOCK_CHEROKEE_SUPPLEMENT
Definition uchar.h:1687
@ UBLOCK_ELYMAIC
Definition uchar.h:1775
@ UBLOCK_LATIN_EXTENDED_A
Definition uchar.h:1037
@ UBLOCK_HANUNOO
Definition uchar.h:1348
@ UBLOCK_LAO
Definition uchar.h:1109
@ UBLOCK_SUNDANESE_SUPPLEMENT
Definition uchar.h:1609
@ UBLOCK_CYRILLIC_EXTENDED_A
Definition uchar.h:1478
@ UBLOCK_HANGUL_JAMO_EXTENDED_B
Definition uchar.h:1535
@ UBLOCK_SAMARITAN
Definition uchar.h:1509
@ UBLOCK_SUPPLEMENTAL_ARROWS_A
Definition uchar.h:1356
@ UBLOCK_GLAGOLITIC
Definition uchar.h:1428
@ UBLOCK_INSCRIPTIONAL_PARTHIAN
Definition uchar.h:1543
@ UBLOCK_WARANG_CITI
Definition uchar.h:1678
@ UBLOCK_MONGOLIAN
Definition uchar.h:1142
@ UBLOCK_NKO
Definition uchar.h:1451
@ UBLOCK_ARABIC_EXTENDED_A
Definition uchar.h:1591
@ UBLOCK_LYCIAN
Definition uchar.h:1496
@ UBLOCK_CYRILLIC_EXTENDED_C
Definition uchar.h:1710
@ UBLOCK_DINGBATS
Definition uchar.h:1202
@ UBLOCK_OTTOMAN_SIYAQ_NUMBERS
Definition uchar.h:1781
@ UBLOCK_LINEAR_B_SYLLABARY
Definition uchar.h:1387
@ UBLOCK_ENCLOSED_CJK_LETTERS_AND_MONTHS
Definition uchar.h:1238
@ UBLOCK_CHAKMA
Definition uchar.h:1595
@ UBLOCK_SPACING_MODIFIER_LETTERS
Definition uchar.h:1046
@ UBLOCK_MEROITIC_CURSIVE
Definition uchar.h:1599
@ UBLOCK_CYRILLIC_EXTENDED_B
Definition uchar.h:1482
@ UBLOCK_GENERAL_PUNCTUATION
Definition uchar.h:1151
@ UBLOCK_MONGOLIAN_SUPPLEMENT
Definition uchar.h:1718
@ UBLOCK_MISCELLANEOUS_TECHNICAL
Definition uchar.h:1178
@ UBLOCK_TAI_XUAN_JING_SYMBOLS
Definition uchar.h:1401
@ UBLOCK_NABATAEAN
Definition uchar.h:1652
@ UBLOCK_TAGBANWA
Definition uchar.h:1352
@ UBLOCK_CUNEIFORM
Definition uchar.h:1463
@ UBLOCK_CONTROL_PICTURES
Definition uchar.h:1181
@ UBLOCK_GREEK
Unicode 3.2 renames this block to "Greek and Coptic".
Definition uchar.h:1055
@ UBLOCK_HIGH_SURROGATES
Definition uchar.h:1259
@ UBLOCK_COUNTING_ROD_NUMERALS
Definition uchar.h:1467
@ UBLOCK_AEGEAN_NUMBERS
Definition uchar.h:1391
@ UBLOCK_BENGALI
Definition uchar.h:1079
@ UBLOCK_LATIN_EXTENDED_E
Definition uchar.h:1636
@ UBLOCK_LINEAR_B_IDEOGRAMS
Definition uchar.h:1389
@ UBLOCK_PAU_CIN_HAU
Definition uchar.h:1664
@ UBLOCK_BUHID
Definition uchar.h:1350
@ UBLOCK_GUNJALA_GONDI
Definition uchar.h:1754
@ UBLOCK_RUMI_NUMERAL_SYMBOLS
Definition uchar.h:1549
@ UBLOCK_HIGH_PRIVATE_USE_SURROGATES
Definition uchar.h:1262
@ UBLOCK_MEETEI_MAYEK_EXTENSIONS
Definition uchar.h:1597
@ UBLOCK_COMMON_INDIC_NUMBER_FORMS
Definition uchar.h:1521
@ UBLOCK_ZANABAZAR_SQUARE
Definition uchar.h:1743
@ UBLOCK_SUNDANESE
Definition uchar.h:1472
@ UBLOCK_CHESS_SYMBOLS
Definition uchar.h:1748
@ UBLOCK_ENCLOSED_ALPHANUMERICS
Definition uchar.h:1187
@ UBLOCK_COMBINING_HALF_MARKS
Definition uchar.h:1298
@ UBLOCK_MANDAIC
Definition uchar.h:1564
@ UBLOCK_GLAGOLITIC_SUPPLEMENT
Definition uchar.h:1712
@ UBLOCK_OSMANYA
Definition uchar.h:1397
@ UBLOCK_DOGRA
Definition uchar.h:1750
@ UBLOCK_IMPERIAL_ARAMAIC
Definition uchar.h:1537
@ UBLOCK_BRAILLE_PATTERNS
Definition uchar.h:1205
@ UBLOCK_OLD_HUNGARIAN
Definition uchar.h:1697
@ UBLOCK_MATHEMATICAL_OPERATORS
Definition uchar.h:1175
@ UBLOCK_KHOJKI
Definition uchar.h:1632
@ UBLOCK_DIVES_AKURU
Definition uchar.h:1798
@ UBLOCK_ORIYA
Definition uchar.h:1088
@ UBLOCK_NO_BLOCK
New No_Block value in Unicode 4.
Definition uchar.h:1028
@ UBLOCK_YI_RADICALS
Definition uchar.h:1253
@ UBLOCK_BUGINESE
Definition uchar.h:1414
@ UBLOCK_TANGUT_SUPPLEMENT
Definition uchar.h:1806
@ UBLOCK_SMALL_FORM_VARIANTS
Definition uchar.h:1304
@ UBLOCK_OLD_SOGDIAN
Definition uchar.h:1766
@ UBLOCK_GEORGIAN_EXTENDED
Definition uchar.h:1752
@ UBLOCK_TIFINAGH
Definition uchar.h:1444
@ UBLOCK_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_B
Definition uchar.h:1360
@ UBLOCK_LATIN_EXTENDED_D
Definition uchar.h:1457
@ UBLOCK_LATIN_EXTENDED_ADDITIONAL
Definition uchar.h:1145
@ UBLOCK_MEETEI_MAYEK
Definition uchar.h:1533
@ UBLOCK_EGYPTIAN_HIEROGLYPH_FORMAT_CONTROLS
Definition uchar.h:1773
@ UBLOCK_MYANMAR
Definition uchar.h:1115
@ UBLOCK_OL_CHIKI
Definition uchar.h:1476
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_D
Definition uchar.h:1586
@ UBLOCK_SHORTHAND_FORMAT_CONTROLS
Definition uchar.h:1668
@ UBLOCK_COMBINING_MARKS_FOR_SYMBOLS
Unicode 3.2 renames this block to "Combining Diacritical Marks for Symbols".
Definition uchar.h:1163
@ UBLOCK_MISCELLANEOUS_SYMBOLS_AND_PICTOGRAPHS
Definition uchar.h:1578
@ UBLOCK_UNIFIED_CANADIAN_ABORIGINAL_SYLLABICS
Definition uchar.h:1130
@ UBLOCK_BOPOMOFO
Definition uchar.h:1226
@ UBLOCK_KATAKANA_PHONETIC_EXTENSIONS
Definition uchar.h:1364
@ UBLOCK_MARCHEN
Definition uchar.h:1716
@ UBLOCK_MODI
Definition uchar.h:1646
@ UBLOCK_YEZIDI
Definition uchar.h:1808
@ UBLOCK_SUPPLEMENTAL_MATHEMATICAL_OPERATORS
Definition uchar.h:1362
@ UBLOCK_MULTANI
Definition uchar.h:1695
@ UBLOCK_ETHIOPIC_EXTENDED
Definition uchar.h:1422
@ UBLOCK_AVESTAN
Definition uchar.h:1541
@ UBLOCK_PRIVATE_USE
Same as UBLOCK_PRIVATE_USE_AREA.
Definition uchar.h:1286
@ UBLOCK_GEORGIAN_SUPPLEMENT
Definition uchar.h:1426
@ UBLOCK_COPTIC
Definition uchar.h:1420
@ UBLOCK_HANGUL_COMPATIBILITY_JAMO
Definition uchar.h:1229
@ UBLOCK_LOW_SURROGATES
Definition uchar.h:1265
@ UBLOCK_SOYOMBO
Definition uchar.h:1739
@ UBLOCK_ARABIC_SUPPLEMENT
Definition uchar.h:1412
@ UBLOCK_HANGUL_SYLLABLES
Definition uchar.h:1256
@ UBLOCK_MISCELLANEOUS_SYMBOLS_AND_ARROWS
Definition uchar.h:1383
@ UBLOCK_CJK_COMPATIBILITY
Definition uchar.h:1241
@ UBLOCK_CARIAN
Definition uchar.h:1498
@ UBLOCK_HANIFI_ROHINGYA
Definition uchar.h:1756
@ UBLOCK_TIBETAN
Definition uchar.h:1112
@ UBLOCK_BASSA_VAH
Definition uchar.h:1616
@ UBLOCK_OLD_TURKIC
Definition uchar.h:1547
@ UBLOCK_CJK_RADICALS_SUPPLEMENT
Definition uchar.h:1208
@ UBLOCK_ADLAM
Definition uchar.h:1706
@ UBLOCK_MASARAM_GONDI
Definition uchar.h:1735
@ UBLOCK_ARABIC_PRESENTATION_FORMS_B
Definition uchar.h:1307
@ UBLOCK_RUNIC
Definition uchar.h:1136
@ UBLOCK_ARABIC_PRESENTATION_FORMS_A
Definition uchar.h:1295
@ UBLOCK_ENCLOSED_IDEOGRAPHIC_SUPPLEMENT
Definition uchar.h:1557
@ UBLOCK_CHORASMIAN
Definition uchar.h:1794
@ UBLOCK_BOPOMOFO_EXTENDED
Definition uchar.h:1235
@ UBLOCK_IDEOGRAPHIC_SYMBOLS_AND_PUNCTUATION
Definition uchar.h:1714
@ UBLOCK_KANGXI_RADICALS
Definition uchar.h:1211
@ UBLOCK_SORA_SOMPENG
Definition uchar.h:1607
@ UBLOCK_KANA_SUPPLEMENT
Definition uchar.h:1574
@ UBLOCK_CHEROKEE
Definition uchar.h:1127
@ UBLOCK_BRAHMI
Definition uchar.h:1570
@ UBLOCK_SYLOTI_NAGRI
Definition uchar.h:1442
@ UBLOCK_CYPRIOT_SYLLABARY
Definition uchar.h:1399
@ UBLOCK_ETHIOPIC_SUPPLEMENT
Definition uchar.h:1424
@ UBLOCK_KHAROSHTHI
Definition uchar.h:1430
@ UBLOCK_OLD_ITALIC
Definition uchar.h:1318
@ UBLOCK_OLD_SOUTH_ARABIAN
Definition uchar.h:1539
@ UBLOCK_SUPPLEMENTARY_PRIVATE_USE_AREA_B
Definition uchar.h:1370
@ UBLOCK_MALAYALAM
Definition uchar.h:1100
@ UBLOCK_KHMER_SYMBOLS
Definition uchar.h:1379
@ UBLOCK_JAVANESE
Definition uchar.h:1527
@ UBLOCK_BAMUM_SUPPLEMENT
Definition uchar.h:1572
@ UBLOCK_CYRILLIC_SUPPLEMENT
Definition uchar.h:1339
@ UBLOCK_MYANMAR_EXTENDED_B
Definition uchar.h:1650
@ UBLOCK_ANCIENT_GREEK_MUSICAL_NOTATION
Definition uchar.h:1408
@ UBLOCK_BATAK
Definition uchar.h:1566
@ UBLOCK_SYRIAC_SUPPLEMENT
Definition uchar.h:1741
@ UBLOCK_PAHAWH_HMONG
Definition uchar.h:1660
@ UBLOCK_ORNAMENTAL_DINGBATS
Definition uchar.h:1658
@ UBLOCK_SINHALA
Definition uchar.h:1103
@ UBLOCK_AHOM
Definition uchar.h:1683
@ UBLOCK_NEW_TAI_LUE
Definition uchar.h:1434
@ UBLOCK_SIDDHAM
Definition uchar.h:1670
@ UBLOCK_OLD_NORTH_ARABIAN
Definition uchar.h:1654
@ UBLOCK_YI_SYLLABLES
Definition uchar.h:1250
@ UBLOCK_TELUGU
Definition uchar.h:1094
@ UBLOCK_DEVANAGARI_EXTENDED
Definition uchar.h:1523
@ UBLOCK_SHARADA
Definition uchar.h:1605
@ UBLOCK_SUPPLEMENTARY_PRIVATE_USE_AREA_A
Definition uchar.h:1368
@ UBLOCK_DESERET
Definition uchar.h:1322
@ UBLOCK_ARABIC_MATHEMATICAL_ALPHABETIC_SYMBOLS
Definition uchar.h:1593
@ UBLOCK_SAURASHTRA
Definition uchar.h:1484
@ UBLOCK_KANBUN
Definition uchar.h:1232
@ UBLOCK_HIRAGANA
Definition uchar.h:1220
@ UBLOCK_KANNADA
Definition uchar.h:1097
@ UBLOCK_SUPPLEMENTAL_ARROWS_C
Definition uchar.h:1674
@ UBLOCK_GEORGIAN
Definition uchar.h:1118
@ UBLOCK_DEVANAGARI
Definition uchar.h:1076
@ UBLOCK_LISU_SUPPLEMENT
Definition uchar.h:1802
@ UBLOCK_KATAKANA
Definition uchar.h:1223
@ UBLOCK_TAI_VIET
Definition uchar.h:1531
@ UBLOCK_LATIN_EXTENDED_B
Definition uchar.h:1040
@ UBLOCK_THAANA
Definition uchar.h:1073
@ UBLOCK_MODIFIER_TONE_LETTERS
Definition uchar.h:1432
@ UBLOCK_KHUDAWADI
Definition uchar.h:1634
@ UBLOCK_LINEAR_A
Definition uchar.h:1638
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS
Definition uchar.h:1247
@ UBLOCK_GRANTHA
Definition uchar.h:1630
@ UBLOCK_ETHIOPIC
Definition uchar.h:1124
@ UBLOCK_SYRIAC
Definition uchar.h:1070
@ UBLOCK_GREEK_EXTENDED
Definition uchar.h:1148
@ UBLOCK_CJK_COMPATIBILITY_FORMS
Definition uchar.h:1301
@ UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS
Definition uchar.h:1289
@ UBLOCK_MAYAN_NUMERALS
Definition uchar.h:1762
@ UBLOCK_KAYAH_LI
Definition uchar.h:1486
@ UBLOCK_VEDIC_EXTENSIONS
Definition uchar.h:1515
@ UBLOCK_PHAISTOS_DISC
Definition uchar.h:1494
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_A
Definition uchar.h:1244
@ UBLOCK_LATIN_1_SUPPLEMENT
Definition uchar.h:1034
@ UBLOCK_PHOENICIAN
Definition uchar.h:1461
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_G
Definition uchar.h:1796
@ UBLOCK_MISCELLANEOUS_MATHEMATICAL_SYMBOLS_A
Definition uchar.h:1354
@ UBLOCK_CAUCASIAN_ALBANIAN
Definition uchar.h:1618
@ UBLOCK_ALCHEMICAL_SYMBOLS
Definition uchar.h:1584
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_F
Definition uchar.h:1731
@ UBLOCK_MYANMAR_EXTENDED_A
Definition uchar.h:1529
@ UBLOCK_EARLY_DYNASTIC_CUNEIFORM
Definition uchar.h:1691
@ UBLOCK_MENDE_KIKAKUI
Definition uchar.h:1644
@ UBLOCK_VAI
Definition uchar.h:1480
@ UBLOCK_PHONETIC_EXTENSIONS
Definition uchar.h:1381
@ UBLOCK_PHAGS_PA
Definition uchar.h:1459
@ UBLOCK_OLD_PERSIAN
Definition uchar.h:1436
@ UBLOCK_KAITHI
Definition uchar.h:1551
@ UBLOCK_GEOMETRIC_SHAPES
Definition uchar.h:1196
@ UBLOCK_LATIN_EXTENDED_C
Definition uchar.h:1455
@ UBLOCK_SUPPLEMENTAL_ARROWS_B
Definition uchar.h:1358
@ UBLOCK_MAHAJANI
Definition uchar.h:1640
@ UBLOCK_OSAGE
Definition uchar.h:1722
@ UBLOCK_INVALID_CODE
Definition uchar.h:1821
@ UBLOCK_TAI_LE
Definition uchar.h:1377
@ UBLOCK_MAKASAR
Definition uchar.h:1760
@ UBLOCK_GOTHIC
Definition uchar.h:1320
@ UBLOCK_ETHIOPIC_EXTENDED_A
Definition uchar.h:1568
@ UBLOCK_GEOMETRIC_SHAPES_EXTENDED
Definition uchar.h:1628
@ UBLOCK_MANICHAEAN
Definition uchar.h:1642
@ UBLOCK_ALPHABETIC_PRESENTATION_FORMS
Definition uchar.h:1292
@ UBLOCK_MUSICAL_SYMBOLS
Definition uchar.h:1326
@ UBLOCK_LETTERLIKE_SYMBOLS
Definition uchar.h:1166
@ UBLOCK_ARABIC
Definition uchar.h:1067
@ UBLOCK_NUSHU
Definition uchar.h:1737
@ UBLOCK_CYRILLIC_SUPPLEMENTARY
Unicode 4.0.1 renames the "Cyrillic Supplementary" block to "Cyrillic Supplement".
Definition uchar.h:1344
@ UBLOCK_HANGUL_JAMO_EXTENDED_A
Definition uchar.h:1525
@ UBLOCK_BYZANTINE_MUSICAL_SYMBOLS
Definition uchar.h:1324
@ UBLOCK_ANCIENT_SYMBOLS
Definition uchar.h:1492
@ UBLOCK_UGARITIC
Definition uchar.h:1393
@ UBLOCK_SMALL_KANA_EXTENSION
Definition uchar.h:1783
@ UBLOCK_GUJARATI
Definition uchar.h:1085
@ UBLOCK_CJK_COMPATIBILITY_IDEOGRAPHS_SUPPLEMENT
Definition uchar.h:1332
@ UBLOCK_COMBINING_DIACRITICAL_MARKS
Definition uchar.h:1049
@ UBLOCK_PSALTER_PAHLAVI
Definition uchar.h:1666
@ UBLOCK_THAI
Definition uchar.h:1106
@ UBLOCK_CJK_UNIFIED_IDEOGRAPHS_EXTENSION_E
Definition uchar.h:1689
@ UBLOCK_KANA_EXTENDED_A
Definition uchar.h:1733
@ UBLOCK_VARIATION_SELECTORS
Definition uchar.h:1366
@ UBLOCK_BAMUM
Definition uchar.h:1519
@ UBLOCK_WANCHO
Definition uchar.h:1789
@ UBLOCK_SHAVIAN
Definition uchar.h:1395
U_CAPI UBool u_isblank(UChar32 c)
Determines whether the specified code point is a "blank" or "horizontal space", a character that visi...
U_CAPI UChar32 u_charFromName(UCharNameChoice nameChoice, const char *name, UErrorCode *pErrorCode)
Find a Unicode character by its name and return its code point value.
UCharNameChoice
Selector constants for u_charName().
Definition uchar.h:1869
@ U_CHAR_NAME_CHOICE_COUNT
One more than the highest normal UCharNameChoice value.
Definition uchar.h:1889
@ U_UNICODE_10_CHAR_NAME
The Unicode_1_Name property value which is of little practical value.
Definition uchar.h:1878
@ U_CHAR_NAME_ALIAS
Corrected name from NameAliases.txt.
Definition uchar.h:1883
@ U_EXTENDED_CHAR_NAME
Standard or synthetic character name.
Definition uchar.h:1881
@ U_UNICODE_CHAR_NAME
Unicode character name (Name property).
Definition uchar.h:1871
U_CAPI UBool u_isUWhiteSpace(UChar32 c)
Check if a code point has the White_Space Unicode property.
U_CAPI int32_t u_charName(UChar32 code, UCharNameChoice nameChoice, char *buffer, int32_t bufferLength, UErrorCode *pErrorCode)
Retrieve the name of a Unicode character.
U_CAPI int32_t u_getIntPropertyValue(UChar32 c, UProperty which)
Get the property value for an enumerated or integer Unicode property for a code point.
U_CAPI UBlockCode ublock_getCode(UChar32 c)
Returns the Unicode allocation block that contains the character.
U_CAPI UBool u_hasBinaryProperty(UChar32 c, UProperty which)
Check a binary Unicode property for a code point.
U_CAPI double u_getNumericValue(UChar32 c)
Get the numeric value for a Unicode code point as defined in the Unicode Character Database.
U_CAPI UChar32 u_toupper(UChar32 c)
The given character is mapped to its uppercase equivalent according to UnicodeData....
U_CAPI UProperty u_getPropertyEnum(const char *alias)
Return the UProperty enum for a given property name, as specified in the Unicode database file Proper...
UJoiningType
Joining Type constants.
Definition uchar.h:1966
@ U_JT_COUNT
One more than the highest normal UJoiningType value.
Definition uchar.h:1986
U_CAPI UBool u_isbase(UChar32 c)
Non-standard: Determines whether the specified code point is a base character.
U_CAPI UBool u_isdigit(UChar32 c)
Determines whether the specified code point is a digit character according to Java.
U_CAPI UBool u_isMirrored(UChar32 c)
Determines whether the code point has the Bidi_Mirrored property.
U_CAPI void u_charAge(UChar32 c, UVersionInfo versionArray)
Get the "age" of the code point.
U_CAPI UBool u_isspace(UChar32 c)
Determines if the specified character is a space character or not.
U_CAPI int32_t u_getIntPropertyMaxValue(UProperty which)
Get the maximum value for an enumerated/integer/binary Unicode property.
UIndicPositionalCategory
Indic Positional Category constants.
Definition uchar.h:2421
@ U_INPC_BOTTOM
Definition uchar.h:2431
@ U_INPC_VISUAL_ORDER_LEFT
Definition uchar.h:2457
@ U_INPC_TOP_AND_BOTTOM_AND_RIGHT
Definition uchar.h:2449
@ U_INPC_TOP_AND_BOTTOM_AND_LEFT
Definition uchar.h:2459
@ U_INPC_TOP_AND_RIGHT
Definition uchar.h:2455
@ U_INPC_BOTTOM_AND_LEFT
Definition uchar.h:2433
@ U_INPC_LEFT_AND_RIGHT
Definition uchar.h:2439
@ U_INPC_RIGHT
Definition uchar.h:2443
@ U_INPC_TOP_AND_LEFT_AND_RIGHT
Definition uchar.h:2453
@ U_INPC_LEFT
Definition uchar.h:2437
@ U_INPC_NA
Definition uchar.h:2429
@ U_INPC_TOP
Definition uchar.h:2445
@ U_INPC_TOP_AND_LEFT
Definition uchar.h:2451
@ U_INPC_OVERSTRUCK
Definition uchar.h:2441
@ U_INPC_TOP_AND_BOTTOM
Definition uchar.h:2447
@ U_INPC_BOTTOM_AND_RIGHT
Definition uchar.h:2435
U_CAPI void u_getUnicodeVersion(UVersionInfo versionArray)
Gets the Unicode version information.
UCharDirection
This specifies the language directional property of a character set.
Definition uchar.h:921
@ U_SEGMENT_SEPARATOR
S.
Definition uchar.h:946
@ U_EUROPEAN_NUMBER_TERMINATOR
ET.
Definition uchar.h:938
@ U_BOUNDARY_NEUTRAL
BN.
Definition uchar.h:966
@ U_RIGHT_TO_LEFT_ARABIC
AL.
Definition uchar.h:956
@ U_RIGHT_TO_LEFT
R.
Definition uchar.h:932
@ U_POP_DIRECTIONAL_ISOLATE
PDI.
Definition uchar.h:974
@ U_COMMON_NUMBER_SEPARATOR
CS.
Definition uchar.h:942
@ U_LEFT_TO_RIGHT
L.
Definition uchar.h:930
@ U_DIR_NON_SPACING_MARK
NSM.
Definition uchar.h:964
@ U_FIRST_STRONG_ISOLATE
FSI.
Definition uchar.h:968
@ U_ARABIC_NUMBER
AN.
Definition uchar.h:940
@ U_POP_DIRECTIONAL_FORMAT
PDF.
Definition uchar.h:962
@ U_OTHER_NEUTRAL
ON.
Definition uchar.h:950
@ U_CHAR_DIRECTION_COUNT
One more than the highest UCharDirection value.
Definition uchar.h:982
@ U_WHITE_SPACE_NEUTRAL
WS.
Definition uchar.h:948
@ U_RIGHT_TO_LEFT_OVERRIDE
RLO.
Definition uchar.h:960
@ U_RIGHT_TO_LEFT_EMBEDDING
RLE.
Definition uchar.h:958
@ U_EUROPEAN_NUMBER_SEPARATOR
ES.
Definition uchar.h:936
@ U_LEFT_TO_RIGHT_ISOLATE
LRI.
Definition uchar.h:970
@ U_LEFT_TO_RIGHT_OVERRIDE
LRO.
Definition uchar.h:954
@ U_EUROPEAN_NUMBER
EN.
Definition uchar.h:934
@ U_BLOCK_SEPARATOR
B.
Definition uchar.h:944
@ U_LEFT_TO_RIGHT_EMBEDDING
LRE.
Definition uchar.h:952
@ U_RIGHT_TO_LEFT_ISOLATE
RLI.
Definition uchar.h:972
UPropertyNameChoice
Selector constants for u_getPropertyName() and u_getPropertyValueName().
Definition uchar.h:1906
@ U_PROPERTY_NAME_CHOICE_COUNT
One more than the highest normal UPropertyNameChoice value.
Definition uchar.h:1914
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:3537
U_CAPI UBool u_isUUppercase(UChar32 c)
Check if a code point has the Uppercase Unicode property.
U_CAPI int8_t u_charType(UChar32 c)
Returns the general category value for the code point.
U_CAPI UChar32 u_forDigit(int32_t digit, int8_t radix)
Determines the character representation for a specific digit in the specified radix.
U_CAPI UBool u_isprint(UChar32 c)
Determines whether the specified code point is a printable character.
ULineBreak
Line Break constants.
Definition uchar.h:2280
@ U_LB_E_MODIFIER
Definition uchar.h:2343
@ U_LB_WORD_JOINER
Definition uchar.h:2321
@ U_LB_H3
Definition uchar.h:2325
@ U_LB_H2
Definition uchar.h:2323
@ U_LB_CONDITIONAL_JAPANESE_STARTER
Definition uchar.h:2335
@ U_LB_NEXT_LINE
Definition uchar.h:2319
@ U_LB_INSEPARABLE
Renamed from the misspelled "inseperable" in Unicode 4.0.1/ICU 3.0.
Definition uchar.h:2303
@ U_LB_E_BASE
Definition uchar.h:2341
@ U_LB_JV
Definition uchar.h:2331
@ U_LB_JL
Definition uchar.h:2327
@ U_LB_CLOSE_PARENTHESIS
Definition uchar.h:2333
@ U_LB_ZWJ
Definition uchar.h:2345
@ U_LB_COUNT
One more than the highest normal ULineBreak value.
Definition uchar.h:2353
@ U_LB_REGIONAL_INDICATOR
Definition uchar.h:2339
@ U_LB_HEBREW_LETTER
Definition uchar.h:2337
@ U_LB_JT
Definition uchar.h:2329
int32_t u_getISOComment(UChar32 c, char *dest, int32_t destCapacity, UErrorCode *pErrorCode)
Returns an empty string.
U_CAPI UBool u_islower(UChar32 c)
Determines whether the specified code point has the general category "Ll" (lowercase letter).
U_CAPI UBool u_isISOControl(UChar32 c)
Determines whether the specified code point is an ISO control code.
UCharCategory
Data for enumerated Unicode general category types.
Definition uchar.h:725
@ U_FORMAT_CHAR
Cf.
Definition uchar.h:768
@ U_SPACE_SEPARATOR
Zs.
Definition uchar.h:760
@ U_MODIFIER_SYMBOL
Sk.
Definition uchar.h:788
@ U_GENERAL_OTHER_TYPES
Cn "Other, Not Assigned (no characters in [UnicodeData.txt] have this property)" (same as U_UNASSIGNE...
Definition uchar.h:736
@ U_TITLECASE_LETTER
Lt.
Definition uchar.h:742
@ U_PRIVATE_USE_CHAR
Co.
Definition uchar.h:770
@ U_OTHER_SYMBOL
So.
Definition uchar.h:790
@ U_UPPERCASE_LETTER
Lu.
Definition uchar.h:738
@ U_MODIFIER_LETTER
Lm.
Definition uchar.h:744
@ U_PARAGRAPH_SEPARATOR
Zp.
Definition uchar.h:764
@ U_OTHER_PUNCTUATION
Po.
Definition uchar.h:782
@ U_ENCLOSING_MARK
Me.
Definition uchar.h:750
@ U_INITIAL_PUNCTUATION
Pi.
Definition uchar.h:792
@ U_UNASSIGNED
Non-category for unassigned and non-character code points.
Definition uchar.h:734
@ U_CURRENCY_SYMBOL
Sc.
Definition uchar.h:786
@ U_COMBINING_SPACING_MARK
Mc.
Definition uchar.h:752
@ U_CONTROL_CHAR
Cc.
Definition uchar.h:766
@ U_OTHER_LETTER
Lo.
Definition uchar.h:746
@ U_NON_SPACING_MARK
Mn.
Definition uchar.h:748
@ U_START_PUNCTUATION
Ps.
Definition uchar.h:776
@ U_CONNECTOR_PUNCTUATION
Pc.
Definition uchar.h:780
@ U_END_PUNCTUATION
Pe.
Definition uchar.h:778
@ U_OTHER_NUMBER
No.
Definition uchar.h:758
@ U_LINE_SEPARATOR
Zl.
Definition uchar.h:762
@ U_DASH_PUNCTUATION
Pd.
Definition uchar.h:774
@ U_MATH_SYMBOL
Sm.
Definition uchar.h:784
@ U_CHAR_CATEGORY_COUNT
One higher than the last enum UCharCategory constant.
Definition uchar.h:802
@ U_DECIMAL_DIGIT_NUMBER
Nd.
Definition uchar.h:754
@ U_LOWERCASE_LETTER
Ll.
Definition uchar.h:740
@ U_FINAL_PUNCTUATION
Pf.
Definition uchar.h:794
@ U_LETTER_NUMBER
Nl.
Definition uchar.h:756
@ U_SURROGATE
Cs.
Definition uchar.h:772
U_CAPI UBool u_isWhitespace(UChar32 c)
Determines if the specified code point is a whitespace character according to Java/ICU.
UVerticalOrientation
Vertical Orientation constants.
Definition uchar.h:2555
@ U_VO_UPRIGHT
Definition uchar.h:2569
@ U_VO_TRANSFORMED_UPRIGHT
Definition uchar.h:2567
@ U_VO_ROTATED
Definition uchar.h:2563
@ U_VO_TRANSFORMED_ROTATED
Definition uchar.h:2565
U_CAPI UBool u_isdefined(UChar32 c)
Determines whether the specified code point is "defined", which usually means that it is assigned a c...
UJoiningGroup
Joining Group constants.
Definition uchar.h:1996
@ U_JG_FE
Definition uchar.h:2055
@ U_JG_BURUSHASKI_YEH_BARREE
Definition uchar.h:2058
@ U_JG_MANICHAEAN_KAPH
Definition uchar.h:2071
@ U_JG_MANICHAEAN_SAMEKH
Definition uchar.h:2080
@ U_JG_MANICHAEAN_ZAYIN
Definition uchar.h:2088
@ U_JG_MALAYALAM_TTA
Definition uchar.h:2104
@ U_JG_MANICHAEAN_AYIN
Definition uchar.h:2063
@ U_JG_MANICHAEAN_ALEPH
Definition uchar.h:2062
@ U_JG_FARSI_YEH
Definition uchar.h:2059
@ U_JG_MANICHAEAN_DALETH
Definition uchar.h:2065
@ U_JG_MANICHAEAN_FIVE
Definition uchar.h:2067
@ U_JG_MANICHAEAN_SADHE
Definition uchar.h:2079
@ U_JG_MANICHAEAN_TAW
Definition uchar.h:2081
@ U_JG_MALAYALAM_LLLA
Definition uchar.h:2097
@ U_JG_MALAYALAM_NNNA
Definition uchar.h:2100
@ U_JG_MANICHAEAN_ONE
Definition uchar.h:2075
@ U_JG_MALAYALAM_LLA
Definition uchar.h:2096
@ U_JG_AFRICAN_FEH
Definition uchar.h:2090
@ U_JG_HANIFI_ROHINGYA_PA
Definition uchar.h:2107
@ U_JG_MALAYALAM_BHA
Definition uchar.h:2094
@ U_JG_MANICHAEAN_TWENTY
Definition uchar.h:2085
@ U_JG_MANICHAEAN_THAMEDH
Definition uchar.h:2084
@ U_JG_MANICHAEAN_PE
Definition uchar.h:2076
@ U_JG_ZHAIN
Definition uchar.h:2057
@ U_JG_MANICHAEAN_TETH
Definition uchar.h:2083
@ U_JG_MANICHAEAN_BETH
Definition uchar.h:2064
@ U_JG_COUNT
One more than the highest normal UJoiningGroup value.
Definition uchar.h:2116
@ U_JG_MANICHAEAN_TEN
Definition uchar.h:2082
@ U_JG_MANICHAEAN_GIMEL
Definition uchar.h:2068
@ U_JG_TEH_MARBUTA_GOAL
Definition uchar.h:2017
@ U_JG_AFRICAN_NOON
Definition uchar.h:2091
@ U_JG_MALAYALAM_NGA
Definition uchar.h:2098
@ U_JG_MANICHAEAN_MEM
Definition uchar.h:2073
@ U_JG_KHAPH
Definition uchar.h:2056
@ U_JG_MALAYALAM_RA
Definition uchar.h:2102
@ U_JG_MALAYALAM_NNA
Definition uchar.h:2099
@ U_JG_MALAYALAM_JA
Definition uchar.h:2095
@ U_JG_MALAYALAM_NYA
Definition uchar.h:2101
@ U_JG_MALAYALAM_SSA
Definition uchar.h:2103
@ U_JG_MANICHAEAN_WAW
Definition uchar.h:2086
@ U_JG_AFRICAN_QAF
Definition uchar.h:2092
@ U_JG_MANICHAEAN_DHAMEDH
Definition uchar.h:2066
@ U_JG_STRAIGHT_WAW
Definition uchar.h:2089
@ U_JG_ROHINGYA_YEH
Definition uchar.h:2061
@ U_JG_MANICHAEAN_HETH
Definition uchar.h:2069
@ U_JG_MANICHAEAN_LAMEDH
Definition uchar.h:2072
@ U_JG_MANICHAEAN_HUNDRED
Definition uchar.h:2070
@ U_JG_HANIFI_ROHINGYA_KINNA_YA
Definition uchar.h:2106
@ U_JG_MANICHAEAN_NUN
Definition uchar.h:2074
@ U_JG_NYA
Definition uchar.h:2060
@ U_JG_MANICHAEAN_YODH
Definition uchar.h:2087
@ U_JG_MANICHAEAN_RESH
Definition uchar.h:2078
@ U_JG_MANICHAEAN_QOPH
Definition uchar.h:2077
UHangulSyllableType
Hangul Syllable Type constants.
Definition uchar.h:2391
@ U_HST_COUNT
One more than the highest normal UHangulSyllableType value.
Definition uchar.h:2411
U_CAPI UChar32 u_getBidiPairedBracket(UChar32 c)
Maps the specified character to its paired bracket character.
U_CAPI UBool u_isIDStart(UChar32 c)
Determines if the specified character is permissible as the first character in an identifier accordin...
USentenceBreak
Sentence Break constants.
Definition uchar.h:2241
@ U_SB_COUNT
One more than the highest normal USentenceBreak value.
Definition uchar.h:2270
U_CAPI 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...
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:3357
UEastAsianWidth
East Asian Width constants.
Definition uchar.h:1834
@ U_EA_COUNT
One more than the highest normal UEastAsianWidth value.
Definition uchar.h:1854
U_CAPI UChar32 u_totitle(UChar32 c)
The given character is mapped to its titlecase equivalent according to UnicodeData....
U_CAPI UBool u_isULowercase(UChar32 c)
Check if a code point has the Lowercase Unicode property.
U_CAPI const UCPMap * u_getIntPropertyMap(UProperty property, UErrorCode *pErrorCode)
Returns an immutable UCPMap for an enumerated/catalog/int-valued property.
U_CAPI UBool u_isJavaIDPart(UChar32 c)
Determines if the specified character is permissible in a Java identifier.
U_CAPI UCharDirection u_charDirection(UChar32 c)
Returns the bidirectional category value for the code point, which is used in the Unicode bidirection...
U_CAPI UBool u_istitle(UChar32 c)
Determines whether the specified code point is a titlecase letter.
U_CAPI UBool u_iscntrl(UChar32 c)
Determines whether the specified code point is a control character (as defined by this function).
U_CAPI 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...
UGraphemeClusterBreak
Grapheme Cluster Break constants.
Definition uchar.h:2126
@ U_GCB_SPACING_MARK
Definition uchar.h:2144
@ U_GCB_E_BASE
Definition uchar.h:2150
@ U_GCB_REGIONAL_INDICATOR
Definition uchar.h:2148
@ U_GCB_GLUE_AFTER_ZWJ
Definition uchar.h:2156
@ U_GCB_ZWJ
Definition uchar.h:2158
@ U_GCB_PREPEND
Definition uchar.h:2146
@ U_GCB_COUNT
One more than the highest normal UGraphemeClusterBreak value.
Definition uchar.h:2167
@ U_GCB_E_MODIFIER
Definition uchar.h:2154
@ U_GCB_E_BASE_GAZ
Definition uchar.h:2152
U_CAPI const USet * u_getBinaryPropertySet(UProperty property, UErrorCode *pErrorCode)
Returns a frozen USet for a binary property.
U_CAPI uint8_t u_getCombiningClass(UChar32 c)
Returns the combining class of the code point as specified in UnicodeData.txt.
U_CAPI void u_enumCharTypes(UCharEnumTypeRange *enumRange, const void *context)
Enumerate efficiently all code points with their Unicode general categories.
U_CAPI UBool u_isxdigit(UChar32 c)
Determines whether the specified code point is a hexadecimal digit.
U_CAPI 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,...
U_CAPI UChar32 u_charMirror(UChar32 c)
Maps the specified character to a "mirror-image" character.
U_CAPI UBool u_isJavaSpaceChar(UChar32 c)
Determine if the specified code point is a space character according to Java.
U_CAPI UBool u_isIDPart(UChar32 c)
Determines if the specified character is permissible in an identifier according to Java.
U_CAPI UChar32 u_foldCase(UChar32 c, uint32_t options)
The given character is mapped to its case folding equivalent according to UnicodeData....
U_CAPI UBool u_isgraph(UChar32 c)
Determines whether the specified code point is a "graphic" character (printable, excluding spaces).
U_CAPI int32_t u_charDigitValue(UChar32 c)
Returns the decimal digit value of a decimal digit character.
U_CAPI UBool u_isIDIgnorable(UChar32 c)
Determines if the specified character should be regarded as an ignorable character in an identifier,...
U_CAPI UBool u_ispunct(UChar32 c)
Determines whether the specified code point is a punctuation character.
UNumericType
Numeric Type constants.
Definition uchar.h:2363
@ U_NT_COUNT
One more than the highest normal UNumericType value.
Definition uchar.h:2381
UDecompositionType
Decomposition Type constants.
Definition uchar.h:1924
@ U_DT_COUNT
One more than the highest normal UDecompositionType value.
Definition uchar.h:1956
U_CAPI int32_t u_digit(UChar32 ch, int8_t radix)
Returns the decimal digit value of the code point in the specified radix.
UProperty
Selection constants for Unicode properties.
Definition uchar.h:195
@ UCHAR_GRAPHEME_CLUSTER_BREAK
Enumerated property Grapheme_Cluster_Break (new in Unicode 4.1).
Definition uchar.h:563
@ UCHAR_BIDI_PAIRED_BRACKET
String property Bidi_Paired_Bracket (new in Unicode 6.3).
Definition uchar.h:690
@ UCHAR_ALPHABETIC
Binary property Alphabetic.
Definition uchar.h:209
@ UCHAR_POSIX_GRAPH
Binary property graph (a C/POSIX character class).
Definition uchar.h:407
@ UCHAR_BLOCK
Enumerated property Block.
Definition uchar.h:501
@ UCHAR_INVALID_CODE
Represents a nonexistent or invalid property or property value.
Definition uchar.h:716
@ UCHAR_SEGMENT_STARTER
Binary Property Segment_Starter.
Definition uchar.h:382
@ UCHAR_PREPENDED_CONCATENATION_MARK
Binary property Prepended_Concatenation_Mark.
Definition uchar.h:478
@ UCHAR_REGIONAL_INDICATOR
Binary property Regional_Indicator.
Definition uchar.h:473
@ UCHAR_OTHER_PROPERTY_START
First constant for Unicode properties with unusual value types.
Definition uchar.h:706
@ UCHAR_S_TERM
Binary property STerm (new in Unicode 4.0.1).
Definition uchar.h:337
@ UCHAR_WHITE_SPACE
Binary property White_Space.
Definition uchar.h:321
@ UCHAR_CANONICAL_COMBINING_CLASS
Enumerated property Canonical_Combining_Class.
Definition uchar.h:504
@ UCHAR_SOFT_DOTTED
Binary property Soft_Dotted (new in Unicode 3.2).
Definition uchar.h:306
@ UCHAR_GRAPHEME_LINK
Binary property Grapheme_Link (new in Unicode 3.2).
Definition uchar.h:253
@ UCHAR_PATTERN_SYNTAX
Binary property Pattern_Syntax (new in Unicode 4.1).
Definition uchar.h:387
@ UCHAR_GRAPHEME_EXTEND
Binary property Grapheme_Extend (new in Unicode 3.2).
Definition uchar.h:250
@ UCHAR_CASED
Binary property Cased.
Definition uchar.h:419
@ UCHAR_XID_START
Binary property XID_Start.
Definition uchar.h:328
@ UCHAR_VERTICAL_ORIENTATION
Enumerated property Vertical_Orientation.
Definition uchar.h:600
@ UCHAR_NFKC_INERT
Binary property NFKC_Inert.
Definition uchar.h:371
@ UCHAR_INT_LIMIT
One more than the last constant for enumerated/integer Unicode properties.
Definition uchar.h:606
@ UCHAR_OTHER_PROPERTY_LIMIT
One more than the last constant for Unicode properties with unusual value types.
Definition uchar.h:712
@ UCHAR_PATTERN_WHITE_SPACE
Binary property Pattern_White_Space (new in Unicode 4.1).
Definition uchar.h:392
@ UCHAR_VARIATION_SELECTOR
Binary property Variation_Selector (new in Unicode 4.0.1).
Definition uchar.h:343
@ UCHAR_NUMERIC_VALUE
Double property Numeric_Value.
Definition uchar.h:630
@ UCHAR_DOUBLE_START
First constant for double Unicode properties.
Definition uchar.h:632
@ UCHAR_HEX_DIGIT
Binary property Hex_Digit.
Definition uchar.h:256
@ UCHAR_SIMPLE_TITLECASE_MAPPING
String property Simple_Titlecase_Mapping.
Definition uchar.h:671
@ UCHAR_TRAIL_CANONICAL_COMBINING_CLASS
Enumerated property Trail_Canonical_Combining_Class.
Definition uchar.h:558
@ UCHAR_DIACRITIC
Binary property Diacritic.
Definition uchar.h:234
@ UCHAR_XID_CONTINUE
Binary property XID_Continue.
Definition uchar.h:325
@ UCHAR_NFKC_QUICK_CHECK
Enumerated property NFKC_Quick_Check.
Definition uchar.h:544
@ UCHAR_HYPHEN
Binary property Hyphen.
Definition uchar.h:259
@ UCHAR_RADICAL
Binary property Radical (new in Unicode 3.2).
Definition uchar.h:301
@ UCHAR_BIDI_PAIRED_BRACKET_TYPE
Enumerated property Bidi_Paired_Bracket_Type (new in Unicode 6.3).
Definition uchar.h:578
@ UCHAR_DASH
Binary property Dash.
Definition uchar.h:224
@ UCHAR_ASCII_HEX_DIGIT
Binary property ASCII_Hex_Digit.
Definition uchar.h:213
@ UCHAR_ID_CONTINUE
Binary property ID_Continue.
Definition uchar.h:264
@ UCHAR_NFKD_INERT
Binary property NFKD_Inert.
Definition uchar.h:357
@ UCHAR_BIDI_MIRRORING_GLYPH
String property Bidi_Mirroring_Glyph.
Definition uchar.h:648
@ UCHAR_LEAD_CANONICAL_COMBINING_CLASS
Enumerated property Lead_Canonical_Combining_Class.
Definition uchar.h:551
@ UCHAR_UNICODE_1_NAME
String property Unicode_1_Name.
Definition uchar.h:683
@ UCHAR_BIDI_MIRRORED
Binary property Bidi_Mirrored.
Definition uchar.h:222
@ UCHAR_CASE_IGNORABLE
Binary property Case_Ignorable.
Definition uchar.h:421
@ UCHAR_EAST_ASIAN_WIDTH
Enumerated property East_Asian_Width.
Definition uchar.h:511
@ UCHAR_STRING_LIMIT
One more than the last constant for string Unicode properties.
Definition uchar.h:696
@ UCHAR_EMOJI_PRESENTATION
Binary property Emoji_Presentation.
Definition uchar.h:447
@ UCHAR_GRAPHEME_BASE
Binary property Grapheme_Base (new in Unicode 3.2).
Definition uchar.h:246
@ UCHAR_NFKD_QUICK_CHECK
Enumerated property NFKD_Quick_Check.
Definition uchar.h:538
@ UCHAR_NAME
String property Name.
Definition uchar.h:662
@ UCHAR_UPPERCASE
Binary property Uppercase.
Definition uchar.h:317
@ UCHAR_CASE_FOLDING
String property Case_Folding.
Definition uchar.h:651
@ UCHAR_INDIC_SYLLABIC_CATEGORY
Enumerated property Indic_Syllabic_Category.
Definition uchar.h:593
@ UCHAR_MATH
Binary property Math.
Definition uchar.h:291
@ UCHAR_NUMERIC_TYPE
Enumerated property Numeric_Type.
Definition uchar.h:526
@ UCHAR_ISO_COMMENT
Deprecated string property ISO_Comment.
Definition uchar.h:655
@ UCHAR_SCRIPT
Enumerated property Script.
Definition uchar.h:529
@ UCHAR_CHANGES_WHEN_TITLECASED
Binary property Changes_When_Titlecased.
Definition uchar.h:427
@ UCHAR_EXTENDED_PICTOGRAPHIC
Binary property Extended_Pictographic.
Definition uchar.h:485
@ UCHAR_DEPRECATED
Binary property Deprecated (new in Unicode 3.2).
Definition uchar.h:231
@ UCHAR_CHANGES_WHEN_UPPERCASED
Binary property Changes_When_Uppercased.
Definition uchar.h:425
@ UCHAR_CHANGES_WHEN_CASEFOLDED
Binary property Changes_When_Casefolded.
Definition uchar.h:429
@ UCHAR_INDIC_POSITIONAL_CATEGORY
Enumerated property Indic_Positional_Category.
Definition uchar.h:586
@ UCHAR_DEFAULT_IGNORABLE_CODE_POINT
Binary property Default_Ignorable_Code_Point (new in Unicode 3.2).
Definition uchar.h:228
@ UCHAR_GENERAL_CATEGORY
Enumerated property General_Category.
Definition uchar.h:514
@ UCHAR_INT_START
First constant for enumerated/integer Unicode properties.
Definition uchar.h:498
@ UCHAR_EMOJI_MODIFIER
Binary property Emoji_Modifier.
Definition uchar.h:454
@ UCHAR_NFD_QUICK_CHECK
Enumerated property NFD_Quick_Check.
Definition uchar.h:535
@ UCHAR_IDS_BINARY_OPERATOR
Binary property IDS_Binary_Operator (new in Unicode 3.2).
Definition uchar.h:275
@ UCHAR_BINARY_START
First constant for binary Unicode properties.
Definition uchar.h:211
@ UCHAR_TERMINAL_PUNCTUATION
Binary property Terminal_Punctuation.
Definition uchar.h:310
@ UCHAR_GENERAL_CATEGORY_MASK
Bitmask property General_Category_Mask.
Definition uchar.h:617
@ UCHAR_MASK_START
First constant for bit-mask Unicode properties.
Definition uchar.h:619
@ UCHAR_DECOMPOSITION_TYPE
Enumerated property Decomposition_Type.
Definition uchar.h:507
@ UCHAR_TITLECASE_MAPPING
String property Titlecase_Mapping.
Definition uchar.h:677
@ UCHAR_HANGUL_SYLLABLE_TYPE
Enumerated property Hangul_Syllable_Type, new in Unicode 4.
Definition uchar.h:532
@ UCHAR_LINE_BREAK
Enumerated property Line_Break.
Definition uchar.h:523
@ UCHAR_SIMPLE_UPPERCASE_MAPPING
String property Simple_Uppercase_Mapping.
Definition uchar.h:674
@ UCHAR_POSIX_ALNUM
Binary property alnum (a C/POSIX character class).
Definition uchar.h:397
@ UCHAR_JOINING_TYPE
Enumerated property Joining_Type.
Definition uchar.h:520
@ UCHAR_QUOTATION_MARK
Binary property Quotation_Mark.
Definition uchar.h:297
@ UCHAR_NFC_INERT
Binary property NFC_Inert.
Definition uchar.h:364
@ UCHAR_LOWERCASE_MAPPING
String property Lowercase_Mapping.
Definition uchar.h:659
@ UCHAR_SIMPLE_CASE_FOLDING
String property Simple_Case_Folding.
Definition uchar.h:665
@ UCHAR_JOIN_CONTROL
Binary property Join_Control.
Definition uchar.h:282
@ UCHAR_NONCHARACTER_CODE_POINT
Binary property Noncharacter_Code_Point.
Definition uchar.h:295
@ UCHAR_BIDI_CONTROL
Binary property Bidi_Control.
Definition uchar.h:217
@ UCHAR_CHANGES_WHEN_LOWERCASED
Binary property Changes_When_Lowercased.
Definition uchar.h:423
@ UCHAR_BINARY_LIMIT
One more than the last constant for binary Unicode properties.
Definition uchar.h:491
@ UCHAR_IDS_TRINARY_OPERATOR
Binary property IDS_Trinary_Operator (new in Unicode 3.2).
Definition uchar.h:279
@ UCHAR_ID_START
Binary property ID_Start.
Definition uchar.h:268
@ UCHAR_AGE
String property Age.
Definition uchar.h:643
@ UCHAR_WORD_BREAK
Enumerated property Word_Break (new in Unicode 4.1).
Definition uchar.h:573
@ UCHAR_DOUBLE_LIMIT
One more than the last constant for double Unicode properties.
Definition uchar.h:638
@ UCHAR_EMOJI_MODIFIER_BASE
Binary property Emoji_Modifier_Base.
Definition uchar.h:461
@ UCHAR_EMOJI_COMPONENT
Binary property Emoji_Component.
Definition uchar.h:468
@ UCHAR_POSIX_BLANK
Binary property blank (a C/POSIX character class).
Definition uchar.h:402
@ UCHAR_SIMPLE_LOWERCASE_MAPPING
String property Simple_Lowercase_Mapping.
Definition uchar.h:668
@ UCHAR_NFD_INERT
Binary property NFD_Inert.
Definition uchar.h:350
@ UCHAR_POSIX_PRINT
Binary property print (a C/POSIX character class).
Definition uchar.h:412
@ UCHAR_SENTENCE_BREAK
Enumerated property Sentence_Break (new in Unicode 4.1).
Definition uchar.h:568
@ UCHAR_IDEOGRAPHIC
Binary property Ideographic.
Definition uchar.h:271
@ UCHAR_UNIFIED_IDEOGRAPH
Binary property Unified_Ideograph (new in Unicode 3.2).
Definition uchar.h:314
@ UCHAR_CHANGES_WHEN_NFKC_CASEFOLDED
Binary property Changes_When_NFKC_Casefolded.
Definition uchar.h:433
@ UCHAR_NFC_QUICK_CHECK
Enumerated property NFC_Quick_Check.
Definition uchar.h:541
@ UCHAR_CASE_SENSITIVE
Binary property Case_Sensitive.
Definition uchar.h:332
@ UCHAR_UPPERCASE_MAPPING
String property Uppercase_Mapping.
Definition uchar.h:687
@ UCHAR_BIDI_CLASS
Enumerated property Bidi_Class.
Definition uchar.h:496
@ UCHAR_MASK_LIMIT
One more than the last constant for bit-mask Unicode properties.
Definition uchar.h:625
@ UCHAR_JOINING_GROUP
Enumerated property Joining_Group.
Definition uchar.h:517
@ UCHAR_LOGICAL_ORDER_EXCEPTION
Binary property Logical_Order_Exception (new in Unicode 3.2).
Definition uchar.h:286
@ UCHAR_EXTENDER
Binary property Extender.
Definition uchar.h:238
@ UCHAR_STRING_START
First constant for string Unicode properties.
Definition uchar.h:645
@ UCHAR_SCRIPT_EXTENSIONS
Miscellaneous property Script_Extensions (new in Unicode 6.0).
Definition uchar.h:704
@ UCHAR_FULL_COMPOSITION_EXCLUSION
Binary property Full_Composition_Exclusion.
Definition uchar.h:242
@ UCHAR_EMOJI
Binary property Emoji.
Definition uchar.h:440
@ UCHAR_LOWERCASE
Binary property Lowercase.
Definition uchar.h:289
@ UCHAR_CHANGES_WHEN_CASEMAPPED
Binary property Changes_When_Casemapped.
Definition uchar.h:431
@ UCHAR_POSIX_XDIGIT
Binary property xdigit (a C/POSIX character class).
Definition uchar.h:417
U_CAPI int32_t u_getIntPropertyMinValue(UProperty which)
Get the minimum value for an enumerated/integer/binary Unicode property.
U_CAPI UBool u_isalnum(UChar32 c)
Determines whether the specified code point is an alphanumeric character (letter or digit) according ...
U_CAPI UBool u_isalpha(UChar32 c)
Determines whether the specified code point is a letter character.
U_CAPI UChar32 u_tolower(UChar32 c)
The given character is mapped to its lowercase equivalent according to UnicodeData....
U_CAPI 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.
UIndicSyllabicCategory
Indic Syllabic Category constants.
Definition uchar.h:2468
@ U_INSC_VISARGA
Definition uchar.h:2540
@ U_INSC_BINDU
Definition uchar.h:2480
@ U_INSC_INVISIBLE_STACKER
Definition uchar.h:2514
@ U_INSC_SYLLABLE_MODIFIER
Definition uchar.h:2532
@ U_INSC_VIRAMA
Definition uchar.h:2538
@ U_INSC_MODIFYING_LETTER
Definition uchar.h:2518
@ U_INSC_REGISTER_SHIFTER
Definition uchar.h:2530
@ U_INSC_NUKTA
Definition uchar.h:2522
@ U_INSC_NON_JOINER
Definition uchar.h:2520
@ U_INSC_TONE_MARK
Definition uchar.h:2536
@ U_INSC_GEMINATION_MARK
Definition uchar.h:2512
@ U_INSC_CONSONANT_KILLER
Definition uchar.h:2496
@ U_INSC_CONSONANT_HEAD_LETTER
Definition uchar.h:2492
@ U_INSC_BRAHMI_JOINING_NUMBER
Definition uchar.h:2482
@ U_INSC_CONSONANT_DEAD
Definition uchar.h:2488
@ U_INSC_OTHER
Definition uchar.h:2476
@ U_INSC_NUMBER
Definition uchar.h:2524
@ U_INSC_TONE_LETTER
Definition uchar.h:2534
@ U_INSC_JOINER
Definition uchar.h:2516
@ U_INSC_CANTILLATION_MARK
Definition uchar.h:2484
@ U_INSC_PURE_KILLER
Definition uchar.h:2528
@ U_INSC_VOWEL_INDEPENDENT
Definition uchar.h:2546
@ U_INSC_CONSONANT_MEDIAL
Definition uchar.h:2498
@ U_INSC_CONSONANT_WITH_STACKER
Definition uchar.h:2510
@ U_INSC_CONSONANT_PREFIXED
Definition uchar.h:2504
@ U_INSC_CONSONANT
Definition uchar.h:2486
@ U_INSC_CONSONANT_SUCCEEDING_REPHA
Definition uchar.h:2508
@ U_INSC_CONSONANT_PLACEHOLDER
Definition uchar.h:2500
@ U_INSC_VOWEL
Definition uchar.h:2542
@ U_INSC_NUMBER_JOINER
Definition uchar.h:2526
@ U_INSC_CONSONANT_PRECEDING_REPHA
Definition uchar.h:2502
@ U_INSC_CONSONANT_SUBJOINED
Definition uchar.h:2506
@ U_INSC_VOWEL_DEPENDENT
Definition uchar.h:2544
@ U_INSC_CONSONANT_INITIAL_POSTFIXED
Definition uchar.h:2494
@ U_INSC_AVAGRAHA
Definition uchar.h:2478
@ U_INSC_CONSONANT_FINAL
Definition uchar.h:2490
UWordBreakValues
Word Break constants.
Definition uchar.h:2178
@ U_WB_E_MODIFIER
Definition uchar.h:2216
@ U_WB_E_BASE_GAZ
Definition uchar.h:2214
@ U_WB_REGIONAL_INDICATOR
Definition uchar.h:2204
@ U_WB_DOUBLE_QUOTE
Definition uchar.h:2210
@ U_WB_LF
Definition uchar.h:2198
@ U_WB_HEBREW_LETTER
Definition uchar.h:2206
@ U_WB_WSEGSPACE
Definition uchar.h:2222
@ U_WB_COUNT
One more than the highest normal UWordBreakValues value.
Definition uchar.h:2231
@ U_WB_GLUE_AFTER_ZWJ
Definition uchar.h:2218
@ U_WB_NEWLINE
Definition uchar.h:2202
@ U_WB_SINGLE_QUOTE
Definition uchar.h:2208
@ U_WB_CR
Definition uchar.h:2194
@ U_WB_E_BASE
Definition uchar.h:2212
@ U_WB_ZWJ
Definition uchar.h:2220
@ U_WB_EXTEND
Definition uchar.h:2196
@ U_WB_MIDNUMLET
Definition uchar.h:2200
U_CAPI UBool u_isJavaIDStart(UChar32 c)
Determines if the specified character is permissible as the first character in a Java identifier.
UBidiPairedBracketType
Bidi Paired Bracket Type constants.
Definition uchar.h:992
@ U_BPT_CLOSE
Close paired bracket.
Definition uchar.h:1004
@ U_BPT_COUNT
One more than the highest normal UBidiPairedBracketType value.
Definition uchar.h:1012
@ U_BPT_NONE
Not a paired bracket.
Definition uchar.h:1000
@ U_BPT_OPEN
Open paired bracket.
Definition uchar.h:1002
U_CAPI const char * u_getPropertyName(UProperty property, UPropertyNameChoice nameChoice)
Return the Unicode name for a given property, as given in the Unicode database file PropertyAliases....
This file defines an abstract map from Unicode code points to integer values.
struct UCPMap UCPMap
Abstract map from Unicode code points (U+0000..U+10FFFF) to integer values.
Definition ucpmap.h:31
int32_t UChar32
Define UChar32 as a type for single Unicode code points.
Definition umachine.h:467
#define U_DEPRECATED
This is used to declare a function as a deprecated public ICU C API
Definition umachine.h:116
#define U_CDECL_END
This is used to end a declaration of a library private ICU C API.
Definition umachine.h:86
int8_t UBool
The ICU boolean type, a signed-byte integer.
Definition umachine.h:269
#define U_CAPI
This is used to declare a function as a public ICU C API.
Definition umachine.h:110
char16_t UChar
The base type for UTF-16 code units and pointers.
Definition umachine.h:418
#define U_CDECL_BEGIN
This is used to begin a declaration of a library private ICU C API.
Definition umachine.h:85
struct USet USet
USet is the C API type corresponding to C++ class UnicodeSet.
Definition uset.h:50
Basic definitions for ICU, for both C and C++ APIs.
UErrorCode
Standard ICU4C error code type, a substitute for exceptions.
Definition utypes.h:415
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