blob: 34077fe07e65a0b208a6696dccc840f17e504360 [file] [log] [blame]
Tristan Matthews04616462013-11-14 16:09:34 -05001/*************************************************
2* Unicode Property Table handler *
3*************************************************/
4
5#ifndef _UCP_H
6#define _UCP_H
7
8/* This file contains definitions of the property values that are returned by
9the UCD access macros. New values that are added for new releases of Unicode
10should always be at the end of each enum, for backwards compatibility. */
11
12/* These are the general character categories. */
13
14enum {
15 ucp_C, /* Other */
16 ucp_L, /* Letter */
17 ucp_M, /* Mark */
18 ucp_N, /* Number */
19 ucp_P, /* Punctuation */
20 ucp_S, /* Symbol */
21 ucp_Z /* Separator */
22};
23
24/* These are the particular character types. */
25
26enum {
27 ucp_Cc, /* Control */
28 ucp_Cf, /* Format */
29 ucp_Cn, /* Unassigned */
30 ucp_Co, /* Private use */
31 ucp_Cs, /* Surrogate */
32 ucp_Ll, /* Lower case letter */
33 ucp_Lm, /* Modifier letter */
34 ucp_Lo, /* Other letter */
35 ucp_Lt, /* Title case letter */
36 ucp_Lu, /* Upper case letter */
37 ucp_Mc, /* Spacing mark */
38 ucp_Me, /* Enclosing mark */
39 ucp_Mn, /* Non-spacing mark */
40 ucp_Nd, /* Decimal number */
41 ucp_Nl, /* Letter number */
42 ucp_No, /* Other number */
43 ucp_Pc, /* Connector punctuation */
44 ucp_Pd, /* Dash punctuation */
45 ucp_Pe, /* Close punctuation */
46 ucp_Pf, /* Final punctuation */
47 ucp_Pi, /* Initial punctuation */
48 ucp_Po, /* Other punctuation */
49 ucp_Ps, /* Open punctuation */
50 ucp_Sc, /* Currency symbol */
51 ucp_Sk, /* Modifier symbol */
52 ucp_Sm, /* Mathematical symbol */
53 ucp_So, /* Other symbol */
54 ucp_Zl, /* Line separator */
55 ucp_Zp, /* Paragraph separator */
56 ucp_Zs /* Space separator */
57};
58
59/* These are the script identifications. */
60
61enum {
62 ucp_Arabic,
63 ucp_Armenian,
64 ucp_Bengali,
65 ucp_Bopomofo,
66 ucp_Braille,
67 ucp_Buginese,
68 ucp_Buhid,
69 ucp_Canadian_Aboriginal,
70 ucp_Cherokee,
71 ucp_Common,
72 ucp_Coptic,
73 ucp_Cypriot,
74 ucp_Cyrillic,
75 ucp_Deseret,
76 ucp_Devanagari,
77 ucp_Ethiopic,
78 ucp_Georgian,
79 ucp_Glagolitic,
80 ucp_Gothic,
81 ucp_Greek,
82 ucp_Gujarati,
83 ucp_Gurmukhi,
84 ucp_Han,
85 ucp_Hangul,
86 ucp_Hanunoo,
87 ucp_Hebrew,
88 ucp_Hiragana,
89 ucp_Inherited,
90 ucp_Kannada,
91 ucp_Katakana,
92 ucp_Kharoshthi,
93 ucp_Khmer,
94 ucp_Lao,
95 ucp_Latin,
96 ucp_Limbu,
97 ucp_Linear_B,
98 ucp_Malayalam,
99 ucp_Mongolian,
100 ucp_Myanmar,
101 ucp_New_Tai_Lue,
102 ucp_Ogham,
103 ucp_Old_Italic,
104 ucp_Old_Persian,
105 ucp_Oriya,
106 ucp_Osmanya,
107 ucp_Runic,
108 ucp_Shavian,
109 ucp_Sinhala,
110 ucp_Syloti_Nagri,
111 ucp_Syriac,
112 ucp_Tagalog,
113 ucp_Tagbanwa,
114 ucp_Tai_Le,
115 ucp_Tamil,
116 ucp_Telugu,
117 ucp_Thaana,
118 ucp_Thai,
119 ucp_Tibetan,
120 ucp_Tifinagh,
121 ucp_Ugaritic,
122 ucp_Yi,
123 /* New for Unicode 5.0: */
124 ucp_Balinese,
125 ucp_Cuneiform,
126 ucp_Nko,
127 ucp_Phags_Pa,
128 ucp_Phoenician,
129 /* New for Unicode 5.1: */
130 ucp_Carian,
131 ucp_Cham,
132 ucp_Kayah_Li,
133 ucp_Lepcha,
134 ucp_Lycian,
135 ucp_Lydian,
136 ucp_Ol_Chiki,
137 ucp_Rejang,
138 ucp_Saurashtra,
139 ucp_Sundanese,
140 ucp_Vai,
141 /* New for Unicode 5.2: */
142 ucp_Avestan,
143 ucp_Bamum,
144 ucp_Egyptian_Hieroglyphs,
145 ucp_Imperial_Aramaic,
146 ucp_Inscriptional_Pahlavi,
147 ucp_Inscriptional_Parthian,
148 ucp_Javanese,
149 ucp_Kaithi,
150 ucp_Lisu,
151 ucp_Meetei_Mayek,
152 ucp_Old_South_Arabian,
153 ucp_Old_Turkic,
154 ucp_Samaritan,
155 ucp_Tai_Tham,
156 ucp_Tai_Viet,
157 /* New for Unicode 6.0.0: */
158 ucp_Batak,
159 ucp_Brahmi,
160 ucp_Mandaic
161};
162
163#endif
164
165/* End of ucp.h */