source: icGREP/icgrep-devel/icgrep/UCD/SpecialCasing.h @ 5670

Last change on this file since 5670 was 5670, checked in by cameron, 21 months ago

Numeric Property Support and missing SpecialCasing?.h file

File size: 8.1 KB
Line 
1#ifndef SPECIALCASING_H
2#define SPECIALCASING_H
3/*
4 *  Copyright (c) 2017 International Characters, Inc.
5 *  This software is licensed to the public under the Open Software License 3.0.
6 *  icgrep is a trademark of International Characters, Inc.
7 *
8 *  This file is generated by UCD_properties.py - manual edits may be lost.
9 */
10
11#include "PropertyAliases.h"
12#include "PropertyObjects.h"
13#include "PropertyValueAliases.h"
14#include "unicode_set.h"
15
16namespace UCD {
17    namespace LC_ns {
18        /** Code Point Ranges for lc mapping to <none>
19        **/
20
21        const UnicodeSet null_codepoint_set
22                    {{{Empty, 34816}},
23             {}};
24
25        /** Code Point Ranges for lc mapping to <codepoint>
26        [0000, 012f], [0131, 1f87], [1f90, 1f97], [1fa0, 1fa7],
27        [1fb0, 1fbb], [1fbd, 1fcb], [1fcd, 1ffb], [1ffd, 10ffff]**/
28        const UnicodeSet reflexive_set
29                    {{{Full, 9}, {Mixed, 1}, {Full, 242}, {Mixed, 4}, {Full, 34560}},
30             {0xfffeffff, 0x00ff00ff, 0xefff00ff, 0xffffefff, 0xefffffff}};
31
32        const unsigned buffer_length = 112;
33        const static char __attribute__ ((aligned (32))) string_buffer[256] = u8R"__(i̇
34ៀ
35េ
36ែ
37ៃ
38ោ
39ៅ
40ំ
41ះ
42័
43៑
44្
45៓
46។
47៕
48៖
49ៗ
50០
51១
52២
53៣
54ៀ
55៥
56៊
57៧
58៳
59ῃ
60ῳ
61)__";
62
63        const static std::vector<codepoint_t> defined_cps = {
64        0x0130, 0x1f88, 0x1f89, 0x1f8a, 0x1f8b, 0x1f8c, 0x1f8d, 0x1f8e,
65        0x1f8f, 0x1f98, 0x1f99, 0x1f9a, 0x1f9b, 0x1f9c, 0x1f9d, 0x1f9e,
66        0x1f9f, 0x1fa8, 0x1fa9, 0x1faa, 0x1fab, 0x1fac, 0x1fad, 0x1fae,
67        0x1faf, 0x1fbc, 0x1fcc, 0x1ffc};
68        static StringPropertyObject property_object(lc, 
69                                                    null_codepoint_set, 
70                                                    reflexive_set, 
71                                                    static_cast<const char *>(string_buffer), 
72                                                    buffer_length, 
73                                                    defined_cps);
74    }
75    namespace UC_ns {
76        /** Code Point Ranges for uc mapping to <none>
77        **/
78
79        const UnicodeSet null_codepoint_set
80                    {{{Empty, 34816}},
81             {}};
82
83        /** Code Point Ranges for uc mapping to <codepoint>
84        [0000, 00de], [00e0, 0148], [014a, 01ef], [01f1, 038f],
85        [0391, 03af], [03b1, 0586], [0588, 1e95], [1e9b, 1f4f],
86        [1f51, 1f51], [1f53, 1f53], [1f55, 1f55], [1f57, 1f7f],
87        [1f88, 1f8f], [1f98, 1f9f], [1fa8, 1fb1], [1fb5, 1fb5],
88        [1fb8, 1fc1], [1fc5, 1fc5], [1fc8, 1fd1], [1fd4, 1fd5],
89        [1fd8, 1fe1], [1fe5, 1fe5], [1fe8, 1ff1], [1ff5, 1ff5],
90        [1ff8, faff], [fb07, fb12], [fb18, 10ffff]**/
91        const UnicodeSet reflexive_set
92                    {{{Full, 6}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 4},
93              {Mixed, 1}, {Full, 12}, {Mixed, 2}, {Full, 14}, {Mixed, 1},
94              {Full, 199}, {Mixed, 1}, {Full, 5}, {Mixed, 1}, {Full, 1},
95              {Mixed, 4}, {Full, 1752}, {Mixed, 1}, {Full, 32807}},
96             {0x7fffffff, 0xfffffdff, 0xfffeffff, 0xfffeffff, 0xfffeffff,
97              0xffffff7f, 0xf83fffff, 0xffaaffff, 0xff00ff00, 0xff23ff00,
98              0xff33ff23, 0xff23ff23, 0xff07ff80}};
99
100        const unsigned buffer_length = 358;
101        const static char __attribute__ ((aligned (32))) string_buffer[512] = u8R"__(Ss
102ÊŒN
103J̌
104Ϊ́
105Ϋ́
106Եւ
107H̱
108T̈
109W̊
110Y̊
111AÊŸ
112Υ̓
113Υ̓̀
114Υ̓́
115Υ̓͂
116ៈ
117៉
118៊
119់
120៌
121៍
122៎
123៏
124៘
125៙
126៚
127៛
128ៜ
129៝
130៞
131៟
132៚
133៩
134៪
135៫
136៬
137៭
138៮
139៯
140៺ͅ
141៌
142Άͅ
143Α͂
144ᾼ͂
145Ὴͅ
146ῌ
147Ήͅ
148Η͂
149ῌ͂
150Ϊ̀
151Ϊ́
152Ι͂
153Ϊ͂
154Ϋ̀
155Ϋ́
156Ρ̓
157Υ͂
158Ϋ͂
159Ὼͅ
160ῌ
161Ώͅ
162Ω͂
163ῼ͂
164Ff
165Fi
166Fl
167Ffi
168Ffl
169St
170St
171Մն
172Մե
173Մի
174Վն
175Մխ
176)__";
177
178        const static std::vector<codepoint_t> defined_cps = {
179        0x00df, 0x0149, 0x01f0, 0x0390, 0x03b0, 0x0587, 0x1e96, 0x1e97,
180        0x1e98, 0x1e99, 0x1e9a, 0x1f50, 0x1f52, 0x1f54, 0x1f56, 0x1f80,
181        0x1f81, 0x1f82, 0x1f83, 0x1f84, 0x1f85, 0x1f86, 0x1f87, 0x1f90,
182        0x1f91, 0x1f92, 0x1f93, 0x1f94, 0x1f95, 0x1f96, 0x1f97, 0x1fa0,
183        0x1fa1, 0x1fa2, 0x1fa3, 0x1fa4, 0x1fa5, 0x1fa6, 0x1fa7, 0x1fb2,
184        0x1fb3, 0x1fb4, 0x1fb6, 0x1fb7, 0x1fc2, 0x1fc3, 0x1fc4, 0x1fc6,
185        0x1fc7, 0x1fd2, 0x1fd3, 0x1fd6, 0x1fd7, 0x1fe2, 0x1fe3, 0x1fe4,
186        0x1fe6, 0x1fe7, 0x1ff2, 0x1ff3, 0x1ff4, 0x1ff6, 0x1ff7, 0xfb00,
187        0xfb01, 0xfb02, 0xfb03, 0xfb04, 0xfb05, 0xfb06, 0xfb13, 0xfb14,
188        0xfb15, 0xfb16, 0xfb17};
189        static StringPropertyObject property_object(uc, 
190                                                    null_codepoint_set, 
191                                                    reflexive_set, 
192                                                    static_cast<const char *>(string_buffer), 
193                                                    buffer_length, 
194                                                    defined_cps);
195    }
196    namespace TC_ns {
197        /** Code Point Ranges for tc mapping to <none>
198        **/
199
200        const UnicodeSet null_codepoint_set
201                    {{{Empty, 34816}},
202             {}};
203
204        /** Code Point Ranges for tc mapping to <codepoint>
205        [0000, 00de], [00e0, 0148], [014a, 01ef], [01f1, 038f],
206        [0391, 03af], [03b1, 0586], [0588, 1e95], [1e9b, 1f4f],
207        [1f51, 1f51], [1f53, 1f53], [1f55, 1f55], [1f57, 1f7f],
208        [1fb0, 1fb1], [1fb5, 1fb5], [1fb8, 1fbb], [1fbd, 1fc1],
209        [1fc5, 1fc5], [1fc8, 1fcb], [1fcd, 1fd1], [1fd4, 1fd5],
210        [1fd8, 1fe1], [1fe5, 1fe5], [1fe8, 1ff1], [1ff5, 1ff5],
211        [1ff8, 1ffb], [1ffd, faff], [fb07, fb12], [fb18, 10ffff]**/
212        const UnicodeSet reflexive_set
213                    {{{Full, 6}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 4},
214              {Mixed, 1}, {Full, 12}, {Mixed, 2}, {Full, 14}, {Mixed, 1},
215              {Full, 199}, {Mixed, 1}, {Full, 5}, {Mixed, 1}, {Full, 1},
216              {Empty, 1}, {Mixed, 3}, {Full, 1752}, {Mixed, 1},
217              {Full, 32807}},
218             {0x7fffffff, 0xfffffdff, 0xfffeffff, 0xfffeffff, 0xfffeffff,
219              0xffffff7f, 0xf83fffff, 0xffaaffff, 0xef230000, 0xff33ef23,
220              0xef23ff23, 0xff07ff80}};
221
222        const unsigned buffer_length = 568;
223        const static char __attribute__ ((aligned (32))) string_buffer[768] = u8R"__(SS
224ÊŒN
225J̌
226Ϊ́
227Ϋ́
228ԵՒ
229H̱
230T̈
231W̊
232Y̊
233AÊŸ
234Υ̓
235Υ̓̀
236Υ̓́
237Υ̓͂
238ገΙ
239ጉΙ
240ጊΙ
241ጋΙ
242ጌΙ
243ግΙ
244ጎΙ
245ጏΙ
246ገΙ
247ጉΙ
248ጊΙ
249ጋΙ
250ጌΙ
251ግΙ
252ጎΙ
253ጏΙ
254ጚΙ
255ጩΙ
256ጪΙ
257ጫΙ
258ጬΙ
259ጭΙ
260ጮΙ
261ጯΙ
262ጚΙ
263ጩΙ
264ጪΙ
265ጫΙ
266ጬΙ
267ጭΙ
268ጮΙ
269ጯΙ
270᜚Ι
271ᜩΙ
272ᜪΙ
273ᜫΙ
274ᜬΙ
275ᜭΙ
276ᜮΙ
277ᜯΙ
278᜚Ι
279ᜩΙ
280ᜪΙ
281ᜫΙ
282ᜬΙ
283ᜭΙ
284ᜮΙ
285ᜯΙ
286៺Ι
287ΑΙ
288ΆΙ
289Α͂
290Α͂Ι
291ΑΙ
292ῊΙ
293ΗΙ
294ΉΙ
295Η͂
296Η͂Ι
297ΗΙ
298Ϊ̀
299Ϊ́
300Ι͂
301Ϊ͂
302Ϋ̀
303Ϋ́
304Ρ̓
305Υ͂
306Ϋ͂
307ῺΙ
308ΩΙ
309ΏΙ
310Ω͂
311Ω͂Ι
312ΩΙ
313FF
314FI
315FL
316FFI
317FFL
318ST
319ST
320ՄՆ
321ՄԵ
322ՄԻ
323ՎՆ
324ՄԜ
325)__";
326
327        const static std::vector<codepoint_t> defined_cps = {
328        0x00df, 0x0149, 0x01f0, 0x0390, 0x03b0, 0x0587, 0x1e96, 0x1e97,
329        0x1e98, 0x1e99, 0x1e9a, 0x1f50, 0x1f52, 0x1f54, 0x1f56, 0x1f80,
330        0x1f81, 0x1f82, 0x1f83, 0x1f84, 0x1f85, 0x1f86, 0x1f87, 0x1f88,
331        0x1f89, 0x1f8a, 0x1f8b, 0x1f8c, 0x1f8d, 0x1f8e, 0x1f8f, 0x1f90,
332        0x1f91, 0x1f92, 0x1f93, 0x1f94, 0x1f95, 0x1f96, 0x1f97, 0x1f98,
333        0x1f99, 0x1f9a, 0x1f9b, 0x1f9c, 0x1f9d, 0x1f9e, 0x1f9f, 0x1fa0,
334        0x1fa1, 0x1fa2, 0x1fa3, 0x1fa4, 0x1fa5, 0x1fa6, 0x1fa7, 0x1fa8,
335        0x1fa9, 0x1faa, 0x1fab, 0x1fac, 0x1fad, 0x1fae, 0x1faf, 0x1fb2,
336        0x1fb3, 0x1fb4, 0x1fb6, 0x1fb7, 0x1fbc, 0x1fc2, 0x1fc3, 0x1fc4,
337        0x1fc6, 0x1fc7, 0x1fcc, 0x1fd2, 0x1fd3, 0x1fd6, 0x1fd7, 0x1fe2,
338        0x1fe3, 0x1fe4, 0x1fe6, 0x1fe7, 0x1ff2, 0x1ff3, 0x1ff4, 0x1ff6,
339        0x1ff7, 0x1ffc, 0xfb00, 0xfb01, 0xfb02, 0xfb03, 0xfb04, 0xfb05,
340        0xfb06, 0xfb13, 0xfb14, 0xfb15, 0xfb16, 0xfb17};
341        static StringPropertyObject property_object(tc, 
342                                                    null_codepoint_set, 
343                                                    reflexive_set, 
344                                                    static_cast<const char *>(string_buffer), 
345                                                    buffer_length, 
346                                                    defined_cps);
347    }
348}
349
350
351#endif
Note: See TracBrowser for help on using the repository browser.