Mercurial > hg > vamp-build-and-test
comparison DEPENDENCIES/generic/include/boost/spirit/home/x3/char/unicode.hpp @ 102:f46d142149f5
Whoops, finish that update
author | Chris Cannam |
---|---|
date | Mon, 07 Sep 2015 11:13:41 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
101:c530137014c0 | 102:f46d142149f5 |
---|---|
1 /*============================================================================= | |
2 Copyright (c) 2001-2014 Joel de Guzman | |
3 | |
4 Distributed under the Boost Software License, Version 1.0. (See accompanying | |
5 file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) | |
6 ==============================================================================*/ | |
7 #if !defined(BOOST_SPIRIT_X3_UNICODE_JAN_20_2012_1218AM) | |
8 #define BOOST_SPIRIT_X3_UNICODE_JAN_20_2012_1218AM | |
9 | |
10 #if defined(_MSC_VER) | |
11 #pragma once | |
12 #endif | |
13 | |
14 #include <boost/spirit/home/x3/char/char_parser.hpp> | |
15 #include <boost/spirit/home/x3/char/char.hpp> | |
16 #include <boost/spirit/home/x3/char/detail/cast_char.hpp> | |
17 #include <boost/spirit/home/support/char_encoding/unicode.hpp> | |
18 | |
19 namespace boost { namespace spirit { namespace x3 | |
20 { | |
21 /////////////////////////////////////////////////////////////////////////// | |
22 // Unicode Major Categories | |
23 /////////////////////////////////////////////////////////////////////////// | |
24 struct char_tag; | |
25 struct alnum_tag; | |
26 struct alpha_tag; | |
27 struct blank_tag; | |
28 struct cntrl_tag; | |
29 struct digit_tag; | |
30 struct graph_tag; | |
31 struct print_tag; | |
32 struct punct_tag; | |
33 struct space_tag; | |
34 struct xdigit_tag; | |
35 struct lower_tag; | |
36 struct upper_tag; | |
37 | |
38 /////////////////////////////////////////////////////////////////////////// | |
39 // Unicode Major Categories | |
40 /////////////////////////////////////////////////////////////////////////// | |
41 struct letter_tag {}; | |
42 struct mark_tag {}; | |
43 struct number_tag {}; | |
44 struct separator_tag {}; | |
45 struct other_tag {}; | |
46 struct punctuation_tag {}; | |
47 struct symbol_tag {}; | |
48 | |
49 /////////////////////////////////////////////////////////////////////////// | |
50 // Unicode General Categories | |
51 /////////////////////////////////////////////////////////////////////////// | |
52 struct uppercase_letter_tag {}; | |
53 struct lowercase_letter_tag {}; | |
54 struct titlecase_letter_tag {}; | |
55 struct modifier_letter_tag {}; | |
56 struct other_letter_tag {}; | |
57 | |
58 struct nonspacing_mark_tag {}; | |
59 struct enclosing_mark_tag {}; | |
60 struct spacing_mark_tag {}; | |
61 | |
62 struct decimal_number_tag {}; | |
63 struct letter_number_tag {}; | |
64 struct other_number_tag {}; | |
65 | |
66 struct space_separator_tag {}; | |
67 struct line_separator_tag {}; | |
68 struct paragraph_separator_tag {}; | |
69 | |
70 struct control_tag {}; | |
71 struct format_tag {}; | |
72 struct private_use_tag {}; | |
73 struct surrogate_tag {}; | |
74 struct unassigned_tag {}; | |
75 | |
76 struct dash_punctuation_tag {}; | |
77 struct open_punctuation_tag {}; | |
78 struct close_punctuation_tag {}; | |
79 struct connector_punctuation_tag {}; | |
80 struct other_punctuation_tag {}; | |
81 struct initial_punctuation_tag {}; | |
82 struct final_punctuation_tag {}; | |
83 | |
84 struct math_symbol_tag {}; | |
85 struct currency_symbol_tag {}; | |
86 struct modifier_symbol_tag {}; | |
87 struct other_symbol_tag {}; | |
88 | |
89 /////////////////////////////////////////////////////////////////////////// | |
90 // Unicode Derived Categories | |
91 /////////////////////////////////////////////////////////////////////////// | |
92 struct alphabetic_tag {}; | |
93 struct uppercase_tag {}; | |
94 struct lowercase_tag {}; | |
95 struct white_space_tag {}; | |
96 struct hex_digit_tag {}; | |
97 struct noncharacter_code_point_tag {}; | |
98 struct default_ignorable_code_point_tag {}; | |
99 | |
100 /////////////////////////////////////////////////////////////////////////// | |
101 // Unicode Scripts | |
102 /////////////////////////////////////////////////////////////////////////// | |
103 struct arabic_tag {}; | |
104 struct imperial_aramaic_tag {}; | |
105 struct armenian_tag {}; | |
106 struct avestan_tag {}; | |
107 struct balinese_tag {}; | |
108 struct bamum_tag {}; | |
109 struct bengali_tag {}; | |
110 struct bopomofo_tag {}; | |
111 struct braille_tag {}; | |
112 struct buginese_tag {}; | |
113 struct buhid_tag {}; | |
114 struct canadian_aboriginal_tag {}; | |
115 struct carian_tag {}; | |
116 struct cham_tag {}; | |
117 struct cherokee_tag {}; | |
118 struct coptic_tag {}; | |
119 struct cypriot_tag {}; | |
120 struct cyrillic_tag {}; | |
121 struct devanagari_tag {}; | |
122 struct deseret_tag {}; | |
123 struct egyptian_hieroglyphs_tag {}; | |
124 struct ethiopic_tag {}; | |
125 struct georgian_tag {}; | |
126 struct glagolitic_tag {}; | |
127 struct gothic_tag {}; | |
128 struct greek_tag {}; | |
129 struct gujarati_tag {}; | |
130 struct gurmukhi_tag {}; | |
131 struct hangul_tag {}; | |
132 struct han_tag {}; | |
133 struct hanunoo_tag {}; | |
134 struct hebrew_tag {}; | |
135 struct hiragana_tag {}; | |
136 struct katakana_or_hiragana_tag {}; | |
137 struct old_italic_tag {}; | |
138 struct javanese_tag {}; | |
139 struct kayah_li_tag {}; | |
140 struct katakana_tag {}; | |
141 struct kharoshthi_tag {}; | |
142 struct khmer_tag {}; | |
143 struct kannada_tag {}; | |
144 struct kaithi_tag {}; | |
145 struct tai_tham_tag {}; | |
146 struct lao_tag {}; | |
147 struct latin_tag {}; | |
148 struct lepcha_tag {}; | |
149 struct limbu_tag {}; | |
150 struct linear_b_tag {}; | |
151 struct lisu_tag {}; | |
152 struct lycian_tag {}; | |
153 struct lydian_tag {}; | |
154 struct malayalam_tag {}; | |
155 struct mongolian_tag {}; | |
156 struct meetei_mayek_tag {}; | |
157 struct myanmar_tag {}; | |
158 struct nko_tag {}; | |
159 struct ogham_tag {}; | |
160 struct ol_chiki_tag {}; | |
161 struct old_turkic_tag {}; | |
162 struct oriya_tag {}; | |
163 struct osmanya_tag {}; | |
164 struct phags_pa_tag {}; | |
165 struct inscriptional_pahlavi_tag {}; | |
166 struct phoenician_tag {}; | |
167 struct inscriptional_parthian_tag {}; | |
168 struct rejang_tag {}; | |
169 struct runic_tag {}; | |
170 struct samaritan_tag {}; | |
171 struct old_south_arabian_tag {}; | |
172 struct saurashtra_tag {}; | |
173 struct shavian_tag {}; | |
174 struct sinhala_tag {}; | |
175 struct sundanese_tag {}; | |
176 struct syloti_nagri_tag {}; | |
177 struct syriac_tag {}; | |
178 struct tagbanwa_tag {}; | |
179 struct tai_le_tag {}; | |
180 struct new_tai_lue_tag {}; | |
181 struct tamil_tag {}; | |
182 struct tai_viet_tag {}; | |
183 struct telugu_tag {}; | |
184 struct tifinagh_tag {}; | |
185 struct tagalog_tag {}; | |
186 struct thaana_tag {}; | |
187 struct thai_tag {}; | |
188 struct tibetan_tag {}; | |
189 struct ugaritic_tag {}; | |
190 struct vai_tag {}; | |
191 struct old_persian_tag {}; | |
192 struct cuneiform_tag {}; | |
193 struct yi_tag {}; | |
194 struct inherited_tag {}; | |
195 struct common_tag {}; | |
196 struct unknown_tag {}; | |
197 | |
198 /////////////////////////////////////////////////////////////////////////// | |
199 struct unicode_char_class_base | |
200 { | |
201 typedef char_encoding::unicode encoding; | |
202 typedef char_encoding::unicode::char_type char_type; | |
203 | |
204 #define BOOST_SPIRIT_X3_BASIC_CLASSIFY(name) \ | |
205 template <typename Char> \ | |
206 static bool \ | |
207 is(name##_tag, Char ch) \ | |
208 { \ | |
209 return encoding::is ##name \ | |
210 BOOST_PREVENT_MACRO_SUBSTITUTION \ | |
211 (detail::cast_char<char_type>(ch)); \ | |
212 } \ | |
213 /***/ | |
214 | |
215 #define BOOST_SPIRIT_X3_CLASSIFY(name) \ | |
216 template <typename Char> \ | |
217 static bool \ | |
218 is(name##_tag, Char ch) \ | |
219 { \ | |
220 return encoding::is_##name \ | |
221 BOOST_PREVENT_MACRO_SUBSTITUTION \ | |
222 (detail::cast_char<char_type>(ch)); \ | |
223 } \ | |
224 /***/ | |
225 | |
226 | |
227 /////////////////////////////////////////////////////////////////////////// | |
228 // Unicode Major Categories | |
229 /////////////////////////////////////////////////////////////////////////// | |
230 BOOST_SPIRIT_X3_BASIC_CLASSIFY(char) | |
231 BOOST_SPIRIT_X3_BASIC_CLASSIFY(alnum) | |
232 BOOST_SPIRIT_X3_BASIC_CLASSIFY(alpha) | |
233 BOOST_SPIRIT_X3_BASIC_CLASSIFY(digit) | |
234 BOOST_SPIRIT_X3_BASIC_CLASSIFY(xdigit) | |
235 BOOST_SPIRIT_X3_BASIC_CLASSIFY(cntrl) | |
236 BOOST_SPIRIT_X3_BASIC_CLASSIFY(graph) | |
237 BOOST_SPIRIT_X3_BASIC_CLASSIFY(lower) | |
238 BOOST_SPIRIT_X3_BASIC_CLASSIFY(print) | |
239 BOOST_SPIRIT_X3_BASIC_CLASSIFY(punct) | |
240 BOOST_SPIRIT_X3_BASIC_CLASSIFY(space) | |
241 BOOST_SPIRIT_X3_BASIC_CLASSIFY(blank) | |
242 BOOST_SPIRIT_X3_BASIC_CLASSIFY(upper) | |
243 | |
244 /////////////////////////////////////////////////////////////////////////// | |
245 // Unicode Major Categories | |
246 /////////////////////////////////////////////////////////////////////////// | |
247 BOOST_SPIRIT_X3_CLASSIFY(letter) | |
248 BOOST_SPIRIT_X3_CLASSIFY(mark) | |
249 BOOST_SPIRIT_X3_CLASSIFY(number) | |
250 BOOST_SPIRIT_X3_CLASSIFY(separator) | |
251 BOOST_SPIRIT_X3_CLASSIFY(other) | |
252 BOOST_SPIRIT_X3_CLASSIFY(punctuation) | |
253 BOOST_SPIRIT_X3_CLASSIFY(symbol) | |
254 | |
255 /////////////////////////////////////////////////////////////////////////// | |
256 // Unicode General Categories | |
257 /////////////////////////////////////////////////////////////////////////// | |
258 BOOST_SPIRIT_X3_CLASSIFY(uppercase_letter) | |
259 BOOST_SPIRIT_X3_CLASSIFY(lowercase_letter) | |
260 BOOST_SPIRIT_X3_CLASSIFY(titlecase_letter) | |
261 BOOST_SPIRIT_X3_CLASSIFY(modifier_letter) | |
262 BOOST_SPIRIT_X3_CLASSIFY(other_letter) | |
263 | |
264 BOOST_SPIRIT_X3_CLASSIFY(nonspacing_mark) | |
265 BOOST_SPIRIT_X3_CLASSIFY(enclosing_mark) | |
266 BOOST_SPIRIT_X3_CLASSIFY(spacing_mark) | |
267 | |
268 BOOST_SPIRIT_X3_CLASSIFY(decimal_number) | |
269 BOOST_SPIRIT_X3_CLASSIFY(letter_number) | |
270 BOOST_SPIRIT_X3_CLASSIFY(other_number) | |
271 | |
272 BOOST_SPIRIT_X3_CLASSIFY(space_separator) | |
273 BOOST_SPIRIT_X3_CLASSIFY(line_separator) | |
274 BOOST_SPIRIT_X3_CLASSIFY(paragraph_separator) | |
275 | |
276 BOOST_SPIRIT_X3_CLASSIFY(control) | |
277 BOOST_SPIRIT_X3_CLASSIFY(format) | |
278 BOOST_SPIRIT_X3_CLASSIFY(private_use) | |
279 BOOST_SPIRIT_X3_CLASSIFY(surrogate) | |
280 BOOST_SPIRIT_X3_CLASSIFY(unassigned) | |
281 | |
282 BOOST_SPIRIT_X3_CLASSIFY(dash_punctuation) | |
283 BOOST_SPIRIT_X3_CLASSIFY(open_punctuation) | |
284 BOOST_SPIRIT_X3_CLASSIFY(close_punctuation) | |
285 BOOST_SPIRIT_X3_CLASSIFY(connector_punctuation) | |
286 BOOST_SPIRIT_X3_CLASSIFY(other_punctuation) | |
287 BOOST_SPIRIT_X3_CLASSIFY(initial_punctuation) | |
288 BOOST_SPIRIT_X3_CLASSIFY(final_punctuation) | |
289 | |
290 BOOST_SPIRIT_X3_CLASSIFY(math_symbol) | |
291 BOOST_SPIRIT_X3_CLASSIFY(currency_symbol) | |
292 BOOST_SPIRIT_X3_CLASSIFY(modifier_symbol) | |
293 BOOST_SPIRIT_X3_CLASSIFY(other_symbol) | |
294 | |
295 /////////////////////////////////////////////////////////////////////////// | |
296 // Unicode Derived Categories | |
297 /////////////////////////////////////////////////////////////////////////// | |
298 BOOST_SPIRIT_X3_CLASSIFY(alphabetic) | |
299 BOOST_SPIRIT_X3_CLASSIFY(uppercase) | |
300 BOOST_SPIRIT_X3_CLASSIFY(lowercase) | |
301 BOOST_SPIRIT_X3_CLASSIFY(white_space) | |
302 BOOST_SPIRIT_X3_CLASSIFY(hex_digit) | |
303 BOOST_SPIRIT_X3_CLASSIFY(noncharacter_code_point) | |
304 BOOST_SPIRIT_X3_CLASSIFY(default_ignorable_code_point) | |
305 | |
306 /////////////////////////////////////////////////////////////////////////// | |
307 // Unicode Scripts | |
308 /////////////////////////////////////////////////////////////////////////// | |
309 BOOST_SPIRIT_X3_CLASSIFY(arabic) | |
310 BOOST_SPIRIT_X3_CLASSIFY(imperial_aramaic) | |
311 BOOST_SPIRIT_X3_CLASSIFY(armenian) | |
312 BOOST_SPIRIT_X3_CLASSIFY(avestan) | |
313 BOOST_SPIRIT_X3_CLASSIFY(balinese) | |
314 BOOST_SPIRIT_X3_CLASSIFY(bamum) | |
315 BOOST_SPIRIT_X3_CLASSIFY(bengali) | |
316 BOOST_SPIRIT_X3_CLASSIFY(bopomofo) | |
317 BOOST_SPIRIT_X3_CLASSIFY(braille) | |
318 BOOST_SPIRIT_X3_CLASSIFY(buginese) | |
319 BOOST_SPIRIT_X3_CLASSIFY(buhid) | |
320 BOOST_SPIRIT_X3_CLASSIFY(canadian_aboriginal) | |
321 BOOST_SPIRIT_X3_CLASSIFY(carian) | |
322 BOOST_SPIRIT_X3_CLASSIFY(cham) | |
323 BOOST_SPIRIT_X3_CLASSIFY(cherokee) | |
324 BOOST_SPIRIT_X3_CLASSIFY(coptic) | |
325 BOOST_SPIRIT_X3_CLASSIFY(cypriot) | |
326 BOOST_SPIRIT_X3_CLASSIFY(cyrillic) | |
327 BOOST_SPIRIT_X3_CLASSIFY(devanagari) | |
328 BOOST_SPIRIT_X3_CLASSIFY(deseret) | |
329 BOOST_SPIRIT_X3_CLASSIFY(egyptian_hieroglyphs) | |
330 BOOST_SPIRIT_X3_CLASSIFY(ethiopic) | |
331 BOOST_SPIRIT_X3_CLASSIFY(georgian) | |
332 BOOST_SPIRIT_X3_CLASSIFY(glagolitic) | |
333 BOOST_SPIRIT_X3_CLASSIFY(gothic) | |
334 BOOST_SPIRIT_X3_CLASSIFY(greek) | |
335 BOOST_SPIRIT_X3_CLASSIFY(gujarati) | |
336 BOOST_SPIRIT_X3_CLASSIFY(gurmukhi) | |
337 BOOST_SPIRIT_X3_CLASSIFY(hangul) | |
338 BOOST_SPIRIT_X3_CLASSIFY(han) | |
339 BOOST_SPIRIT_X3_CLASSIFY(hanunoo) | |
340 BOOST_SPIRIT_X3_CLASSIFY(hebrew) | |
341 BOOST_SPIRIT_X3_CLASSIFY(hiragana) | |
342 BOOST_SPIRIT_X3_CLASSIFY(katakana_or_hiragana) | |
343 BOOST_SPIRIT_X3_CLASSIFY(old_italic) | |
344 BOOST_SPIRIT_X3_CLASSIFY(javanese) | |
345 BOOST_SPIRIT_X3_CLASSIFY(kayah_li) | |
346 BOOST_SPIRIT_X3_CLASSIFY(katakana) | |
347 BOOST_SPIRIT_X3_CLASSIFY(kharoshthi) | |
348 BOOST_SPIRIT_X3_CLASSIFY(khmer) | |
349 BOOST_SPIRIT_X3_CLASSIFY(kannada) | |
350 BOOST_SPIRIT_X3_CLASSIFY(kaithi) | |
351 BOOST_SPIRIT_X3_CLASSIFY(tai_tham) | |
352 BOOST_SPIRIT_X3_CLASSIFY(lao) | |
353 BOOST_SPIRIT_X3_CLASSIFY(latin) | |
354 BOOST_SPIRIT_X3_CLASSIFY(lepcha) | |
355 BOOST_SPIRIT_X3_CLASSIFY(limbu) | |
356 BOOST_SPIRIT_X3_CLASSIFY(linear_b) | |
357 BOOST_SPIRIT_X3_CLASSIFY(lisu) | |
358 BOOST_SPIRIT_X3_CLASSIFY(lycian) | |
359 BOOST_SPIRIT_X3_CLASSIFY(lydian) | |
360 BOOST_SPIRIT_X3_CLASSIFY(malayalam) | |
361 BOOST_SPIRIT_X3_CLASSIFY(mongolian) | |
362 BOOST_SPIRIT_X3_CLASSIFY(meetei_mayek) | |
363 BOOST_SPIRIT_X3_CLASSIFY(myanmar) | |
364 BOOST_SPIRIT_X3_CLASSIFY(nko) | |
365 BOOST_SPIRIT_X3_CLASSIFY(ogham) | |
366 BOOST_SPIRIT_X3_CLASSIFY(ol_chiki) | |
367 BOOST_SPIRIT_X3_CLASSIFY(old_turkic) | |
368 BOOST_SPIRIT_X3_CLASSIFY(oriya) | |
369 BOOST_SPIRIT_X3_CLASSIFY(osmanya) | |
370 BOOST_SPIRIT_X3_CLASSIFY(phags_pa) | |
371 BOOST_SPIRIT_X3_CLASSIFY(inscriptional_pahlavi) | |
372 BOOST_SPIRIT_X3_CLASSIFY(phoenician) | |
373 BOOST_SPIRIT_X3_CLASSIFY(inscriptional_parthian) | |
374 BOOST_SPIRIT_X3_CLASSIFY(rejang) | |
375 BOOST_SPIRIT_X3_CLASSIFY(runic) | |
376 BOOST_SPIRIT_X3_CLASSIFY(samaritan) | |
377 BOOST_SPIRIT_X3_CLASSIFY(old_south_arabian) | |
378 BOOST_SPIRIT_X3_CLASSIFY(saurashtra) | |
379 BOOST_SPIRIT_X3_CLASSIFY(shavian) | |
380 BOOST_SPIRIT_X3_CLASSIFY(sinhala) | |
381 BOOST_SPIRIT_X3_CLASSIFY(sundanese) | |
382 BOOST_SPIRIT_X3_CLASSIFY(syloti_nagri) | |
383 BOOST_SPIRIT_X3_CLASSIFY(syriac) | |
384 BOOST_SPIRIT_X3_CLASSIFY(tagbanwa) | |
385 BOOST_SPIRIT_X3_CLASSIFY(tai_le) | |
386 BOOST_SPIRIT_X3_CLASSIFY(new_tai_lue) | |
387 BOOST_SPIRIT_X3_CLASSIFY(tamil) | |
388 BOOST_SPIRIT_X3_CLASSIFY(tai_viet) | |
389 BOOST_SPIRIT_X3_CLASSIFY(telugu) | |
390 BOOST_SPIRIT_X3_CLASSIFY(tifinagh) | |
391 BOOST_SPIRIT_X3_CLASSIFY(tagalog) | |
392 BOOST_SPIRIT_X3_CLASSIFY(thaana) | |
393 BOOST_SPIRIT_X3_CLASSIFY(thai) | |
394 BOOST_SPIRIT_X3_CLASSIFY(tibetan) | |
395 BOOST_SPIRIT_X3_CLASSIFY(ugaritic) | |
396 BOOST_SPIRIT_X3_CLASSIFY(vai) | |
397 BOOST_SPIRIT_X3_CLASSIFY(old_persian) | |
398 BOOST_SPIRIT_X3_CLASSIFY(cuneiform) | |
399 BOOST_SPIRIT_X3_CLASSIFY(yi) | |
400 BOOST_SPIRIT_X3_CLASSIFY(inherited) | |
401 BOOST_SPIRIT_X3_CLASSIFY(common) | |
402 BOOST_SPIRIT_X3_CLASSIFY(unknown) | |
403 | |
404 #undef BOOST_SPIRIT_X3_BASIC_CLASSIFY | |
405 #undef BOOST_SPIRIT_X3_CLASSIFY | |
406 }; | |
407 | |
408 template <typename Tag> | |
409 struct unicode_char_class | |
410 : char_parser<unicode_char_class<Tag>> | |
411 { | |
412 typedef char_encoding::unicode encoding; | |
413 typedef Tag tag; | |
414 typedef typename encoding::char_type char_type; | |
415 typedef char_type attribute_type; | |
416 static bool const has_attribute = true; | |
417 | |
418 template <typename Char, typename Context> | |
419 bool test(Char ch, Context const&) const | |
420 { | |
421 return ((sizeof(Char) <= sizeof(char_type)) || encoding::ischar(ch)) | |
422 && unicode_char_class_base::is(tag(), ch); | |
423 } | |
424 }; | |
425 | |
426 #define BOOST_SPIRIT_X3_CHAR_CLASS(name) \ | |
427 typedef unicode_char_class<name##_tag> name##_type; \ | |
428 name##_type const name = name##_type(); \ | |
429 /***/ | |
430 | |
431 namespace unicode | |
432 { | |
433 typedef any_char<char_encoding::unicode> char_type; | |
434 char_type const char_ = char_type(); | |
435 | |
436 /////////////////////////////////////////////////////////////////////////// | |
437 // Unicode Major Categories | |
438 /////////////////////////////////////////////////////////////////////////// | |
439 BOOST_SPIRIT_X3_CHAR_CLASS(alnum) | |
440 BOOST_SPIRIT_X3_CHAR_CLASS(alpha) | |
441 BOOST_SPIRIT_X3_CHAR_CLASS(digit) | |
442 BOOST_SPIRIT_X3_CHAR_CLASS(xdigit) | |
443 BOOST_SPIRIT_X3_CHAR_CLASS(cntrl) | |
444 BOOST_SPIRIT_X3_CHAR_CLASS(graph) | |
445 BOOST_SPIRIT_X3_CHAR_CLASS(lower) | |
446 BOOST_SPIRIT_X3_CHAR_CLASS(print) | |
447 BOOST_SPIRIT_X3_CHAR_CLASS(punct) | |
448 BOOST_SPIRIT_X3_CHAR_CLASS(space) | |
449 BOOST_SPIRIT_X3_CHAR_CLASS(blank) | |
450 BOOST_SPIRIT_X3_CHAR_CLASS(upper) | |
451 | |
452 /////////////////////////////////////////////////////////////////////////// | |
453 // Unicode Major Categories | |
454 /////////////////////////////////////////////////////////////////////////// | |
455 BOOST_SPIRIT_X3_CHAR_CLASS(letter) | |
456 BOOST_SPIRIT_X3_CHAR_CLASS(mark) | |
457 BOOST_SPIRIT_X3_CHAR_CLASS(number) | |
458 BOOST_SPIRIT_X3_CHAR_CLASS(separator) | |
459 BOOST_SPIRIT_X3_CHAR_CLASS(other) | |
460 BOOST_SPIRIT_X3_CHAR_CLASS(punctuation) | |
461 BOOST_SPIRIT_X3_CHAR_CLASS(symbol) | |
462 | |
463 /////////////////////////////////////////////////////////////////////////// | |
464 // Unicode General Categories | |
465 /////////////////////////////////////////////////////////////////////////// | |
466 BOOST_SPIRIT_X3_CHAR_CLASS(uppercase_letter) | |
467 BOOST_SPIRIT_X3_CHAR_CLASS(lowercase_letter) | |
468 BOOST_SPIRIT_X3_CHAR_CLASS(titlecase_letter) | |
469 BOOST_SPIRIT_X3_CHAR_CLASS(modifier_letter) | |
470 BOOST_SPIRIT_X3_CHAR_CLASS(other_letter) | |
471 | |
472 BOOST_SPIRIT_X3_CHAR_CLASS(nonspacing_mark) | |
473 BOOST_SPIRIT_X3_CHAR_CLASS(enclosing_mark) | |
474 BOOST_SPIRIT_X3_CHAR_CLASS(spacing_mark) | |
475 | |
476 BOOST_SPIRIT_X3_CHAR_CLASS(decimal_number) | |
477 BOOST_SPIRIT_X3_CHAR_CLASS(letter_number) | |
478 BOOST_SPIRIT_X3_CHAR_CLASS(other_number) | |
479 | |
480 BOOST_SPIRIT_X3_CHAR_CLASS(space_separator) | |
481 BOOST_SPIRIT_X3_CHAR_CLASS(line_separator) | |
482 BOOST_SPIRIT_X3_CHAR_CLASS(paragraph_separator) | |
483 | |
484 BOOST_SPIRIT_X3_CHAR_CLASS(control) | |
485 BOOST_SPIRIT_X3_CHAR_CLASS(format) | |
486 BOOST_SPIRIT_X3_CHAR_CLASS(private_use) | |
487 BOOST_SPIRIT_X3_CHAR_CLASS(surrogate) | |
488 BOOST_SPIRIT_X3_CHAR_CLASS(unassigned) | |
489 | |
490 BOOST_SPIRIT_X3_CHAR_CLASS(dash_punctuation) | |
491 BOOST_SPIRIT_X3_CHAR_CLASS(open_punctuation) | |
492 BOOST_SPIRIT_X3_CHAR_CLASS(close_punctuation) | |
493 BOOST_SPIRIT_X3_CHAR_CLASS(connector_punctuation) | |
494 BOOST_SPIRIT_X3_CHAR_CLASS(other_punctuation) | |
495 BOOST_SPIRIT_X3_CHAR_CLASS(initial_punctuation) | |
496 BOOST_SPIRIT_X3_CHAR_CLASS(final_punctuation) | |
497 | |
498 BOOST_SPIRIT_X3_CHAR_CLASS(math_symbol) | |
499 BOOST_SPIRIT_X3_CHAR_CLASS(currency_symbol) | |
500 BOOST_SPIRIT_X3_CHAR_CLASS(modifier_symbol) | |
501 BOOST_SPIRIT_X3_CHAR_CLASS(other_symbol) | |
502 | |
503 /////////////////////////////////////////////////////////////////////////// | |
504 // Unicode Derived Categories | |
505 /////////////////////////////////////////////////////////////////////////// | |
506 BOOST_SPIRIT_X3_CHAR_CLASS(alphabetic) | |
507 BOOST_SPIRIT_X3_CHAR_CLASS(uppercase) | |
508 BOOST_SPIRIT_X3_CHAR_CLASS(lowercase) | |
509 BOOST_SPIRIT_X3_CHAR_CLASS(white_space) | |
510 BOOST_SPIRIT_X3_CHAR_CLASS(hex_digit) | |
511 BOOST_SPIRIT_X3_CHAR_CLASS(noncharacter_code_point) | |
512 BOOST_SPIRIT_X3_CHAR_CLASS(default_ignorable_code_point) | |
513 | |
514 /////////////////////////////////////////////////////////////////////////// | |
515 // Unicode Scripts | |
516 /////////////////////////////////////////////////////////////////////////// | |
517 BOOST_SPIRIT_X3_CHAR_CLASS(arabic) | |
518 BOOST_SPIRIT_X3_CHAR_CLASS(imperial_aramaic) | |
519 BOOST_SPIRIT_X3_CHAR_CLASS(armenian) | |
520 BOOST_SPIRIT_X3_CHAR_CLASS(avestan) | |
521 BOOST_SPIRIT_X3_CHAR_CLASS(balinese) | |
522 BOOST_SPIRIT_X3_CHAR_CLASS(bamum) | |
523 BOOST_SPIRIT_X3_CHAR_CLASS(bengali) | |
524 BOOST_SPIRIT_X3_CHAR_CLASS(bopomofo) | |
525 BOOST_SPIRIT_X3_CHAR_CLASS(braille) | |
526 BOOST_SPIRIT_X3_CHAR_CLASS(buginese) | |
527 BOOST_SPIRIT_X3_CHAR_CLASS(buhid) | |
528 BOOST_SPIRIT_X3_CHAR_CLASS(canadian_aboriginal) | |
529 BOOST_SPIRIT_X3_CHAR_CLASS(carian) | |
530 BOOST_SPIRIT_X3_CHAR_CLASS(cham) | |
531 BOOST_SPIRIT_X3_CHAR_CLASS(cherokee) | |
532 BOOST_SPIRIT_X3_CHAR_CLASS(coptic) | |
533 BOOST_SPIRIT_X3_CHAR_CLASS(cypriot) | |
534 BOOST_SPIRIT_X3_CHAR_CLASS(cyrillic) | |
535 BOOST_SPIRIT_X3_CHAR_CLASS(devanagari) | |
536 BOOST_SPIRIT_X3_CHAR_CLASS(deseret) | |
537 BOOST_SPIRIT_X3_CHAR_CLASS(egyptian_hieroglyphs) | |
538 BOOST_SPIRIT_X3_CHAR_CLASS(ethiopic) | |
539 BOOST_SPIRIT_X3_CHAR_CLASS(georgian) | |
540 BOOST_SPIRIT_X3_CHAR_CLASS(glagolitic) | |
541 BOOST_SPIRIT_X3_CHAR_CLASS(gothic) | |
542 BOOST_SPIRIT_X3_CHAR_CLASS(greek) | |
543 BOOST_SPIRIT_X3_CHAR_CLASS(gujarati) | |
544 BOOST_SPIRIT_X3_CHAR_CLASS(gurmukhi) | |
545 BOOST_SPIRIT_X3_CHAR_CLASS(hangul) | |
546 BOOST_SPIRIT_X3_CHAR_CLASS(han) | |
547 BOOST_SPIRIT_X3_CHAR_CLASS(hanunoo) | |
548 BOOST_SPIRIT_X3_CHAR_CLASS(hebrew) | |
549 BOOST_SPIRIT_X3_CHAR_CLASS(hiragana) | |
550 BOOST_SPIRIT_X3_CHAR_CLASS(katakana_or_hiragana) | |
551 BOOST_SPIRIT_X3_CHAR_CLASS(old_italic) | |
552 BOOST_SPIRIT_X3_CHAR_CLASS(javanese) | |
553 BOOST_SPIRIT_X3_CHAR_CLASS(kayah_li) | |
554 BOOST_SPIRIT_X3_CHAR_CLASS(katakana) | |
555 BOOST_SPIRIT_X3_CHAR_CLASS(kharoshthi) | |
556 BOOST_SPIRIT_X3_CHAR_CLASS(khmer) | |
557 BOOST_SPIRIT_X3_CHAR_CLASS(kannada) | |
558 BOOST_SPIRIT_X3_CHAR_CLASS(kaithi) | |
559 BOOST_SPIRIT_X3_CHAR_CLASS(tai_tham) | |
560 BOOST_SPIRIT_X3_CHAR_CLASS(lao) | |
561 BOOST_SPIRIT_X3_CHAR_CLASS(latin) | |
562 BOOST_SPIRIT_X3_CHAR_CLASS(lepcha) | |
563 BOOST_SPIRIT_X3_CHAR_CLASS(limbu) | |
564 BOOST_SPIRIT_X3_CHAR_CLASS(linear_b) | |
565 BOOST_SPIRIT_X3_CHAR_CLASS(lisu) | |
566 BOOST_SPIRIT_X3_CHAR_CLASS(lycian) | |
567 BOOST_SPIRIT_X3_CHAR_CLASS(lydian) | |
568 BOOST_SPIRIT_X3_CHAR_CLASS(malayalam) | |
569 BOOST_SPIRIT_X3_CHAR_CLASS(mongolian) | |
570 BOOST_SPIRIT_X3_CHAR_CLASS(meetei_mayek) | |
571 BOOST_SPIRIT_X3_CHAR_CLASS(myanmar) | |
572 BOOST_SPIRIT_X3_CHAR_CLASS(nko) | |
573 BOOST_SPIRIT_X3_CHAR_CLASS(ogham) | |
574 BOOST_SPIRIT_X3_CHAR_CLASS(ol_chiki) | |
575 BOOST_SPIRIT_X3_CHAR_CLASS(old_turkic) | |
576 BOOST_SPIRIT_X3_CHAR_CLASS(oriya) | |
577 BOOST_SPIRIT_X3_CHAR_CLASS(osmanya) | |
578 BOOST_SPIRIT_X3_CHAR_CLASS(phags_pa) | |
579 BOOST_SPIRIT_X3_CHAR_CLASS(inscriptional_pahlavi) | |
580 BOOST_SPIRIT_X3_CHAR_CLASS(phoenician) | |
581 BOOST_SPIRIT_X3_CHAR_CLASS(inscriptional_parthian) | |
582 BOOST_SPIRIT_X3_CHAR_CLASS(rejang) | |
583 BOOST_SPIRIT_X3_CHAR_CLASS(runic) | |
584 BOOST_SPIRIT_X3_CHAR_CLASS(samaritan) | |
585 BOOST_SPIRIT_X3_CHAR_CLASS(old_south_arabian) | |
586 BOOST_SPIRIT_X3_CHAR_CLASS(saurashtra) | |
587 BOOST_SPIRIT_X3_CHAR_CLASS(shavian) | |
588 BOOST_SPIRIT_X3_CHAR_CLASS(sinhala) | |
589 BOOST_SPIRIT_X3_CHAR_CLASS(sundanese) | |
590 BOOST_SPIRIT_X3_CHAR_CLASS(syloti_nagri) | |
591 BOOST_SPIRIT_X3_CHAR_CLASS(syriac) | |
592 BOOST_SPIRIT_X3_CHAR_CLASS(tagbanwa) | |
593 BOOST_SPIRIT_X3_CHAR_CLASS(tai_le) | |
594 BOOST_SPIRIT_X3_CHAR_CLASS(new_tai_lue) | |
595 BOOST_SPIRIT_X3_CHAR_CLASS(tamil) | |
596 BOOST_SPIRIT_X3_CHAR_CLASS(tai_viet) | |
597 BOOST_SPIRIT_X3_CHAR_CLASS(telugu) | |
598 BOOST_SPIRIT_X3_CHAR_CLASS(tifinagh) | |
599 BOOST_SPIRIT_X3_CHAR_CLASS(tagalog) | |
600 BOOST_SPIRIT_X3_CHAR_CLASS(thaana) | |
601 BOOST_SPIRIT_X3_CHAR_CLASS(thai) | |
602 BOOST_SPIRIT_X3_CHAR_CLASS(tibetan) | |
603 BOOST_SPIRIT_X3_CHAR_CLASS(ugaritic) | |
604 BOOST_SPIRIT_X3_CHAR_CLASS(vai) | |
605 BOOST_SPIRIT_X3_CHAR_CLASS(old_persian) | |
606 BOOST_SPIRIT_X3_CHAR_CLASS(cuneiform) | |
607 BOOST_SPIRIT_X3_CHAR_CLASS(yi) | |
608 BOOST_SPIRIT_X3_CHAR_CLASS(inherited) | |
609 BOOST_SPIRIT_X3_CHAR_CLASS(common) | |
610 BOOST_SPIRIT_X3_CHAR_CLASS(unknown) | |
611 } | |
612 | |
613 #undef BOOST_SPIRIT_X3_CHAR_CLASS | |
614 | |
615 }}} | |
616 | |
617 #endif |