source: icGREP/icgrep-devel/icgrep/UCD/BidiBrackets.h @ 5672

Last change on this file since 5672 was 5663, checked in by cameron, 23 months ago

Enabling Unicode string properties for \p{prop=string} search

File size: 8.9 KB
Line 
1#ifndef BIDIBRACKETS_H
2#define BIDIBRACKETS_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 BPB_ns {
18        /** Code Point Ranges for bpb mapping to <none>
19        [0000, 0027], [002a, 005a], [005c, 005c], [005e, 007a],
20        [007c, 007c], [007e, 0f39], [0f3e, 169a], [169d, 2044],
21        [2047, 207c], [207f, 208c], [208f, 2307], [230c, 2328],
22        [232b, 2767], [2776, 27c4], [27c7, 27e5], [27f0, 2982],
23        [2999, 29d7], [29dc, 29fb], [29fe, 2e21], [2e2a, 3007],
24        [3012, 3013], [301c, fe58], [fe5f, ff07], [ff0a, ff3a],
25        [ff3c, ff3c], [ff3e, ff5a], [ff5c, ff5c], [ff5e, ff5e],
26        [ff61, ff61], [ff64, 10ffff]**/
27
28        const UnicodeSet null_codepoint_set
29                    {{{Full, 1}, {Mixed, 3}, {Full, 117}, {Mixed, 1}, {Full, 58},
30              {Mixed, 1}, {Full, 77}, {Mixed, 3}, {Full, 19}, {Mixed, 2},
31              {Full, 33}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 12},
32              {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 33}, {Mixed, 1},
33              {Full, 14}, {Mixed, 1}, {Full, 1649}, {Mixed, 1}, {Full, 5},
34              {Mixed, 4}, {Full, 32772}},
35             {0xfffffcff, 0xd7ffffff, 0xd7ffffff, 0xc3ffffff, 0xe7ffffff,
36              0xffffff9f, 0x9fffffff, 0xffff9fff, 0xfffff0ff, 0xfffff9ff,
37              0xffc000ff, 0xffffff9f, 0xffff003f, 0xfe000007, 0xf0ffffff,
38              0xcfffffff, 0xfffffc03, 0xf00c00ff, 0x81ffffff, 0xfffffcff,
39              0xd7ffffff, 0x57ffffff, 0xfffffff2}};
40
41        /** Code Point Ranges for bpb mapping to <codepoint>
42        **/
43        const UnicodeSet reflexive_set
44                    {{{Empty, 34816}},
45             {}};
46
47        const unsigned buffer_length = 468;
48        const static char __attribute__ ((aligned (32))) string_buffer[512] = u8R"__()
49(
50]
51[
52}
53{
54àŒ»
55àŒº
56àŒœ
57àŒŒ
58᚜
59᚛
60⁆
61⁅
62 
63⁜
64₎
65₍
66⌉
67⌈
68⌋
69⌊
70〉
71〈
72❩
73❚
74❫
75❪
76❭
77❬
78❯
79❮
80❱
81❰
82❳
83❲
84❵
85❎
86⟆
87⟅
88⟧
89⟩
90⟩
91⟹
92⟫
93⟪
94⟭
95⟬
96⟯
97⟮
98⩄
99⊃
100⩆
101⩅
102⊈
103⩇
104⩊
105⩉
106⩌
107⩋
108⊐
109⊏
110⊎
111⊍
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
164
165
166
167
168)__";
169
170        const static std::vector<codepoint_t> defined_cps = {
171        0x0028, 0x0029, 0x005b, 0x005d, 0x007b, 0x007d, 0x0f3a, 0x0f3b,
172        0x0f3c, 0x0f3d, 0x169b, 0x169c, 0x2045, 0x2046, 0x207d, 0x207e,
173        0x208d, 0x208e, 0x2308, 0x2309, 0x230a, 0x230b, 0x2329, 0x232a,
174        0x2768, 0x2769, 0x276a, 0x276b, 0x276c, 0x276d, 0x276e, 0x276f,
175        0x2770, 0x2771, 0x2772, 0x2773, 0x2774, 0x2775, 0x27c5, 0x27c6,
176        0x27e6, 0x27e7, 0x27e8, 0x27e9, 0x27ea, 0x27eb, 0x27ec, 0x27ed,
177        0x27ee, 0x27ef, 0x2983, 0x2984, 0x2985, 0x2986, 0x2987, 0x2988,
178        0x2989, 0x298a, 0x298b, 0x298c, 0x298d, 0x298e, 0x298f, 0x2990,
179        0x2991, 0x2992, 0x2993, 0x2994, 0x2995, 0x2996, 0x2997, 0x2998,
180        0x29d8, 0x29d9, 0x29da, 0x29db, 0x29fc, 0x29fd, 0x2e22, 0x2e23,
181        0x2e24, 0x2e25, 0x2e26, 0x2e27, 0x2e28, 0x2e29, 0x3008, 0x3009,
182        0x300a, 0x300b, 0x300c, 0x300d, 0x300e, 0x300f, 0x3010, 0x3011,
183        0x3014, 0x3015, 0x3016, 0x3017, 0x3018, 0x3019, 0x301a, 0x301b,
184        0xfe59, 0xfe5a, 0xfe5b, 0xfe5c, 0xfe5d, 0xfe5e, 0xff08, 0xff09,
185        0xff3b, 0xff3d, 0xff5b, 0xff5d, 0xff5f, 0xff60, 0xff62, 0xff63};
186        static StringPropertyObject property_object(bpb, 
187                                                    null_codepoint_set, 
188                                                    reflexive_set, 
189                                                    static_cast<const char *>(string_buffer), 
190                                                    buffer_length, 
191                                                    defined_cps);
192    }
193  namespace BPT_ns {
194    const unsigned independent_prop_values = 3;
195    /** Code Point Ranges for n
196    [0000, 0027], [002a, 005a], [005c, 005c], [005e, 007a], [007c, 007c],
197    [007e, 0f39], [0f3e, 169a], [169d, 2044], [2047, 207c], [207f, 208c],
198    [208f, 2307], [230c, 2328], [232b, 2767], [2776, 27c4], [27c7, 27e5],
199    [27f0, 2982], [2999, 29d7], [29dc, 29fb], [29fe, 2e21], [2e2a, 3007],
200    [3012, 3013], [301c, fe58], [fe5f, ff07], [ff0a, ff3a], [ff3c, ff3c],
201    [ff3e, ff5a], [ff5c, ff5c], [ff5e, ff5e], [ff61, ff61], [ff64, 10ffff]**/
202    const UnicodeSet n_Set
203        {{{Full, 1}, {Mixed, 3}, {Full, 117}, {Mixed, 1}, {Full, 58},
204          {Mixed, 1}, {Full, 77}, {Mixed, 3}, {Full, 19}, {Mixed, 2},
205          {Full, 33}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 12},
206          {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 33}, {Mixed, 1},
207          {Full, 14}, {Mixed, 1}, {Full, 1649}, {Mixed, 1}, {Full, 5},
208          {Mixed, 4}, {Full, 32772}},
209         {0xfffffcff, 0xd7ffffff, 0xd7ffffff, 0xc3ffffff, 0xe7ffffff,
210          0xffffff9f, 0x9fffffff, 0xffff9fff, 0xfffff0ff, 0xfffff9ff,
211          0xffc000ff, 0xffffff9f, 0xffff003f, 0xfe000007, 0xf0ffffff,
212          0xcfffffff, 0xfffffc03, 0xf00c00ff, 0x81ffffff, 0xfffffcff,
213          0xd7ffffff, 0x57ffffff, 0xfffffff2}};
214    /** Code Point Ranges for o
215    [0028, 0028], [005b, 005b], [007b, 007b], [0f3a, 0f3a], [0f3c, 0f3c],
216    [169b, 169b], [2045, 2045], [207d, 207d], [208d, 208d], [2308, 2308],
217    [230a, 230a], [2329, 2329], [2768, 2768], [276a, 276a], [276c, 276c],
218    [276e, 276e], [2770, 2770], [2772, 2772], [2774, 2774], [27c5, 27c5],
219    [27e6, 27e6], [27e8, 27e8], [27ea, 27ea], [27ec, 27ec], [27ee, 27ee],
220    [2983, 2983], [2985, 2985], [2987, 2987], [2989, 2989], [298b, 298b],
221    [298d, 298d], [298f, 298f], [2991, 2991], [2993, 2993], [2995, 2995],
222    [2997, 2997], [29d8, 29d8], [29da, 29da], [29fc, 29fc], [2e22, 2e22],
223    [2e24, 2e24], [2e26, 2e26], [2e28, 2e28], [3008, 3008], [300a, 300a],
224    [300c, 300c], [300e, 300e], [3010, 3010], [3014, 3014], [3016, 3016],
225    [3018, 3018], [301a, 301a], [fe59, fe59], [fe5b, fe5b], [fe5d, fe5d],
226    [ff08, ff08], [ff3b, ff3b], [ff5b, ff5b], [ff5f, ff5f], [ff62, ff62]**/
227    const UnicodeSet o_Set
228        {{{Empty, 1}, {Mixed, 3}, {Empty, 117}, {Mixed, 1}, {Empty, 58},
229          {Mixed, 1}, {Empty, 77}, {Mixed, 3}, {Empty, 19}, {Mixed, 2},
230          {Empty, 33}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 12},
231          {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 33}, {Mixed, 1},
232          {Empty, 14}, {Mixed, 1}, {Empty, 1649}, {Mixed, 1}, {Empty, 5},
233          {Mixed, 4}, {Empty, 32772}},
234         {0x00000100, 0x08000000, 0x08000000, 0x14000000, 0x08000000,
235          0x00000020, 0x20000000, 0x00002000, 0x00000500, 0x00000200,
236          0x00155500, 0x00000020, 0x00005540, 0x00aaaaa8, 0x05000000,
237          0x10000000, 0x00000154, 0x05515500, 0x2a000000, 0x00000100,
238          0x08000000, 0x88000000, 0x00000004}};
239    /** Code Point Ranges for c
240    [0029, 0029], [005d, 005d], [007d, 007d], [0f3b, 0f3b], [0f3d, 0f3d],
241    [169c, 169c], [2046, 2046], [207e, 207e], [208e, 208e], [2309, 2309],
242    [230b, 230b], [232a, 232a], [2769, 2769], [276b, 276b], [276d, 276d],
243    [276f, 276f], [2771, 2771], [2773, 2773], [2775, 2775], [27c6, 27c6],
244    [27e7, 27e7], [27e9, 27e9], [27eb, 27eb], [27ed, 27ed], [27ef, 27ef],
245    [2984, 2984], [2986, 2986], [2988, 2988], [298a, 298a], [298c, 298c],
246    [298e, 298e], [2990, 2990], [2992, 2992], [2994, 2994], [2996, 2996],
247    [2998, 2998], [29d9, 29d9], [29db, 29db], [29fd, 29fd], [2e23, 2e23],
248    [2e25, 2e25], [2e27, 2e27], [2e29, 2e29], [3009, 3009], [300b, 300b],
249    [300d, 300d], [300f, 300f], [3011, 3011], [3015, 3015], [3017, 3017],
250    [3019, 3019], [301b, 301b], [fe5a, fe5a], [fe5c, fe5c], [fe5e, fe5e],
251    [ff09, ff09], [ff3d, ff3d], [ff5d, ff5d], [ff60, ff60], [ff63, ff63]**/
252    const UnicodeSet c_Set
253        {{{Empty, 1}, {Mixed, 3}, {Empty, 117}, {Mixed, 1}, {Empty, 58},
254          {Mixed, 1}, {Empty, 77}, {Mixed, 3}, {Empty, 19}, {Mixed, 2},
255          {Empty, 33}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 12},
256          {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 33}, {Mixed, 1},
257          {Empty, 14}, {Mixed, 1}, {Empty, 1649}, {Mixed, 1}, {Empty, 5},
258          {Mixed, 4}, {Empty, 32772}},
259         {0x00000200, 0x20000000, 0x20000000, 0x28000000, 0x10000000,
260          0x00000040, 0x40000000, 0x00004000, 0x00000a00, 0x00000400,
261          0x002aaa00, 0x00000040, 0x0000aa80, 0x01555550, 0x0a000000,
262          0x20000000, 0x000002a8, 0x0aa2aa00, 0x54000000, 0x00000200,
263          0x20000000, 0x20000000, 0x00000009}};
264    static EnumeratedPropertyObject property_object
265        {bpt,
266         BPT_ns::independent_prop_values,
267         BPT_ns::enum_names,
268         BPT_ns::value_names,
269         BPT_ns::aliases_only_map,
270         {&n_Set, &o_Set, &c_Set
271         }};
272    }
273}
274
275
276#endif
Note: See TracBrowser for help on using the repository browser.