Coverage Report

Created: 2018-07-03 15:31

/home/travis/build/MoarVM/MoarVM/src/strings/unicode_gen.h
Line
Count
Source (jump to first uncovered line)
1
2
3
struct MVMUnicodeNamedValue {
4
    const char *name;
5
    MVMint32 value;
6
};
7
1
#define num_unicode_property_keypairs 3552
8
9
424
#define MVM_NUM_UNICODE_EXTENTS 105
10
11
MVMint32 MVM_unicode_is_in_block(MVMThreadContext *tc, MVMString *str, MVMint64 pos, MVMString *block_name);
12
13
211k
#define MVM_CODEPOINT_NAMES_COUNT 52915
14
15.7k
#define MVM_NUM_PROPERTY_CODES 107
15
16
1
#define num_unicode_seq_keypairs 2032
17
4
#define num_unicode_namealias_keypairs 464
18
struct MVMUnicodeNamedAlias {
19
    char *name;
20
    MVMGrapheme32 codepoint;
21
    MVMint16 strlen;
22
};
23
typedef struct MVMUnicodeNamedAlias MVMUnicodeNamedAlias;
24
25
26
/* MVM_UNICODE_PROPERTY_GENERAL_CATEGORY */
27
#define MVM_UNICODE_PVALUE_GC_CC 15
28
#define MVM_UNICODE_PVALUE_GC_CF 16
29
#define MVM_UNICODE_PVALUE_GC_CN 0
30
#define MVM_UNICODE_PVALUE_GC_CO 17
31
#define MVM_UNICODE_PVALUE_GC_CS 18
32
243
#define MVM_UNICODE_PVALUE_GC_LL 2
33
#define MVM_UNICODE_PVALUE_GC_LM 4
34
#define MVM_UNICODE_PVALUE_GC_LO 5
35
#define MVM_UNICODE_PVALUE_GC_LT 3
36
230
#define MVM_UNICODE_PVALUE_GC_LU 1
37
#define MVM_UNICODE_PVALUE_GC_MC 8
38
#define MVM_UNICODE_PVALUE_GC_ME 7
39
#define MVM_UNICODE_PVALUE_GC_MN 6
40
218k
#define MVM_UNICODE_PVALUE_GC_ND 9
41
#define MVM_UNICODE_PVALUE_GC_NL 10
42
#define MVM_UNICODE_PVALUE_GC_NO 11
43
#define MVM_UNICODE_PVALUE_GC_PC 22
44
#define MVM_UNICODE_PVALUE_GC_PD 19
45
#define MVM_UNICODE_PVALUE_GC_PE 21
46
#define MVM_UNICODE_PVALUE_GC_PF 29
47
#define MVM_UNICODE_PVALUE_GC_PI 28
48
#define MVM_UNICODE_PVALUE_GC_PO 23
49
#define MVM_UNICODE_PVALUE_GC_PS 20
50
#define MVM_UNICODE_PVALUE_GC_SC 25
51
#define MVM_UNICODE_PVALUE_GC_SK 26
52
#define MVM_UNICODE_PVALUE_GC_SM 24
53
#define MVM_UNICODE_PVALUE_GC_SO 27
54
#define MVM_UNICODE_PVALUE_GC_ZL 13
55
#define MVM_UNICODE_PVALUE_GC_ZP 14
56
56
#define MVM_UNICODE_PVALUE_GC_ZS 12
57
58
59
/* MVM_UNICODE_PROPERTY_GRAPHEME_CLUSTER_BREAK */
60
#define MVM_UNICODE_PVALUE_GCB_CR 2
61
#define MVM_UNICODE_PVALUE_GCB_CONTROL 4
62
3
#define MVM_UNICODE_PVALUE_GCB_E_BASE 13
63
3
#define MVM_UNICODE_PVALUE_GCB_E_BASE_GAZ 17
64
3
#define MVM_UNICODE_PVALUE_GCB_E_MODIFIER 14
65
16
#define MVM_UNICODE_PVALUE_GCB_EXTEND 5
66
3
#define MVM_UNICODE_PVALUE_GCB_GLUE_AFTER_ZWJ 16
67
0
#define MVM_UNICODE_PVALUE_GCB_L 8
68
#define MVM_UNICODE_PVALUE_GCB_LF 3
69
0
#define MVM_UNICODE_PVALUE_GCB_LV 11
70
0
#define MVM_UNICODE_PVALUE_GCB_LVT 12
71
0
#define MVM_UNICODE_PVALUE_GCB_OTHER 0
72
153
#define MVM_UNICODE_PVALUE_GCB_PREPEND 1
73
0
#define MVM_UNICODE_PVALUE_GCB_REGIONAL_INDICATOR 6
74
0
#define MVM_UNICODE_PVALUE_GCB_SPACINGMARK 7
75
0
#define MVM_UNICODE_PVALUE_GCB_T 10
76
0
#define MVM_UNICODE_PVALUE_GCB_V 9
77
11
#define MVM_UNICODE_PVALUE_GCB_ZWJ 15
78
79
80
/* MVM_UNICODE_PROPERTY_DECOMPOSITION_TYPE */
81
119
#define MVM_UNICODE_PVALUE_DT_CANONICAL 1
82
#define MVM_UNICODE_PVALUE_DT_CIRCLE 9
83
#define MVM_UNICODE_PVALUE_DT_COMPAT 2
84
#define MVM_UNICODE_PVALUE_DT_FINAL 7
85
#define MVM_UNICODE_PVALUE_DT_FONT 3
86
#define MVM_UNICODE_PVALUE_DT_FRACTION 17
87
#define MVM_UNICODE_PVALUE_DT_INITIAL 5
88
#define MVM_UNICODE_PVALUE_DT_ISOLATED 8
89
#define MVM_UNICODE_PVALUE_DT_MEDIAL 6
90
#define MVM_UNICODE_PVALUE_DT_NARROW 14
91
#define MVM_UNICODE_PVALUE_DT_NOBREAK 4
92
2.09k
#define MVM_UNICODE_PVALUE_DT_NONE 0
93
#define MVM_UNICODE_PVALUE_DT_SMALL 15
94
#define MVM_UNICODE_PVALUE_DT_SQUARE 16
95
#define MVM_UNICODE_PVALUE_DT_SUB 11
96
#define MVM_UNICODE_PVALUE_DT_SUPER 10
97
#define MVM_UNICODE_PVALUE_DT_VERTICAL 12
98
#define MVM_UNICODE_PVALUE_DT_WIDE 13
99
100
101
/* MVM_UNICODE_PROPERTY_CANONICAL_COMBINING_CLASS */
102
236k
#define MVM_UNICODE_PVALUE_CCC_0 1
103
#define MVM_UNICODE_PVALUE_CCC_1 2
104
#define MVM_UNICODE_PVALUE_CCC_10 6
105
#define MVM_UNICODE_PVALUE_CCC_103 35
106
#define MVM_UNICODE_PVALUE_CCC_107 36
107
#define MVM_UNICODE_PVALUE_CCC_11 7
108
#define MVM_UNICODE_PVALUE_CCC_118 37
109
#define MVM_UNICODE_PVALUE_CCC_12 8
110
#define MVM_UNICODE_PVALUE_CCC_122 38
111
#define MVM_UNICODE_PVALUE_CCC_129 39
112
#define MVM_UNICODE_PVALUE_CCC_13 9
113
#define MVM_UNICODE_PVALUE_CCC_130 40
114
#define MVM_UNICODE_PVALUE_CCC_132 41
115
#define MVM_UNICODE_PVALUE_CCC_14 10
116
#define MVM_UNICODE_PVALUE_CCC_15 11
117
#define MVM_UNICODE_PVALUE_CCC_16 12
118
#define MVM_UNICODE_PVALUE_CCC_17 13
119
#define MVM_UNICODE_PVALUE_CCC_18 14
120
#define MVM_UNICODE_PVALUE_CCC_19 15
121
#define MVM_UNICODE_PVALUE_CCC_20 16
122
#define MVM_UNICODE_PVALUE_CCC_202 42
123
#define MVM_UNICODE_PVALUE_CCC_21 17
124
#define MVM_UNICODE_PVALUE_CCC_214 43
125
#define MVM_UNICODE_PVALUE_CCC_216 44
126
#define MVM_UNICODE_PVALUE_CCC_218 45
127
#define MVM_UNICODE_PVALUE_CCC_22 18
128
#define MVM_UNICODE_PVALUE_CCC_220 46
129
#define MVM_UNICODE_PVALUE_CCC_222 47
130
#define MVM_UNICODE_PVALUE_CCC_224 48
131
#define MVM_UNICODE_PVALUE_CCC_226 49
132
#define MVM_UNICODE_PVALUE_CCC_228 50
133
#define MVM_UNICODE_PVALUE_CCC_23 19
134
#define MVM_UNICODE_PVALUE_CCC_230 51
135
#define MVM_UNICODE_PVALUE_CCC_232 52
136
#define MVM_UNICODE_PVALUE_CCC_233 53
137
#define MVM_UNICODE_PVALUE_CCC_234 54
138
#define MVM_UNICODE_PVALUE_CCC_24 20
139
#define MVM_UNICODE_PVALUE_CCC_240 55
140
#define MVM_UNICODE_PVALUE_CCC_25 21
141
#define MVM_UNICODE_PVALUE_CCC_26 22
142
#define MVM_UNICODE_PVALUE_CCC_27 23
143
#define MVM_UNICODE_PVALUE_CCC_28 24
144
#define MVM_UNICODE_PVALUE_CCC_29 25
145
#define MVM_UNICODE_PVALUE_CCC_30 26
146
#define MVM_UNICODE_PVALUE_CCC_31 27
147
#define MVM_UNICODE_PVALUE_CCC_32 28
148
#define MVM_UNICODE_PVALUE_CCC_33 29
149
#define MVM_UNICODE_PVALUE_CCC_34 30
150
#define MVM_UNICODE_PVALUE_CCC_35 31
151
#define MVM_UNICODE_PVALUE_CCC_36 32
152
#define MVM_UNICODE_PVALUE_CCC_7 3
153
#define MVM_UNICODE_PVALUE_CCC_8 4
154
#define MVM_UNICODE_PVALUE_CCC_84 33
155
#define MVM_UNICODE_PVALUE_CCC_9 5
156
#define MVM_UNICODE_PVALUE_CCC_91 34
157
#define MVM_UNICODE_PVALUE_CCC_NOT_REORDERED 0
158
159
160
/* MVM_UNICODE_PROPERTY_NUMERIC_TYPE */
161
9.36k
#define MVM_UNICODE_PVALUE_Numeric_Type_DECIMAL 3
162
#define MVM_UNICODE_PVALUE_Numeric_Type_DIGIT 2
163
#define MVM_UNICODE_PVALUE_Numeric_Type_NONE 0
164
#define MVM_UNICODE_PVALUE_Numeric_Type_NUMERIC 1
165
166
612k
#define num_unicode_property_value_keypairs 4250
167
168
typedef enum {
169
    MVM_UNICODE_PROPERTY_DECOMP_SPEC = 1,
170
    MVM_UNICODE_PROPERTY_CASE_CHANGE_INDEX = 2,
171
    MVM_UNICODE_PROPERTY_JOINING_GROUP = 3,
172
    MVM_UNICODE_PROPERTY_CASE_FOLDING = 4,
173
    MVM_UNICODE_PROPERTY_BIDI_MIRRORING_GLYPH = 5,
174
    MVM_UNICODE_PROPERTY_BLOCK = 6,
175
    MVM_UNICODE_PROPERTY_EAST_ASIAN_WIDTH = 7,
176
    MVM_UNICODE_PROPERTY_NUMERIC_VALUE = 8,
177
    MVM_UNICODE_PROPERTY_SCRIPT = 9,
178
    MVM_UNICODE_PROPERTY_NUMERIC_VALUE_NUMERATOR = 10,
179
    MVM_UNICODE_PROPERTY_SPECIAL_CASING = 11,
180
    MVM_UNICODE_PROPERTY_NFC_QC = 12,
181
    MVM_UNICODE_PROPERTY_CANONICAL_COMBINING_CLASS = 13,
182
    MVM_UNICODE_PROPERTY_LINE_BREAK = 14,
183
    MVM_UNICODE_PROPERTY_AGE = 15,
184
    MVM_UNICODE_PROPERTY_BIDI_CLASS = 16,
185
    MVM_UNICODE_PROPERTY_DECOMPOSITION_TYPE = 17,
186
    MVM_UNICODE_PROPERTY_GENERAL_CATEGORY = 18,
187
    MVM_UNICODE_PROPERTY_GRAPHEME_CLUSTER_BREAK = 19,
188
    MVM_UNICODE_PROPERTY_NUMERIC_VALUE_DENOMINATOR = 20,
189
    MVM_UNICODE_PROPERTY_WORD_BREAK = 21,
190
    MVM_UNICODE_PROPERTY_SENTENCE_BREAK = 22,
191
    MVM_UNICODE_PROPERTY_HANGUL_SYLLABLE_TYPE = 23,
192
    MVM_UNICODE_PROPERTY_JOINING_TYPE = 24,
193
    MVM_UNICODE_PROPERTY_NFG_QC = 25,
194
    MVM_UNICODE_PROPERTY_NFKC_QC = 26,
195
    MVM_UNICODE_PROPERTY_NUMERIC_TYPE = 27,
196
    MVM_UNICODE_PROPERTY_ASCII_HEX_DIGIT = 28,
197
    MVM_UNICODE_PROPERTY_ALPHABETIC = 29,
198
    MVM_UNICODE_PROPERTY_ANY = 30,
199
    MVM_UNICODE_PROPERTY_ASSIGNED = 31,
200
    MVM_UNICODE_PROPERTY_BIDI_CONTROL = 32,
201
    MVM_UNICODE_PROPERTY_BIDI_MIRRORED = 33,
202
    MVM_UNICODE_PROPERTY_C = 34,
203
    MVM_UNICODE_PROPERTY_CASE_FOLDING_SIMPLE = 35,
204
    MVM_UNICODE_PROPERTY_CASE_IGNORABLE = 36,
205
    MVM_UNICODE_PROPERTY_CASED = 37,
206
    MVM_UNICODE_PROPERTY_CHANGES_WHEN_CASEFOLDED = 38,
207
    MVM_UNICODE_PROPERTY_CHANGES_WHEN_CASEMAPPED = 39,
208
    MVM_UNICODE_PROPERTY_CHANGES_WHEN_LOWERCASED = 40,
209
    MVM_UNICODE_PROPERTY_CHANGES_WHEN_NFKC_CASEFOLDED = 41,
210
    MVM_UNICODE_PROPERTY_CHANGES_WHEN_TITLECASED = 42,
211
    MVM_UNICODE_PROPERTY_CHANGES_WHEN_UPPERCASED = 43,
212
    MVM_UNICODE_PROPERTY_DASH = 44,
213
    MVM_UNICODE_PROPERTY_DEFAULT_IGNORABLE_CODE_POINT = 45,
214
    MVM_UNICODE_PROPERTY_DEPRECATED = 46,
215
    MVM_UNICODE_PROPERTY_DIACRITIC = 47,
216
    MVM_UNICODE_PROPERTY_EMOJI = 48,
217
    MVM_UNICODE_PROPERTY_EMOJI_COMPONENT = 49,
218
    MVM_UNICODE_PROPERTY_EMOJI_MODIFIER = 50,
219
    MVM_UNICODE_PROPERTY_EMOJI_MODIFIER_BASE = 51,
220
    MVM_UNICODE_PROPERTY_EMOJI_PRESENTATION = 52,
221
    MVM_UNICODE_PROPERTY_EXTENDED_PICTOGRAPHIC = 53,
222
    MVM_UNICODE_PROPERTY_EXTENDER = 54,
223
    MVM_UNICODE_PROPERTY_FULL_COMPOSITION_EXCLUSION = 55,
224
    MVM_UNICODE_PROPERTY_GRAPHEME_BASE = 56,
225
    MVM_UNICODE_PROPERTY_GRAPHEME_EXTEND = 57,
226
    MVM_UNICODE_PROPERTY_GRAPHEME_LINK = 58,
227
    MVM_UNICODE_PROPERTY_HEX_DIGIT = 59,
228
    MVM_UNICODE_PROPERTY_HYPHEN = 60,
229
    MVM_UNICODE_PROPERTY_IDS_BINARY_OPERATOR = 61,
230
    MVM_UNICODE_PROPERTY_IDS_TRINARY_OPERATOR = 62,
231
    MVM_UNICODE_PROPERTY_ID_CONTINUE = 63,
232
    MVM_UNICODE_PROPERTY_ID_START = 64,
233
    MVM_UNICODE_PROPERTY_IDEOGRAPHIC = 65,
234
    MVM_UNICODE_PROPERTY_JOIN_CONTROL = 66,
235
    MVM_UNICODE_PROPERTY_L = 67,
236
    MVM_UNICODE_PROPERTY_LC = 68,
237
    MVM_UNICODE_PROPERTY_LOGICAL_ORDER_EXCEPTION = 69,
238
    MVM_UNICODE_PROPERTY_LOWERCASE = 70,
239
    MVM_UNICODE_PROPERTY_M = 71,
240
    MVM_UNICODE_PROPERTY_MVM_COLLATION_PRIMARY = 72,
241
    MVM_UNICODE_PROPERTY_MVM_COLLATION_QC = 73,
242
    MVM_UNICODE_PROPERTY_MATH = 74,
243
    MVM_UNICODE_PROPERTY_MVM_COLLATION_SECONDARY = 75,
244
    MVM_UNICODE_PROPERTY_MVM_COLLATION_TERTIARY = 76,
245
    MVM_UNICODE_PROPERTY_N = 77,
246
    MVM_UNICODE_PROPERTY_NFD_QC = 78,
247
    MVM_UNICODE_PROPERTY_NFKD_QC = 79,
248
    MVM_UNICODE_PROPERTY_NONCHARACTER_CODE_POINT = 80,
249
    MVM_UNICODE_PROPERTY_OTHER_ALPHABETIC = 81,
250
    MVM_UNICODE_PROPERTY_OTHER_DEFAULT_IGNORABLE_CODE_POINT = 82,
251
    MVM_UNICODE_PROPERTY_OTHER_GRAPHEME_EXTEND = 83,
252
    MVM_UNICODE_PROPERTY_OTHER_ID_CONTINUE = 84,
253
    MVM_UNICODE_PROPERTY_OTHER_ID_START = 85,
254
    MVM_UNICODE_PROPERTY_OTHER_LOWERCASE = 86,
255
    MVM_UNICODE_PROPERTY_OTHER_MATH = 87,
256
    MVM_UNICODE_PROPERTY_OTHER_UPPERCASE = 88,
257
    MVM_UNICODE_PROPERTY_P = 89,
258
    MVM_UNICODE_PROPERTY_PATTERN_SYNTAX = 90,
259
    MVM_UNICODE_PROPERTY_PATTERN_WHITE_SPACE = 91,
260
    MVM_UNICODE_PROPERTY_PREPENDED_CONCATENATION_MARK = 92,
261
    MVM_UNICODE_PROPERTY_QUOTATION_MARK = 93,
262
    MVM_UNICODE_PROPERTY_RADICAL = 94,
263
    MVM_UNICODE_PROPERTY_REGIONAL_INDICATOR = 95,
264
    MVM_UNICODE_PROPERTY_S = 96,
265
    MVM_UNICODE_PROPERTY_SENTENCE_TERMINAL = 97,
266
    MVM_UNICODE_PROPERTY_SOFT_DOTTED = 98,
267
    MVM_UNICODE_PROPERTY_TERMINAL_PUNCTUATION = 99,
268
    MVM_UNICODE_PROPERTY_UNIFIED_IDEOGRAPH = 100,
269
    MVM_UNICODE_PROPERTY_UPPERCASE = 101,
270
    MVM_UNICODE_PROPERTY_VARIATION_SELECTOR = 102,
271
    MVM_UNICODE_PROPERTY_WHITE_SPACE = 103,
272
    MVM_UNICODE_PROPERTY_XID_CONTINUE = 104,
273
    MVM_UNICODE_PROPERTY_XID_START = 105,
274
    MVM_UNICODE_PROPERTY_Z = 106,
275
} MVM_unicode_property_codes;