source: icGREP/icgrep-devel/icgrep/UCD/DerivedNumericType.h @ 6161

Last change on this file since 6161 was 5751, checked in by cameron, 19 months ago

LLVM_ALIGNAS placement, eliminate std::move of temp objects to allow copy elision

File size: 19.7 KB
Line 
1#ifndef DERIVEDNUMERICTYPE_H
2#define DERIVEDNUMERICTYPE_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 NT_ns {
18    const unsigned independent_prop_values = 4;
19    /** Code Point Ranges for None
20    [0000, 002f], [003a, 00b1], [00b4, 00b8], [00ba, 00bb], [00bf, 065f],
21    [066a, 06ef], [06fa, 07bf], [07ca, 0965], [0970, 09e5], [09f0, 09f3],
22    [09fa, 0a65], [0a70, 0ae5], [0af0, 0b65], [0b70, 0b71], [0b78, 0be5],
23    [0bf3, 0c65], [0c70, 0c77], [0c7f, 0ce5], [0cf0, 0d57], [0d5f, 0d65],
24    [0d79, 0de5], [0df0, 0e4f], [0e5a, 0ecf], [0eda, 0f1f], [0f34, 103f],
25    [104a, 108f], [109a, 1368], [137d, 16ed], [16f1, 17df], [17ea, 17ef],
26    [17fa, 180f], [181a, 1945], [1950, 19cf], [19db, 1a7f], [1a8a, 1a8f],
27    [1a9a, 1b4f], [1b5a, 1baf], [1bba, 1c3f], [1c4a, 1c4f], [1c5a, 206f],
28    [2071, 2073], [207a, 207f], [208a, 214f], [2183, 2184], [218a, 245f],
29    [249c, 24e9], [2500, 2775], [2794, 2cfc], [2cfe, 3006], [3008, 3020],
30    [302a, 3037], [303b, 3191], [3196, 321f], [322a, 3247], [3250, 3250],
31    [3260, 327f], [328a, 32b0], [32c0, 3404], [3406, 3482], [3484, 3829],
32    [382b, 3b4c], [3b4e, 4dff], [4e01, 4e02], [4e04, 4e06], [4e08, 4e08],
33    [4e0a, 4e5c], [4e5e, 4e8b], [4e8d, 4e93], [4e95, 4e95], [4e97, 4ebe],
34    [4ec1, 4ede], [4ee0, 4ee7], [4ee9, 4f0c], [4f0e, 4f6f], [4f71, 5103],
35    [5105, 5145], [5147, 5168], [516a, 516a], [516c, 516c], [516e, 5340],
36    [5342, 5342], [5346, 534b], [534d, 53c0], [53c5, 56da], [56dc, 58f0],
37    [58f2, 58f8], [58fa, 5e79], [5e7b, 5efd], [5f00, 5f0b], [5f0f, 5f0f],
38    [5f11, 62fd], [62ff, 634b], [634d, 67d1], [67d3, 6f05], [6f07, 7395],
39    [7397, 767d], [767f, 8085], [8087, 842b], [842d, 8cad], [8caf, 8cb2],
40    [8cb4, 8d2f], [8d31, 9620], [9622, 9645], [9647, 964b], [964d, 9677],
41    [9679, 96f5], [96f7, a61f], [a62a, a6e5], [a6f0, a82f], [a836, a8cf],
42    [a8da, a8ff], [a90a, a9cf], [a9da, a9ef], [a9fa, aa4f], [aa5a, abef],
43    [abfa, f96a], [f96c, f972], [f974, f977], [f979, f9b1], [f9b3, f9d0],
44    [f9d2, f9d2], [f9d4, f9fc], [f9fe, ff0f], [ff1a, 10106], [10134, 1013f],
45    [10179, 10189], [1018c, 102e0], [102fc, 1031f], [10324, 10340],
46    [10342, 10349], [1034b, 103d0], [103d6, 1049f], [104aa, 10857],
47    [10860, 10878], [10880, 108a6], [108b0, 108fa], [10900, 10915],
48    [1091c, 109bb], [109be, 109bf], [109d0, 109d1], [10a00, 10a3f],
49    [10a48, 10a7c], [10a7f, 10a9c], [10aa0, 10aea], [10af0, 10b57],
50    [10b60, 10b77], [10b80, 10ba8], [10bb0, 10cf9], [10d00, 10e5f],
51    [10e7f, 11051], [11070, 110ef], [110fa, 11135], [11140, 111cf],
52    [111da, 111e0], [111f5, 112ef], [112fa, 1144f], [1145a, 114cf],
53    [114da, 1164f], [1165a, 116bf], [116ca, 1172f], [1173c, 118df],
54    [118f3, 11c4f], [11c6d, 11d4f], [11d5a, 123ff], [1246f, 16a5f],
55    [16a6a, 16b4f], [16b5a, 16b5a], [16b62, 1d35f], [1d372, 1d7cd],
56    [1d800, 1e8c6], [1e8d0, 1e94f], [1e95a, 1f0ff], [1f10d, 20000],
57    [20002, 20063], [20065, 200e1], [200e3, 20120], [20122, 20929],
58    [2092b, 20982], [20984, 2098b], [2098d, 2099b], [2099d, 20ae9],
59    [20aeb, 20afc], [20afe, 20b18], [20b1a, 2238f], [22391, 22997],
60    [22999, 23b1a], [23b1c, 2626c], [2626e, 2f88f], [2f891, 10ffff]**/
61
62
63    namespace {
64    const static UnicodeSet::run_t __none_Set_runs[] = {
65    {Full, 1}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 45}, {Mixed, 1},
66    {Full, 3}, {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Full, 12}, {Mixed, 1},
67    {Full, 3}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 3}, {Mixed, 1},
68    {Full, 3}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 3}, {Mixed, 1},
69    {Full, 3}, {Mixed, 1}, {Full, 2}, {Mixed, 2}, {Full, 3}, {Mixed, 1},
70    {Full, 2}, {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
71    {Full, 8}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 22}, {Mixed, 1},
72    {Full, 27}, {Mixed, 1}, {Full, 7}, {Mixed, 2}, {Full, 9}, {Mixed, 1},
73    {Full, 3}, {Mixed, 1}, {Full, 5}, {Mixed, 1}, {Full, 5}, {Mixed, 1},
74    {Full, 2}, {Mixed, 1}, {Full, 4}, {Mixed, 1}, {Full, 32}, {Mixed, 2},
75    {Full, 5}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Full, 22}, {Empty, 1},
76    {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 19}, {Mixed, 2}, {Full, 42},
77    {Mixed, 1}, {Full, 24}, {Mixed, 2}, {Full, 10}, {Mixed, 1}, {Full, 4},
78    {Mixed, 2}, {Full, 1}, {Mixed, 2}, {Full, 10}, {Mixed, 1}, {Full, 3},
79    {Mixed, 1}, {Full, 28}, {Mixed, 1}, {Full, 24}, {Mixed, 1}, {Full, 149},
80    {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 1}, {Mixed, 5}, {Full, 2},
81    {Mixed, 1}, {Full, 12}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 14},
82    {Mixed, 1}, {Full, 3}, {Mixed, 1}, {Full, 23}, {Mixed, 1}, {Full, 16},
83    {Mixed, 1}, {Full, 43}, {Mixed, 1}, {Full, 3}, {Mixed, 2}, {Full, 30},
84    {Mixed, 1}, {Full, 2}, {Mixed, 1}, {Full, 35}, {Mixed, 1}, {Full, 57},
85    {Mixed, 1}, {Full, 35}, {Mixed, 1}, {Full, 22}, {Mixed, 1}, {Full, 80},
86    {Mixed, 1}, {Full, 28}, {Mixed, 1}, {Full, 67}, {Mixed, 1}, {Full, 3},
87    {Mixed, 1}, {Full, 71}, {Mixed, 3}, {Full, 3}, {Mixed, 1}, {Full, 121},
88    {Mixed, 1}, {Full, 5}, {Mixed, 1}, {Full, 9}, {Mixed, 1}, {Full, 4},
89    {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 5}, {Mixed, 2}, {Full, 2},
90    {Mixed, 1}, {Full, 12}, {Mixed, 1}, {Full, 619}, {Mixed, 1}, {Full, 1},
91    {Mixed, 3}, {Full, 40}, {Mixed, 1}, {Full, 15}, {Mixed, 2}, {Empty, 1},
92    {Mixed, 2}, {Full, 10}, {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 3},
93    {Mixed, 1}, {Full, 6}, {Mixed, 1}, {Full, 28}, {Mixed, 2}, {Full, 1},
94    {Mixed, 1}, {Full, 1}, {Mixed, 2}, {Full, 4}, {Mixed, 2}, {Empty, 1},
95    {Full, 2}, {Mixed, 3}, {Full, 2}, {Mixed, 1}, {Full, 2}, {Mixed, 2},
96    {Full, 1}, {Mixed, 1}, {Full, 9}, {Mixed, 1}, {Full, 11}, {Mixed, 1},
97    {Full, 14}, {Mixed, 2}, {Full, 3}, {Mixed, 1}, {Full, 1}, {Mixed, 1},
98    {Full, 4}, {Mixed, 2}, {Full, 7}, {Mixed, 1}, {Full, 10}, {Mixed, 1},
99    {Full, 3}, {Mixed, 1}, {Full, 11}, {Mixed, 1}, {Full, 3}, {Mixed, 1},
100    {Full, 2}, {Mixed, 1}, {Full, 13}, {Mixed, 1}, {Full, 26}, {Mixed, 2},
101    {Full, 6}, {Mixed, 1}, {Full, 53}, {Empty, 3}, {Mixed, 1}, {Full, 559},
102    {Mixed, 1}, {Full, 6}, {Mixed, 2}, {Full, 831}, {Mixed, 1}, {Full, 34},
103    {Mixed, 1}, {Empty, 1}, {Full, 134}, {Mixed, 1}, {Full, 3}, {Mixed, 1},
104    {Full, 61}, {Mixed, 1}, {Full, 119}, {Mixed, 1}, {Full, 2}, {Mixed, 1},
105    {Full, 3}, {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Full, 63}, {Mixed, 1},
106    {Full, 2}, {Mixed, 1}, {Full, 10}, {Mixed, 2}, {Full, 195}, {Mixed, 1},
107    {Full, 47}, {Mixed, 1}, {Full, 139}, {Mixed, 1}, {Full, 314},
108    {Mixed, 1}, {Full, 1200}, {Mixed, 1}, {Full, 28731}};
109    const static UnicodeSet::bitquad_t  __none_Set_quads[] = {
110    0xfc00ffff, 0x8df3ffff, 0xfffffc00, 0xfc00ffff, 0xfffffc00, 0xffff003f,
111    0xfc0f003f, 0xffff003f, 0xffff003f, 0xff03003f, 0xfff8003f, 0x80ff003f,
112    0xffff003f, 0x80ffffff, 0xfe00003f, 0xffff003f, 0xfc00ffff, 0xfc00ffff,
113    0xfff00000, 0xfffffc00, 0xfc00ffff, 0xe00001ff, 0xfffe3fff, 0xfc00fc00,
114    0xfc00ffff, 0xffff003f, 0xf800ffff, 0xfc00fc00, 0xfc00ffff, 0xfc00ffff,
115    0xfc00fc00, 0xfc0effff, 0xfffffc00, 0x0000ffff, 0xfffffc18, 0xf0000000,
116    0x000003ff, 0x003fffff, 0xfff00000, 0xdfffffff, 0xffffff7f, 0xf8fffc01,
117    0xffc3ffff, 0xfffffc00, 0x000100ff, 0xfffffc00, 0x0001ffff, 0xffffffdf,
118    0xfffffff7, 0xfffffbff, 0xffffdfff, 0xfffffd76, 0xdfffffff, 0xffafefff,
119    0x7fffffff, 0x7ffffffe, 0xfffffeff, 0xffffdfff, 0xfffeffff, 0xffffffef,
120    0xffffffbf, 0xffffd5ff, 0xffffefc5, 0xffffffe1, 0xf7ffffff, 0xfdfdffff,
121    0xfbffffff, 0x3fffffff, 0xfffe8fff, 0xbfffffff, 0xffffefff, 0xfffbffff,
122    0xffffffbf, 0xffbfffff, 0xbfffffff, 0xffffffbf, 0xffffefff, 0xfff7bfff,
123    0xfffeffff, 0xfffffffd, 0xffffefbf, 0xfeffffff, 0xffbfffff, 0xfffffc00,
124    0xffff003f, 0xffc0ffff, 0xfc00ffff, 0xfffffc00, 0xfc00ffff, 0xfc00ffff,
125    0xfc00ffff, 0xfc00ffff, 0xfef7f7ff, 0xfffbffff, 0xfff5ffff, 0xdfffffff,
126    0xfc00ffff, 0x0000007f, 0xfff00000, 0xfe000000, 0xfffff3ff, 0xf0000001,
127    0xfffffff0, 0xfffffbfd, 0xffc1ffff, 0xfffffc00, 0x00ffffff, 0x01ffffff,
128    0xffff007f, 0x07ffffff, 0xf03fffff, 0xcfffffff, 0x00030000, 0xffffff00,
129    0x9fffffff, 0x1fffffff, 0xffff07ff, 0x00ffffff, 0x00ffffff, 0xffff01ff,
130    0x03ffffff, 0x80000000, 0x0003ffff, 0xffff0000, 0xfc00ffff, 0x003fffff,
131    0xfc00ffff, 0xffe00001, 0xfc00ffff, 0xfc00ffff, 0xfc00ffff, 0xfc00ffff,
132    0xfffffc00, 0xf000ffff, 0xfff80000, 0x0000ffff, 0xffffe000, 0xfc00ffff,
133    0xffff8000, 0xfffffc00, 0x0400ffff, 0xfffffffc, 0xfffc0000, 0x00003fff,
134    0xffff007f, 0xfc00ffff, 0xffffe000, 0xfffffffd, 0xffffffef, 0xfffffffb,
135    0xfffffffd, 0xfffffbff, 0xefffeff7, 0xdffffbff, 0xfdffffff, 0xfffeffff,
136    0xfeffffff, 0xf7ffffff, 0xffffdfff, 0xfffeffff};
137    }
138
139    const static UnicodeSet none_Set{const_cast<UnicodeSet::run_t *>(__none_Set_runs), 261, 0, const_cast<UnicodeSet::bitquad_t *>(__none_Set_quads), 160, 0};
140
141    /** Code Point Ranges for Nu
142    [00bc, 00be], [09f4, 09f9], [0b72, 0b77], [0bf0, 0bf2], [0c78, 0c7e],
143    [0d58, 0d5e], [0d70, 0d78], [0f2a, 0f33], [1372, 137c], [16ee, 16f0],
144    [17f0, 17f9], [2150, 2182], [2185, 2189], [2469, 2473], [247d, 2487],
145    [2491, 249b], [24eb, 24f4], [24fe, 24fe], [277f, 277f], [2789, 2789],
146    [2793, 2793], [2cfd, 2cfd], [3007, 3007], [3021, 3029], [3038, 303a],
147    [3192, 3195], [3220, 3229], [3248, 324f], [3251, 325f], [3280, 3289],
148    [32b1, 32bf], [3405, 3405], [3483, 3483], [382a, 382a], [3b4d, 3b4d],
149    [4e00, 4e00], [4e03, 4e03], [4e07, 4e07], [4e09, 4e09], [4e5d, 4e5d],
150    [4e8c, 4e8c], [4e94, 4e94], [4e96, 4e96], [4ebf, 4ec0], [4edf, 4edf],
151    [4ee8, 4ee8], [4f0d, 4f0d], [4f70, 4f70], [5104, 5104], [5146, 5146],
152    [5169, 5169], [516b, 516b], [516d, 516d], [5341, 5341], [5343, 5345],
153    [534c, 534c], [53c1, 53c4], [56db, 56db], [58f1, 58f1], [58f9, 58f9],
154    [5e7a, 5e7a], [5efe, 5eff], [5f0c, 5f0e], [5f10, 5f10], [62fe, 62fe],
155    [634c, 634c], [67d2, 67d2], [6f06, 6f06], [7396, 7396], [767e, 767e],
156    [8086, 8086], [842c, 842c], [8cae, 8cae], [8cb3, 8cb3], [8d30, 8d30],
157    [9621, 9621], [9646, 9646], [964c, 964c], [9678, 9678], [96f6, 96f6],
158    [a6e6, a6ef], [a830, a835], [f96b, f96b], [f973, f973], [f978, f978],
159    [f9b2, f9b2], [f9d1, f9d1], [f9d3, f9d3], [f9fd, f9fd], [10107, 10133],
160    [10140, 10178], [1018a, 1018b], [102e1, 102fb], [10320, 10323],
161    [10341, 10341], [1034a, 1034a], [103d1, 103d5], [10858, 1085f],
162    [10879, 1087f], [108a7, 108af], [108fb, 108ff], [10916, 1091b],
163    [109bc, 109bd], [109c0, 109cf], [109d2, 109ff], [10a44, 10a47],
164    [10a7d, 10a7e], [10a9d, 10a9f], [10aeb, 10aef], [10b58, 10b5f],
165    [10b78, 10b7f], [10ba9, 10baf], [10cfa, 10cff], [10e69, 10e7e],
166    [1105b, 11065], [111e1, 111f4], [1173a, 1173b], [118ea, 118f2],
167    [11c5a, 11c6c], [12400, 1246e], [16b5b, 16b61], [1d360, 1d371],
168    [1e8c7, 1e8cf], [1f10b, 1f10c], [20001, 20001], [20064, 20064],
169    [200e2, 200e2], [20121, 20121], [2092a, 2092a], [20983, 20983],
170    [2098c, 2098c], [2099c, 2099c], [20aea, 20aea], [20afd, 20afd],
171    [20b19, 20b19], [22390, 22390], [22998, 22998], [23b1b, 23b1b],
172    [2626d, 2626d], [2f890, 2f890]**/
173
174
175    namespace {
176    const static UnicodeSet::run_t __nu_Set_runs[] = {
177    {Empty, 5}, {Mixed, 1}, {Empty, 73}, {Mixed, 1}, {Empty, 11},
178    {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 6},
179    {Mixed, 2}, {Empty, 13}, {Mixed, 1}, {Empty, 33}, {Mixed, 1},
180    {Empty, 27}, {Mixed, 1}, {Empty, 7}, {Mixed, 1}, {Empty, 74},
181    {Mixed, 1}, {Full, 1}, {Mixed, 1}, {Empty, 22}, {Mixed, 2}, {Empty, 2},
182    {Mixed, 1}, {Empty, 19}, {Mixed, 2}, {Empty, 42}, {Mixed, 1},
183    {Empty, 24}, {Mixed, 2}, {Empty, 10}, {Mixed, 1}, {Empty, 4},
184    {Mixed, 2}, {Empty, 1}, {Mixed, 2}, {Empty, 10}, {Mixed, 1}, {Empty, 3},
185    {Mixed, 1}, {Empty, 28}, {Mixed, 1}, {Empty, 24}, {Mixed, 1},
186    {Empty, 149}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
187    {Mixed, 5}, {Empty, 2}, {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 1},
188    {Mixed, 2}, {Empty, 14}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
189    {Empty, 23}, {Mixed, 1}, {Empty, 16}, {Mixed, 1}, {Empty, 43},
190    {Mixed, 1}, {Empty, 3}, {Mixed, 2}, {Empty, 30}, {Mixed, 1}, {Empty, 2},
191    {Mixed, 1}, {Empty, 35}, {Mixed, 1}, {Empty, 57}, {Mixed, 1},
192    {Empty, 35}, {Mixed, 1}, {Empty, 22}, {Mixed, 1}, {Empty, 80},
193    {Mixed, 1}, {Empty, 28}, {Mixed, 1}, {Empty, 67}, {Mixed, 1},
194    {Empty, 3}, {Mixed, 1}, {Empty, 71}, {Mixed, 3}, {Empty, 3}, {Mixed, 1},
195    {Empty, 127}, {Mixed, 1}, {Empty, 9}, {Mixed, 1}, {Empty, 649},
196    {Mixed, 1}, {Empty, 1}, {Mixed, 3}, {Empty, 56}, {Mixed, 2}, {Full, 1},
197    {Mixed, 2}, {Empty, 10}, {Mixed, 1}, {Empty, 1}, {Mixed, 2}, {Empty, 3},
198    {Mixed, 1}, {Empty, 35}, {Mixed, 2}, {Empty, 1}, {Mixed, 1}, {Empty, 1},
199    {Mixed, 2}, {Empty, 4}, {Mixed, 2}, {Full, 1}, {Empty, 2}, {Mixed, 3},
200    {Empty, 2}, {Mixed, 1}, {Empty, 2}, {Mixed, 2}, {Empty, 1}, {Mixed, 1},
201    {Empty, 9}, {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 14},
202    {Mixed, 2}, {Empty, 11}, {Mixed, 1}, {Empty, 41}, {Mixed, 1},
203    {Empty, 13}, {Mixed, 1}, {Empty, 26}, {Mixed, 2}, {Empty, 60},
204    {Full, 3}, {Mixed, 1}, {Empty, 566}, {Mixed, 2}, {Empty, 831},
205    {Mixed, 1}, {Empty, 170}, {Mixed, 1}, {Empty, 65}, {Mixed, 1},
206    {Empty, 119}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 3},
207    {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 63}, {Mixed, 1}, {Empty, 2},
208    {Mixed, 1}, {Empty, 10}, {Mixed, 2}, {Empty, 195}, {Mixed, 1},
209    {Empty, 47}, {Mixed, 1}, {Empty, 139}, {Mixed, 1}, {Empty, 314},
210    {Mixed, 1}, {Empty, 1200}, {Mixed, 1}, {Empty, 28731}};
211    const static UnicodeSet::bitquad_t  __nu_Set_quads[] = {
212    0x70000000, 0x03f00000, 0x00fc0000, 0x00070000, 0x7f000000, 0x7f000000,
213    0x01ff0000, 0x000ffc00, 0x1ffc0000, 0x0001c000, 0x03ff0000, 0xffff0000,
214    0x000003e7, 0xe00ffe00, 0x0ffe00ff, 0x401ff800, 0x80000000, 0x00080200,
215    0x20000000, 0x00000080, 0x070003fe, 0x003c0000, 0x000003ff, 0xfffeff00,
216    0x000003ff, 0xfffe0000, 0x00000020, 0x00000008, 0x00000400, 0x00002000,
217    0x00000289, 0x20000000, 0x00501000, 0x80000000, 0x80000001, 0x00000100,
218    0x00002000, 0x00010000, 0x00000010, 0x00000040, 0x00002a00, 0x0000103a,
219    0x0000001e, 0x08000000, 0x02020000, 0x04000000, 0xc0000000, 0x00017000,
220    0x40000000, 0x00001000, 0x00040000, 0x00000040, 0x00400000, 0x40000000,
221    0x00000040, 0x00001000, 0x00084000, 0x00010000, 0x00000002, 0x00001040,
222    0x01000000, 0x00400000, 0x0000ffc0, 0x003f0000, 0x01080800, 0x00040000,
223    0x000a0000, 0x20000000, 0xffffff80, 0x000fffff, 0x01ffffff, 0x00000c00,
224    0x0ffffffe, 0x0000000f, 0x00000402, 0x003e0000, 0xff000000, 0xfe000000,
225    0x0000ff80, 0xf8000000, 0x0fc00000, 0x30000000, 0xfffcffff, 0x000000f0,
226    0x60000000, 0xe0000000, 0x0000f800, 0xff000000, 0xff000000, 0x0000fe00,
227    0xfc000000, 0x7ffffe00, 0xf8000000, 0x0000003f, 0x001ffffe, 0x0c000000,
228    0x0007fc00, 0xfc000000, 0x00001fff, 0x00007fff, 0xf8000000, 0x00000003,
229    0x0003ffff, 0x0000ff80, 0x00001800, 0x00000002, 0x00000010, 0x00000004,
230    0x00000002, 0x00000400, 0x10001008, 0x20000400, 0x02000000, 0x00010000,
231    0x01000000, 0x08000000, 0x00002000, 0x00010000};
232    }
233
234    const static UnicodeSet nu_Set{const_cast<UnicodeSet::run_t *>(__nu_Set_runs), 181, 0, const_cast<UnicodeSet::bitquad_t *>(__nu_Set_quads), 118, 0};
235
236    /** Code Point Ranges for Di
237    [00b2, 00b3], [00b9, 00b9], [1369, 1371], [19da, 19da], [2070, 2070],
238    [2074, 2079], [2080, 2089], [2460, 2468], [2474, 247c], [2488, 2490],
239    [24ea, 24ea], [24f5, 24fd], [24ff, 24ff], [2776, 277e], [2780, 2788],
240    [278a, 2792], [10a40, 10a43], [10e60, 10e68], [11052, 1105a],
241    [1f100, 1f10a]**/
242
243
244    namespace {
245    const static UnicodeSet::run_t __di_Set_runs[] = {
246    {Empty, 5}, {Mixed, 1}, {Empty, 149}, {Mixed, 1}, {Empty, 50},
247    {Mixed, 1}, {Empty, 52}, {Mixed, 2}, {Empty, 30}, {Mixed, 2},
248    {Empty, 2}, {Mixed, 1}, {Empty, 19}, {Mixed, 2}, {Empty, 1813},
249    {Mixed, 1}, {Empty, 32}, {Mixed, 1}, {Empty, 14}, {Mixed, 1},
250    {Empty, 1797}, {Mixed, 1}, {Empty, 30839}};
251    const static UnicodeSet::bitquad_t  __di_Set_quads[] = {
252    0x020c0000, 0x0003fe00, 0x04000000, 0x03f10000, 0x000003ff, 0x1ff001ff,
253    0x0001ff00, 0xbfe00400, 0x7fc00000, 0x0007fdff, 0x0000000f, 0x000001ff,
254    0x07fc0000, 0x000007ff};
255    }
256
257    const static UnicodeSet di_Set{const_cast<UnicodeSet::run_t *>(__di_Set_runs), 23, 0, const_cast<UnicodeSet::bitquad_t *>(__di_Set_quads), 14, 0};
258
259    /** Code Point Ranges for De
260    [0030, 0039], [0660, 0669], [06f0, 06f9], [07c0, 07c9], [0966, 096f],
261    [09e6, 09ef], [0a66, 0a6f], [0ae6, 0aef], [0b66, 0b6f], [0be6, 0bef],
262    [0c66, 0c6f], [0ce6, 0cef], [0d66, 0d6f], [0de6, 0def], [0e50, 0e59],
263    [0ed0, 0ed9], [0f20, 0f29], [1040, 1049], [1090, 1099], [17e0, 17e9],
264    [1810, 1819], [1946, 194f], [19d0, 19d9], [1a80, 1a89], [1a90, 1a99],
265    [1b50, 1b59], [1bb0, 1bb9], [1c40, 1c49], [1c50, 1c59], [a620, a629],
266    [a8d0, a8d9], [a900, a909], [a9d0, a9d9], [a9f0, a9f9], [aa50, aa59],
267    [abf0, abf9], [ff10, ff19], [104a0, 104a9], [11066, 1106f],
268    [110f0, 110f9], [11136, 1113f], [111d0, 111d9], [112f0, 112f9],
269    [11450, 11459], [114d0, 114d9], [11650, 11659], [116c0, 116c9],
270    [11730, 11739], [118e0, 118e9], [11c50, 11c59], [11d50, 11d59],
271    [16a60, 16a69], [16b50, 16b59], [1d7ce, 1d7ff], [1e950, 1e959]**/
272
273
274    namespace {
275    const static UnicodeSet::run_t __de_Set_runs[] = {
276    {Empty, 1}, {Mixed, 1}, {Empty, 49}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
277    {Empty, 6}, {Mixed, 1}, {Empty, 12}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
278    {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
279    {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1},
280    {Empty, 3}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1},
281    {Empty, 3}, {Mixed, 1}, {Empty, 2}, {Mixed, 1}, {Empty, 8}, {Mixed, 1},
282    {Empty, 1}, {Mixed, 1}, {Empty, 58}, {Mixed, 2}, {Empty, 9}, {Mixed, 1},
283    {Empty, 3}, {Mixed, 1}, {Empty, 5}, {Mixed, 1}, {Empty, 5}, {Mixed, 1},
284    {Empty, 2}, {Mixed, 1}, {Empty, 4}, {Mixed, 1}, {Empty, 1102},
285    {Mixed, 1}, {Empty, 20}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 5},
286    {Mixed, 2}, {Empty, 2}, {Mixed, 1}, {Empty, 12}, {Mixed, 1},
287    {Empty, 664}, {Mixed, 1}, {Empty, 44}, {Mixed, 1}, {Empty, 93},
288    {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 1}, {Mixed, 1}, {Empty, 4},
289    {Mixed, 1}, {Empty, 8}, {Mixed, 1}, {Empty, 10}, {Mixed, 1}, {Empty, 3},
290    {Mixed, 1}, {Empty, 11}, {Mixed, 1}, {Empty, 3}, {Mixed, 1}, {Empty, 2},
291    {Mixed, 1}, {Empty, 13}, {Mixed, 1}, {Empty, 26}, {Mixed, 1},
292    {Empty, 7}, {Mixed, 1}, {Empty, 616}, {Mixed, 1}, {Empty, 6},
293    {Mixed, 1}, {Empty, 867}, {Mixed, 1}, {Full, 1}, {Empty, 138},
294    {Mixed, 1}, {Empty, 30901}};
295    const static UnicodeSet::bitquad_t  __de_Set_quads[] = {
296    0x03ff0000, 0x000003ff, 0x03ff0000, 0x000003ff, 0x0000ffc0, 0x0000ffc0,
297    0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0, 0x0000ffc0,
298    0x0000ffc0, 0x0000ffc0, 0x03ff0000, 0x03ff0000, 0x000003ff, 0x000003ff,
299    0x03ff0000, 0x000003ff, 0x03ff0000, 0x0000ffc0, 0x03ff0000, 0x03ff03ff,
300    0x03ff0000, 0x03ff0000, 0x03ff03ff, 0x000003ff, 0x03ff0000, 0x000003ff,
301    0x03ff0000, 0x03ff0000, 0x03ff0000, 0x03ff0000, 0x03ff0000, 0x000003ff,
302    0x0000ffc0, 0x03ff0000, 0xffc00000, 0x03ff0000, 0x03ff0000, 0x03ff0000,
303    0x03ff0000, 0x03ff0000, 0x000003ff, 0x03ff0000, 0x000003ff, 0x03ff0000,
304    0x03ff0000, 0x000003ff, 0x03ff0000, 0xffffc000, 0x03ff0000};
305    }
306
307    const static UnicodeSet de_Set{const_cast<UnicodeSet::run_t *>(__de_Set_runs), 104, 0, const_cast<UnicodeSet::bitquad_t *>(__de_Set_quads), 53, 0};
308
309    static EnumeratedPropertyObject property_object
310        {nt,
311        NT_ns::independent_prop_values,
312        std::move(NT_ns::enum_names),
313        std::move(NT_ns::value_names),
314        std::move(NT_ns::aliases_only_map),{
315        &none_Set, &nu_Set, &di_Set, &de_Set
316        }};
317    }
318}
319
320#endif
Note: See TracBrowser for help on using the repository browser.