Coverage Report

Created: 2017-04-15 07:07

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