/src/harfbuzz/src/hb-ot-shaper-indic-table.cc
Line | Count | Source (jump to first uncovered line) |
1 | | /* == Start of generated table == */ |
2 | | /* |
3 | | * The following table is generated by running: |
4 | | * |
5 | | * ./gen-indic-table.py IndicSyllabicCategory.txt IndicPositionalCategory.txt Blocks.txt |
6 | | * |
7 | | * on files with these headers: |
8 | | * |
9 | | * # IndicSyllabicCategory-15.0.0.txt |
10 | | * # Date: 2022-05-26, 02:18:00 GMT [KW, RP] |
11 | | * # IndicPositionalCategory-15.0.0.txt |
12 | | * # Date: 2022-05-26, 02:18:00 GMT [KW, RP] |
13 | | * # Blocks-15.0.0.txt |
14 | | * # Date: 2022-01-28, 20:58:00 GMT [KW] |
15 | | */ |
16 | | |
17 | | #include "hb.hh" |
18 | | |
19 | | #ifndef HB_NO_OT_SHAPE |
20 | | |
21 | | #include "hb-ot-shaper-indic.hh" |
22 | | |
23 | | #pragma GCC diagnostic push |
24 | | #pragma GCC diagnostic ignored "-Wunused-macros" |
25 | | |
26 | | #include "hb-ot-shaper-indic-machine.hh" |
27 | | #include "hb-ot-shaper-khmer-machine.hh" |
28 | | #include "hb-ot-shaper-myanmar-machine.hh" |
29 | | |
30 | | /* indic */ |
31 | | #define OT_X I_Cat(X) |
32 | | #define OT_C I_Cat(C) |
33 | | #define OT_V I_Cat(V) |
34 | | #define OT_N I_Cat(N) |
35 | | #define OT_H I_Cat(H) |
36 | | #define OT_ZWNJ I_Cat(ZWNJ) |
37 | | #define OT_ZWJ I_Cat(ZWJ) |
38 | | #define OT_M I_Cat(M) |
39 | | #define OT_SM I_Cat(SM) |
40 | | #define OT_A I_Cat(A) |
41 | | #define OT_VD I_Cat(VD) |
42 | | #define OT_PLACEHOLDER I_Cat(PLACEHOLDER) |
43 | | #define OT_DOTTEDCIRCLE I_Cat(DOTTEDCIRCLE) |
44 | | #define OT_RS I_Cat(RS) |
45 | | #define OT_MPst I_Cat(MPst) |
46 | | #define OT_Repha I_Cat(Repha) |
47 | | #define OT_Ra I_Cat(Ra) |
48 | | #define OT_CM I_Cat(CM) |
49 | | #define OT_Symbol I_Cat(Symbol) |
50 | | #define OT_CS I_Cat(CS) |
51 | | /* khmer */ |
52 | | #define OT_VAbv K_Cat(VAbv) |
53 | | #define OT_VBlw K_Cat(VBlw) |
54 | | #define OT_VPre K_Cat(VPre) |
55 | | #define OT_VPst K_Cat(VPst) |
56 | | #define OT_Robatic K_Cat(Robatic) |
57 | | #define OT_Xgroup K_Cat(Xgroup) |
58 | | #define OT_Ygroup K_Cat(Ygroup) |
59 | | /* myanmar */ |
60 | | static_assert (OT_VAbv == M_Cat(VAbv), ""); |
61 | | static_assert (OT_VBlw == M_Cat(VBlw), ""); |
62 | | static_assert (OT_VPre == M_Cat(VPre), ""); |
63 | | static_assert (OT_VPst == M_Cat(VPst), ""); |
64 | | #define OT_IV M_Cat(IV) |
65 | | #define OT_As M_Cat(As) |
66 | | #define OT_DB M_Cat(DB) |
67 | | #define OT_GB M_Cat(GB) |
68 | | #define OT_MH M_Cat(MH) |
69 | | #define OT_MR M_Cat(MR) |
70 | | #define OT_MW M_Cat(MW) |
71 | | #define OT_MY M_Cat(MY) |
72 | | #define OT_PT M_Cat(PT) |
73 | | #define OT_VS M_Cat(VS) |
74 | | #define OT_ML M_Cat(ML) |
75 | | |
76 | | |
77 | | #define _OT_A OT_A /* 53 chars; A */ |
78 | | #define _OT_As OT_As /* 1 chars; As */ |
79 | | #define _OT_C OT_C /* 478 chars; C */ |
80 | | #define _OT_CM OT_CM /* 1 chars; CM */ |
81 | | #define _OT_CS OT_CS /* 2 chars; CS */ |
82 | | #define _OT_DC OT_DOTTEDCIRCLE /* 1 chars; DOTTEDCIRCLE */ |
83 | | #define _OT_H OT_H /* 11 chars; H */ |
84 | | #define _OT_M OT_M /* 142 chars; M */ |
85 | | #define _OT_MH OT_MH /* 1 chars; MH */ |
86 | | #define _OT_ML OT_ML /* 1 chars; ML */ |
87 | | #define _OT_MP OT_MPst /* 1 chars; MPst */ |
88 | | #define _OT_MR OT_MR /* 1 chars; MR */ |
89 | | #define _OT_MW OT_MW /* 2 chars; MW */ |
90 | | #define _OT_MY OT_MY /* 3 chars; MY */ |
91 | | #define _OT_N OT_N /* 17 chars; N */ |
92 | | #define _OT_GB OT_PLACEHOLDER /* 165 chars; PLACEHOLDER */ |
93 | | #define _OT_PT OT_PT /* 8 chars; PT */ |
94 | | #define _OT_R OT_Ra /* 14 chars; Ra */ |
95 | | #define _OT_Rf OT_Repha /* 1 chars; Repha */ |
96 | | #define _OT_Rt OT_Robatic /* 3 chars; Robatic */ |
97 | | #define _OT_SM OT_SM /* 56 chars; SM */ |
98 | | #define _OT_S OT_Symbol /* 22 chars; Symbol */ |
99 | | #define _OT_V OT_V /* 172 chars; V */ |
100 | | #define _OT_VA OT_VAbv /* 18 chars; VAbv */ |
101 | | #define _OT_VB OT_VBlw /* 7 chars; VBlw */ |
102 | | #define _OT_VL OT_VPre /* 5 chars; VPre */ |
103 | | #define _OT_VR OT_VPst /* 13 chars; VPst */ |
104 | | #define _OT_VS OT_VS /* 16 chars; VS */ |
105 | | #define _OT_X OT_X /* 2 chars; X */ |
106 | | #define _OT_Xg OT_Xgroup /* 7 chars; Xgroup */ |
107 | | #define _OT_Yg OT_Ygroup /* 4 chars; Ygroup */ |
108 | | #define _OT_ZWJ OT_ZWJ /* 1 chars; ZWJ */ |
109 | | #define _OT_ZWNJ OT_ZWNJ /* 1 chars; ZWNJ */ |
110 | | |
111 | | #define _POS_T POS_ABOVE_C /* 22 chars; ABOVE_C */ |
112 | | #define _POS_A POS_AFTER_MAIN /* 3 chars; AFTER_MAIN */ |
113 | | #define _POS_AP POS_AFTER_POST /* 50 chars; AFTER_POST */ |
114 | | #define _POS_AS POS_AFTER_SUB /* 51 chars; AFTER_SUB */ |
115 | | #define _POS_C POS_BASE_C /* 833 chars; BASE_C */ |
116 | | #define _POS_BS POS_BEFORE_SUB /* 25 chars; BEFORE_SUB */ |
117 | | #define _POS_B POS_BELOW_C /* 13 chars; BELOW_C */ |
118 | | #define _POS_X POS_END /* 71 chars; END */ |
119 | | #define _POS_R POS_POST_C /* 13 chars; POST_C */ |
120 | | #define _POS_L POS_PRE_C /* 5 chars; PRE_C */ |
121 | | #define _POS_LM POS_PRE_M /* 14 chars; PRE_M */ |
122 | | #define _POS_SM POS_SMVD /* 130 chars; SMVD */ |
123 | | |
124 | | #pragma GCC diagnostic pop |
125 | | |
126 | 368k | #define INDIC_COMBINE_CATEGORIES(S,M) ((S) | ((M) << 8)) |
127 | | |
128 | 368k | #define _(S,M) INDIC_COMBINE_CATEGORIES (_OT_##S, _POS_##M) |
129 | | |
130 | | |
131 | | static const uint16_t indic_table[] = { |
132 | | |
133 | | |
134 | 5.19k | #define indic_offset_0x0028u 0 |
135 | | |
136 | | |
137 | | /* Basic Latin */ |
138 | | |
139 | | /* 0028 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(GB,C), _(X,X), _(X,X), |
140 | | /* 0030 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
141 | | /* 0038 */ _(GB,C), _(GB,C), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
142 | | |
143 | 2.27k | #define indic_offset_0x00b0u 24 |
144 | | |
145 | | |
146 | | /* Latin-1 Supplement */ |
147 | | |
148 | | /* 00B0 */ _(X,X), _(X,X),_(SM,SM),_(SM,SM), _(X,X), _(X,X), _(X,X), _(X,X), |
149 | | /* 00B8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
150 | | /* 00C0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
151 | | /* 00C8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
152 | | /* 00D0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(GB,C), |
153 | | |
154 | 118k | #define indic_offset_0x0900u 64 |
155 | | |
156 | | |
157 | | /* Devanagari */ |
158 | | |
159 | | /* 0900 */_(SM,SM),_(SM,SM),_(SM,SM),_(SM,SM), _(V,C), _(V,C), _(V,C), _(V,C), |
160 | | /* 0908 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), |
161 | | /* 0910 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(C,C), _(C,C), _(C,C), |
162 | | /* 0918 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
163 | | /* 0920 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
164 | | /* 0928 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
165 | | /* 0930 */ _(R,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
166 | | /* 0938 */ _(C,C), _(C,C), _(M,AS), _(M,AS), _(N,X), _(S,SM), _(M,AS), _(M,LM), |
167 | | /* 0940 */ _(M,AS), _(M,AS), _(M,AS), _(M,AS), _(M,AS), _(M,AS), _(M,AS), _(M,AS), |
168 | | /* 0948 */ _(M,AS), _(M,AS), _(M,AS), _(M,AS), _(M,AS), _(H,B), _(M,LM), _(M,AS), |
169 | | /* 0950 */ _(X,X), _(A,SM), _(A,SM),_(SM,SM),_(SM,SM), _(M,AS), _(M,AS), _(M,AS), |
170 | | /* 0958 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
171 | | /* 0960 */ _(V,C), _(V,C), _(M,AS), _(M,AS), _(X,X), _(X,X), _(GB,C), _(GB,C), |
172 | | /* 0968 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
173 | | /* 0970 */ _(X,X), _(X,X), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), |
174 | | /* 0978 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
175 | | |
176 | | /* Bengali */ |
177 | | |
178 | | /* 0980 */ _(GB,C),_(SM,SM),_(SM,SM),_(SM,SM), _(X,X), _(V,C), _(V,C), _(V,C), |
179 | | /* 0988 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(X,X), _(X,X), _(V,C), |
180 | | /* 0990 */ _(V,C), _(X,X), _(X,X), _(V,C), _(V,C), _(C,C), _(C,C), _(C,C), |
181 | | /* 0998 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
182 | | /* 09A0 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
183 | | /* 09A8 */ _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
184 | | /* 09B0 */ _(R,C), _(X,X), _(C,C), _(X,X), _(X,X), _(X,X), _(C,C), _(C,C), |
185 | | /* 09B8 */ _(C,C), _(C,C), _(X,X), _(X,X), _(N,X), _(S,SM), _(M,AP), _(M,LM), |
186 | | /* 09C0 */ _(M,AP), _(M,AS), _(M,AS), _(M,AS), _(M,AS), _(X,X), _(X,X), _(M,LM), |
187 | | /* 09C8 */ _(M,LM), _(X,X), _(X,X), _(M,AP), _(M,AP), _(H,B), _(C,C), _(X,X), |
188 | | /* 09D0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(M,AP), |
189 | | /* 09D8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(C,C), _(C,C), _(X,X), _(C,C), |
190 | | /* 09E0 */ _(V,C), _(V,C), _(M,AS), _(M,AS), _(X,X), _(X,X), _(GB,C), _(GB,C), |
191 | | /* 09E8 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
192 | | /* 09F0 */ _(R,C), _(C,C), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
193 | | /* 09F8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(GB,C), _(X,X),_(SM,SM), _(X,X), |
194 | | |
195 | | /* Gurmukhi */ |
196 | | |
197 | | /* 0A00 */ _(X,X),_(SM,SM),_(SM,SM),_(SM,SM), _(X,X), _(V,C), _(V,C), _(V,C), |
198 | | /* 0A08 */ _(V,C), _(V,C), _(V,C), _(X,X), _(X,X), _(X,X), _(X,X), _(V,C), |
199 | | /* 0A10 */ _(V,C), _(X,X), _(X,X), _(V,C), _(V,C), _(C,C), _(C,C), _(C,C), |
200 | | /* 0A18 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
201 | | /* 0A20 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
202 | | /* 0A28 */ _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
203 | | /* 0A30 */ _(R,C), _(X,X), _(C,C), _(C,C), _(X,X), _(C,C), _(C,C), _(X,X), |
204 | | /* 0A38 */ _(C,C), _(C,C), _(X,X), _(X,X), _(N,X), _(X,X), _(M,AP), _(M,LM), |
205 | | /* 0A40 */_(MP,AP), _(M,AP), _(M,AP), _(X,X), _(X,X), _(X,X), _(X,X), _(M,AP), |
206 | | /* 0A48 */ _(M,AP), _(X,X), _(X,X), _(M,AP), _(M,AP), _(H,B), _(X,X), _(X,X), |
207 | | /* 0A50 */ _(X,X), _(M,B), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
208 | | /* 0A58 */ _(X,X), _(C,C), _(C,C), _(C,C), _(C,C), _(X,X), _(C,C), _(X,X), |
209 | | /* 0A60 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(GB,C), _(GB,C), |
210 | | /* 0A68 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
211 | | /* 0A70 */_(SM,SM),_(SM,SM), _(C,C), _(C,C), _(X,X), _(CM,C), _(X,X), _(X,X), |
212 | | /* 0A78 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
213 | | |
214 | | /* Gujarati */ |
215 | | |
216 | | /* 0A80 */ _(X,X),_(SM,SM),_(SM,SM),_(SM,SM), _(X,X), _(V,C), _(V,C), _(V,C), |
217 | | /* 0A88 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(X,X), _(V,C), |
218 | | /* 0A90 */ _(V,C), _(V,C), _(X,X), _(V,C), _(V,C), _(C,C), _(C,C), _(C,C), |
219 | | /* 0A98 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
220 | | /* 0AA0 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
221 | | /* 0AA8 */ _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
222 | | /* 0AB0 */ _(R,C), _(X,X), _(C,C), _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), |
223 | | /* 0AB8 */ _(C,C), _(C,C), _(X,X), _(X,X), _(N,X), _(S,SM), _(M,AP), _(M,LM), |
224 | | /* 0AC0 */ _(M,AP), _(M,AP), _(M,AP), _(M,AP), _(M,AP), _(M,AS), _(X,X), _(M,AS), |
225 | | /* 0AC8 */ _(M,AS), _(M,AP), _(X,X), _(M,AP), _(M,AP), _(H,B), _(X,X), _(X,X), |
226 | | /* 0AD0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
227 | | /* 0AD8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
228 | | /* 0AE0 */ _(V,C), _(V,C), _(M,AP), _(M,AP), _(X,X), _(X,X), _(GB,C), _(GB,C), |
229 | | /* 0AE8 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
230 | | /* 0AF0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
231 | | /* 0AF8 */ _(X,X), _(C,C), _(A,SM), _(N,X), _(A,SM), _(N,X), _(N,X), _(N,X), |
232 | | |
233 | | /* Oriya */ |
234 | | |
235 | | /* 0B00 */ _(X,X),_(SM,BS),_(SM,SM),_(SM,SM), _(X,X), _(V,C), _(V,C), _(V,C), |
236 | | /* 0B08 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(X,X), _(X,X), _(V,C), |
237 | | /* 0B10 */ _(V,C), _(X,X), _(X,X), _(V,C), _(V,C), _(C,C), _(C,C), _(C,C), |
238 | | /* 0B18 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
239 | | /* 0B20 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
240 | | /* 0B28 */ _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
241 | | /* 0B30 */ _(R,C), _(X,X), _(C,C), _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), |
242 | | /* 0B38 */ _(C,C), _(C,C), _(X,X), _(X,X), _(N,X), _(S,SM), _(M,AP), _(M,A), |
243 | | /* 0B40 */ _(M,AP), _(M,AS), _(M,AS), _(M,AS), _(M,AS), _(X,X), _(X,X), _(M,LM), |
244 | | /* 0B48 */ _(M,A), _(X,X), _(X,X), _(M,AP), _(M,AP), _(H,B), _(X,X), _(X,X), |
245 | | /* 0B50 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(N,X), _(M,A), _(M,AP), |
246 | | /* 0B58 */ _(X,X), _(X,X), _(X,X), _(X,X), _(C,C), _(C,C), _(X,X), _(C,C), |
247 | | /* 0B60 */ _(V,C), _(V,C), _(M,AS), _(M,AS), _(X,X), _(X,X), _(GB,C), _(GB,C), |
248 | | /* 0B68 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
249 | | /* 0B70 */ _(X,X), _(C,C), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
250 | | /* 0B78 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
251 | | |
252 | | /* Tamil */ |
253 | | |
254 | | /* 0B80 */ _(X,X), _(X,X),_(SM,SM), _(X,X), _(X,X), _(V,C), _(V,C), _(V,C), |
255 | | /* 0B88 */ _(V,C), _(V,C), _(V,C), _(X,X), _(X,X), _(X,X), _(V,C), _(V,C), |
256 | | /* 0B90 */ _(V,C), _(X,X), _(V,C), _(V,C), _(V,C), _(C,C), _(X,X), _(X,X), |
257 | | /* 0B98 */ _(X,X), _(C,C), _(C,C), _(X,X), _(C,C), _(X,X), _(C,C), _(C,C), |
258 | | /* 0BA0 */ _(X,X), _(X,X), _(X,X), _(C,C), _(C,C), _(X,X), _(X,X), _(X,X), |
259 | | /* 0BA8 */ _(C,C), _(C,C), _(C,C), _(X,X), _(X,X), _(X,X), _(C,C), _(C,C), |
260 | | /* 0BB0 */ _(R,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
261 | | /* 0BB8 */ _(C,C), _(C,C), _(X,X), _(X,X), _(X,X), _(X,X), _(M,AP), _(M,AP), |
262 | | /* 0BC0 */ _(M,AS), _(M,AP), _(M,AP), _(X,X), _(X,X), _(X,X), _(M,LM), _(M,LM), |
263 | | /* 0BC8 */ _(M,LM), _(X,X), _(M,AP), _(M,AP), _(M,AP), _(H,T), _(X,X), _(X,X), |
264 | | /* 0BD0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(M,AP), |
265 | | /* 0BD8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
266 | | /* 0BE0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(GB,C), _(GB,C), |
267 | | /* 0BE8 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
268 | | /* 0BF0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
269 | | /* 0BF8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
270 | | |
271 | | /* Telugu */ |
272 | | |
273 | | /* 0C00 */_(SM,SM),_(SM,SM),_(SM,SM),_(SM,SM),_(SM,SM), _(V,C), _(V,C), _(V,C), |
274 | | /* 0C08 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(X,X), _(V,C), _(V,C), |
275 | | /* 0C10 */ _(V,C), _(X,X), _(V,C), _(V,C), _(V,C), _(C,C), _(C,C), _(C,C), |
276 | | /* 0C18 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
277 | | /* 0C20 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
278 | | /* 0C28 */ _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
279 | | /* 0C30 */ _(R,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
280 | | /* 0C38 */ _(C,C), _(C,C), _(X,X), _(X,X), _(N,X), _(S,SM), _(M,BS), _(M,BS), |
281 | | /* 0C40 */ _(M,BS), _(M,BS), _(M,BS), _(M,AS), _(M,AS), _(X,X), _(M,BS), _(M,BS), |
282 | | /* 0C48 */ _(M,BS), _(X,X), _(M,BS), _(M,BS), _(M,BS), _(H,T), _(X,X), _(X,X), |
283 | | /* 0C50 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(M,BS), _(M,BS), _(X,X), |
284 | | /* 0C58 */ _(C,C), _(C,C), _(C,C), _(X,X), _(X,X), _(C,C), _(X,X), _(X,X), |
285 | | /* 0C60 */ _(V,C), _(V,C), _(M,BS), _(M,BS), _(X,X), _(X,X), _(GB,C), _(GB,C), |
286 | | /* 0C68 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
287 | | /* 0C70 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
288 | | /* 0C78 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
289 | | |
290 | | /* Kannada */ |
291 | | |
292 | | /* 0C80 */ _(GB,C),_(SM,SM),_(SM,SM),_(SM,SM), _(X,X), _(V,C), _(V,C), _(V,C), |
293 | | /* 0C88 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(X,X), _(V,C), _(V,C), |
294 | | /* 0C90 */ _(V,C), _(X,X), _(V,C), _(V,C), _(V,C), _(C,C), _(C,C), _(C,C), |
295 | | /* 0C98 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
296 | | /* 0CA0 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
297 | | /* 0CA8 */ _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
298 | | /* 0CB0 */ _(R,C), _(C,C), _(C,C), _(C,C), _(X,X), _(C,C), _(C,C), _(C,C), |
299 | | /* 0CB8 */ _(C,C), _(C,C), _(X,X), _(X,X), _(N,X), _(S,SM), _(M,BS), _(M,BS), |
300 | | /* 0CC0 */ _(M,BS), _(M,BS), _(M,BS), _(M,AS), _(M,AS), _(X,X), _(M,BS), _(M,AS), |
301 | | /* 0CC8 */ _(M,AS), _(X,X), _(M,AS), _(M,AS), _(M,BS), _(H,T), _(X,X), _(X,X), |
302 | | /* 0CD0 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(M,AS), _(M,AS), _(X,X), |
303 | | /* 0CD8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(C,C), _(C,C), _(X,X), |
304 | | /* 0CE0 */ _(V,C), _(V,C), _(M,BS), _(M,BS), _(X,X), _(X,X), _(GB,C), _(GB,C), |
305 | | /* 0CE8 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
306 | | /* 0CF0 */ _(X,X), _(CS,C), _(CS,C),_(SM,SM), _(X,X), _(X,X), _(X,X), _(X,X), |
307 | | /* 0CF8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
308 | | |
309 | | /* Malayalam */ |
310 | | |
311 | | /* 0D00 */_(SM,SM),_(SM,SM),_(SM,SM),_(SM,SM), _(GB,C), _(V,C), _(V,C), _(V,C), |
312 | | /* 0D08 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(X,X), _(V,C), _(V,C), |
313 | | /* 0D10 */ _(V,C), _(X,X), _(V,C), _(V,C), _(V,C), _(C,C), _(C,C), _(C,C), |
314 | | /* 0D18 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
315 | | /* 0D20 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
316 | | /* 0D28 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
317 | | /* 0D30 */ _(R,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
318 | | /* 0D38 */ _(C,C), _(C,C), _(C,C), _(M,AS), _(M,AS), _(S,SM), _(M,AP), _(M,AP), |
319 | | /* 0D40 */ _(M,AP), _(M,AP), _(M,AP), _(M,AP), _(M,AP), _(X,X), _(M,LM), _(M,LM), |
320 | | /* 0D48 */ _(M,LM), _(X,X), _(M,AP), _(M,AP), _(M,AP), _(H,T), _(Rf,X), _(X,X), |
321 | | /* 0D50 */ _(X,X), _(X,X), _(X,X), _(X,X), _(C,C), _(C,C), _(C,C), _(M,AP), |
322 | | /* 0D58 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(V,C), |
323 | | /* 0D60 */ _(V,C), _(V,C), _(M,AP), _(M,AP), _(X,X), _(X,X), _(GB,C), _(GB,C), |
324 | | /* 0D68 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
325 | | /* 0D70 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
326 | | /* 0D78 */ _(X,X), _(X,X), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
327 | | |
328 | 34.5k | #define indic_offset_0x1000u 1216 |
329 | | |
330 | | |
331 | | /* Myanmar */ |
332 | | |
333 | | /* 1000 */ _(C,C), _(C,C), _(C,C), _(C,C), _(R,C), _(C,C), _(C,C), _(C,C), |
334 | | /* 1008 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
335 | | /* 1010 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
336 | | /* 1018 */ _(C,C), _(C,C), _(C,C), _(R,C), _(C,C), _(C,C), _(C,C), _(C,C), |
337 | | /* 1020 */ _(C,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), |
338 | | /* 1028 */ _(V,C), _(V,C), _(V,C), _(VR,R), _(VR,R), _(VA,T), _(VA,T), _(VB,B), |
339 | | /* 1030 */ _(VB,B), _(VL,L), _(A,SM), _(VA,T), _(VA,T), _(VA,T), _(A,SM), _(N,X), |
340 | | /* 1038 */_(SM,SM), _(H,X), _(As,X), _(MY,X), _(MR,X), _(MW,X), _(MH,X), _(C,C), |
341 | | /* 1040 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
342 | | /* 1048 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(X,X), _(X,X), _(C,C), _(X,X), |
343 | | /* 1050 */ _(C,C), _(C,C), _(V,C), _(V,C), _(V,C), _(V,C), _(VR,R), _(VR,R), |
344 | | /* 1058 */ _(VB,B), _(VB,B), _(R,C), _(C,C), _(C,C), _(C,C), _(MY,X), _(MY,X), |
345 | | /* 1060 */ _(ML,X), _(C,C), _(VR,R), _(PT,X), _(PT,X), _(C,C), _(C,C), _(VR,R), |
346 | | /* 1068 */ _(VR,R), _(PT,X), _(PT,X), _(PT,X), _(PT,X), _(PT,X), _(C,C), _(C,C), |
347 | | /* 1070 */ _(C,C), _(VA,T), _(VA,T), _(VA,T), _(VA,T), _(C,C), _(C,C), _(C,C), |
348 | | /* 1078 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
349 | | /* 1080 */ _(C,C), _(C,C), _(MW,X), _(VR,R), _(VL,L), _(VA,T), _(VA,T),_(SM,SM), |
350 | | /* 1088 */_(SM,SM),_(SM,SM),_(SM,SM),_(SM,SM),_(SM,SM),_(SM,SM), _(C,C),_(SM,SM), |
351 | | /* 1090 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
352 | | /* 1098 */ _(GB,C), _(GB,C),_(SM,SM),_(SM,SM),_(SM,SM), _(VA,T), _(X,X), _(X,X), |
353 | | |
354 | 3.98k | #define indic_offset_0x1780u 1376 |
355 | | |
356 | | |
357 | | /* Khmer */ |
358 | | |
359 | | /* 1780 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
360 | | /* 1788 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
361 | | /* 1790 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
362 | | /* 1798 */ _(C,C), _(C,C), _(R,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
363 | | /* 17A0 */ _(C,C), _(C,C), _(C,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), |
364 | | /* 17A8 */ _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), _(V,C), |
365 | | /* 17B0 */ _(V,C), _(V,C), _(V,C), _(V,C), _(X,X), _(X,X), _(VR,R), _(VA,T), |
366 | | /* 17B8 */ _(VA,T), _(VA,T), _(VA,T), _(VB,B), _(VB,B), _(VB,B), _(VA,T), _(VR,R), |
367 | | /* 17C0 */ _(VR,R), _(VL,L), _(VL,L), _(VL,L), _(VR,R), _(VR,R), _(Xg,X), _(Yg,X), |
368 | | /* 17C8 */ _(Yg,X), _(Rt,X), _(Rt,X), _(Xg,X), _(Rt,X), _(Xg,X), _(Xg,X), _(Xg,X), |
369 | | /* 17D0 */ _(Xg,X), _(Xg,X), _(H,X), _(Yg,X), _(X,X), _(X,X), _(X,X), _(X,X), |
370 | | /* 17D8 */ _(X,X), _(GB,C), _(X,X), _(X,X), _(S,SM), _(Yg,X), _(X,X), _(X,X), |
371 | | /* 17E0 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
372 | | /* 17E8 */ _(GB,C), _(GB,C), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
373 | | |
374 | 179 | #define indic_offset_0x1cd0u 1488 |
375 | | |
376 | | |
377 | | /* Vedic Extensions */ |
378 | | |
379 | | /* 1CD0 */ _(A,SM), _(A,SM), _(A,SM), _(X,X), _(A,SM), _(A,SM), _(A,SM), _(A,SM), |
380 | | /* 1CD8 */ _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), |
381 | | /* 1CE0 */ _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), |
382 | | /* 1CE8 */ _(A,SM), _(S,SM), _(S,SM), _(S,SM), _(S,SM), _(A,SM), _(S,SM), _(S,SM), |
383 | | /* 1CF0 */ _(S,SM), _(S,SM), _(C,C), _(C,C), _(A,SM), _(C,C), _(C,C), _(A,SM), |
384 | | /* 1CF8 */ _(A,SM), _(A,SM), _(GB,C), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
385 | | |
386 | 8.81k | #define indic_offset_0x2008u 1536 |
387 | | |
388 | | |
389 | | /* General Punctuation */ |
390 | | |
391 | | /* 2008 */ _(X,X), _(X,X), _(X,X), _(X,X),_(ZWNJ,X),_(ZWJ,X), _(X,X), _(X,X), |
392 | | /* 2010 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(X,X), _(X,X), |
393 | | /* 2018 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
394 | | /* 2020 */ _(X,X), _(X,X), _(GB,C), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
395 | | |
396 | 172 | #define indic_offset_0x2070u 1568 |
397 | | |
398 | | |
399 | | /* Superscripts and Subscripts */ |
400 | | |
401 | | /* 2070 */ _(X,X), _(X,X), _(X,X), _(X,X),_(SM,SM), _(X,X), _(X,X), _(X,X), |
402 | | /* 2078 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), |
403 | | /* 2080 */ _(X,X), _(X,X),_(SM,SM),_(SM,SM),_(SM,SM), _(X,X), _(X,X), _(X,X), |
404 | | |
405 | 60 | #define indic_offset_0x25f8u 1592 |
406 | | |
407 | | |
408 | | /* Geometric Shapes */ |
409 | | |
410 | | /* 25F8 */ _(X,X), _(X,X), _(X,X), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(X,X), |
411 | | |
412 | 449 | #define indic_offset_0xa8e0u 1600 |
413 | | |
414 | | |
415 | | /* Devanagari Extended */ |
416 | | |
417 | | /* A8E0 */ _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), |
418 | | /* A8E8 */ _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), _(A,SM), |
419 | | /* A8F0 */ _(A,SM), _(A,SM), _(S,SM), _(S,SM), _(S,SM), _(S,SM), _(S,SM), _(S,SM), |
420 | | /* A8F8 */ _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(X,X), _(V,C), _(M,AS), |
421 | | |
422 | 69 | #define indic_offset_0xa9e0u 1632 |
423 | | |
424 | | |
425 | | /* Myanmar Extended-B */ |
426 | | |
427 | | /* A9E0 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(VA,T), _(X,X), _(C,C), |
428 | | /* A9E8 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
429 | | /* A9F0 */ _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), _(GB,C), |
430 | | /* A9F8 */ _(GB,C), _(GB,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(X,X), |
431 | | |
432 | 103 | #define indic_offset_0xaa60u 1664 |
433 | | |
434 | | |
435 | | /* Myanmar Extended-A */ |
436 | | |
437 | | /* AA60 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
438 | | /* AA68 */ _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), _(C,C), |
439 | | /* AA70 */ _(X,X), _(C,C), _(C,C), _(C,C), _(GB,C), _(GB,C), _(GB,C), _(X,X), |
440 | | /* AA78 */ _(X,X), _(X,X), _(C,C), _(PT,X), _(N,X), _(N,X), _(C,C), _(C,C), |
441 | | |
442 | 810 | #define indic_offset_0xfe00u 1696 |
443 | | |
444 | | |
445 | | /* Variation Selectors */ |
446 | | |
447 | | /* FE00 */ _(VS,X), _(VS,X), _(VS,X), _(VS,X), _(VS,X), _(VS,X), _(VS,X), _(VS,X), |
448 | | /* FE08 */ _(VS,X), _(VS,X), _(VS,X), _(VS,X), _(VS,X), _(VS,X), _(VS,X), _(VS,X), |
449 | | |
450 | 4 | #define indic_offset_0x11300u 1712 |
451 | | |
452 | | |
453 | | /* Grantha */ |
454 | | |
455 | | /* 11300 */ _(X,X),_(SM,SM),_(SM,SM),_(SM,SM), _(X,X), _(X,X), _(X,X), _(X,X), |
456 | | |
457 | 24 | #define indic_offset_0x11338u 1720 |
458 | | |
459 | | /* 11338 */ _(X,X), _(X,X), _(X,X), _(N,X), _(N,X), _(X,X), _(X,X), _(X,X), |
460 | | |
461 | | }; /* Table items: 1728; occupancy: 71% */ |
462 | | |
463 | | uint16_t |
464 | | hb_indic_get_categories (hb_codepoint_t u) |
465 | 543k | { |
466 | 543k | switch (u >> 12) |
467 | 543k | { |
468 | 207k | case 0x0u: |
469 | 207k | if (unlikely (u == 0x00A0u)) return _(GB,C); |
470 | 207k | if (hb_in_range<hb_codepoint_t> (u, 0x0028u, 0x003Fu)) return indic_table[u - 0x0028u + indic_offset_0x0028u]; |
471 | 201k | if (hb_in_range<hb_codepoint_t> (u, 0x00B0u, 0x00D7u)) return indic_table[u - 0x00B0u + indic_offset_0x00b0u]; |
472 | 199k | if (hb_in_range<hb_codepoint_t> (u, 0x0900u, 0x0D7Fu)) return indic_table[u - 0x0900u + indic_offset_0x0900u]; |
473 | 81.1k | break; |
474 | | |
475 | 81.1k | case 0x1u: |
476 | 51.2k | if (hb_in_range<hb_codepoint_t> (u, 0x1000u, 0x109Fu)) return indic_table[u - 0x1000u + indic_offset_0x1000u]; |
477 | 16.6k | if (hb_in_range<hb_codepoint_t> (u, 0x1780u, 0x17EFu)) return indic_table[u - 0x1780u + indic_offset_0x1780u]; |
478 | 12.6k | if (hb_in_range<hb_codepoint_t> (u, 0x1CD0u, 0x1CFFu)) return indic_table[u - 0x1CD0u + indic_offset_0x1cd0u]; |
479 | 12.5k | break; |
480 | | |
481 | 16.4k | case 0x2u: |
482 | 16.4k | if (unlikely (u == 0x25CCu)) return _(DC,C); |
483 | 14.7k | if (hb_in_range<hb_codepoint_t> (u, 0x2008u, 0x2027u)) return indic_table[u - 0x2008u + indic_offset_0x2008u]; |
484 | 5.92k | if (hb_in_range<hb_codepoint_t> (u, 0x2070u, 0x2087u)) return indic_table[u - 0x2070u + indic_offset_0x2070u]; |
485 | 5.74k | if (hb_in_range<hb_codepoint_t> (u, 0x25F8u, 0x25FFu)) return indic_table[u - 0x25F8u + indic_offset_0x25f8u]; |
486 | 5.68k | break; |
487 | | |
488 | 5.68k | case 0xAu: |
489 | 1.13k | if (hb_in_range<hb_codepoint_t> (u, 0xA8E0u, 0xA8FFu)) return indic_table[u - 0xA8E0u + indic_offset_0xa8e0u]; |
490 | 682 | if (hb_in_range<hb_codepoint_t> (u, 0xA9E0u, 0xA9FFu)) return indic_table[u - 0xA9E0u + indic_offset_0xa9e0u]; |
491 | 613 | if (hb_in_range<hb_codepoint_t> (u, 0xAA60u, 0xAA7Fu)) return indic_table[u - 0xAA60u + indic_offset_0xaa60u]; |
492 | 510 | break; |
493 | | |
494 | 224k | case 0xFu: |
495 | 224k | if (hb_in_range<hb_codepoint_t> (u, 0xFE00u, 0xFE0Fu)) return indic_table[u - 0xFE00u + indic_offset_0xfe00u]; |
496 | 223k | break; |
497 | | |
498 | 223k | case 0x11u: |
499 | 215 | if (hb_in_range<hb_codepoint_t> (u, 0x11300u, 0x11307u)) return indic_table[u - 0x11300u + indic_offset_0x11300u]; |
500 | 211 | if (hb_in_range<hb_codepoint_t> (u, 0x11338u, 0x1133Fu)) return indic_table[u - 0x11338u + indic_offset_0x11338u]; |
501 | 187 | break; |
502 | | |
503 | 42.8k | default: |
504 | 42.8k | break; |
505 | 543k | } |
506 | 366k | return _(X,X); |
507 | 543k | } |
508 | | |
509 | | #undef _ |
510 | | #undef INDIC_COMBINE_CATEGORIES |
511 | | |
512 | | #undef _OT_A |
513 | | #undef _OT_As |
514 | | #undef _OT_C |
515 | | #undef _OT_CM |
516 | | #undef _OT_CS |
517 | | #undef _OT_DC |
518 | | #undef _OT_H |
519 | | #undef _OT_M |
520 | | #undef _OT_MH |
521 | | #undef _OT_ML |
522 | | #undef _OT_MP |
523 | | #undef _OT_MR |
524 | | #undef _OT_MW |
525 | | #undef _OT_MY |
526 | | #undef _OT_N |
527 | | #undef _OT_GB |
528 | | #undef _OT_PT |
529 | | #undef _OT_R |
530 | | #undef _OT_Rf |
531 | | #undef _OT_Rt |
532 | | #undef _OT_SM |
533 | | #undef _OT_S |
534 | | #undef _OT_V |
535 | | #undef _OT_VA |
536 | | #undef _OT_VB |
537 | | #undef _OT_VL |
538 | | #undef _OT_VR |
539 | | #undef _OT_VS |
540 | | #undef _OT_X |
541 | | #undef _OT_Xg |
542 | | #undef _OT_Yg |
543 | | #undef _OT_ZWJ |
544 | | #undef _OT_ZWNJ |
545 | | |
546 | | #undef _POS_T |
547 | | #undef _POS_A |
548 | | #undef _POS_AP |
549 | | #undef _POS_AS |
550 | | #undef _POS_C |
551 | | #undef _POS_BS |
552 | | #undef _POS_B |
553 | | #undef _POS_X |
554 | | #undef _POS_R |
555 | | #undef _POS_L |
556 | | #undef _POS_LM |
557 | | #undef _POS_SM |
558 | | |
559 | | #endif |
560 | | |
561 | | /* == End of generated table == */ |