1 | /*============================================================================= |
2 | Copyright (c) 2001-2011 Joel de Guzman |
3 | http://spirit.sourceforge.net/ |
4 | |
5 | Distributed under the Boost Software License, Version 1.0. (See accompanying |
6 | file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
7 | =============================================================================*/ |
8 | #ifndef BOOST_SPIRIT_COMMON_PLACEHOLDERS_OCTOBER_16_2008_0102PM |
9 | #define BOOST_SPIRIT_COMMON_PLACEHOLDERS_OCTOBER_16_2008_0102PM |
10 | |
11 | #if defined(_MSC_VER) |
12 | #pragma once |
13 | #endif |
14 | |
15 | #include <boost/spirit/home/support/terminal.hpp> |
16 | #include <boost/spirit/home/support/char_encoding/standard.hpp> |
17 | #include <boost/spirit/home/support/char_encoding/standard_wide.hpp> |
18 | #include <boost/spirit/home/support/char_encoding/ascii.hpp> |
19 | #include <boost/spirit/home/support/char_encoding/iso8859_1.hpp> |
20 | #include <boost/spirit/home/support/char_class.hpp> |
21 | #include <boost/mpl/vector.hpp> |
22 | #include <boost/proto/traits.hpp> |
23 | |
24 | #if defined(BOOST_SPIRIT_UNICODE) |
25 | # include <boost/spirit/home/support/char_encoding/unicode.hpp> |
26 | #endif |
27 | |
28 | namespace boost { namespace spirit |
29 | { |
30 | typedef mpl::vector< |
31 | spirit::char_encoding::ascii |
32 | , spirit::char_encoding::iso8859_1 |
33 | , spirit::char_encoding::standard |
34 | , spirit::char_encoding::standard_wide |
35 | #if defined(BOOST_SPIRIT_UNICODE) |
36 | , spirit::char_encoding::unicode |
37 | #endif |
38 | > |
39 | char_encodings; |
40 | |
41 | template <typename T> |
42 | struct is_char_encoding : mpl::false_ {}; |
43 | |
44 | template <> |
45 | struct is_char_encoding<spirit::char_encoding::ascii> : mpl::true_ {}; |
46 | |
47 | template <> |
48 | struct is_char_encoding<spirit::char_encoding::iso8859_1> : mpl::true_ {}; |
49 | |
50 | template <> |
51 | struct is_char_encoding<spirit::char_encoding::standard> : mpl::true_ {}; |
52 | |
53 | template <> |
54 | struct is_char_encoding<spirit::char_encoding::standard_wide> : mpl::true_ {}; |
55 | |
56 | #if defined(BOOST_SPIRIT_UNICODE) |
57 | template <> |
58 | struct is_char_encoding<spirit::char_encoding::unicode> : mpl::true_ {}; |
59 | #endif |
60 | |
61 | template <typename Encoding> |
62 | struct encoding |
63 | : proto::terminal<tag::char_code<tag::encoding, Encoding> >::type |
64 | {}; |
65 | |
66 | // Our basic terminals |
67 | BOOST_SPIRIT_DEFINE_TERMINALS_NAME( |
68 | ( verbatim, verbatim_type ) |
69 | ( no_delimit, no_delimit_type ) |
70 | ( lexeme, lexeme_type ) |
71 | ( no_skip, no_skip_type ) |
72 | ( omit, omit_type ) |
73 | ( raw, raw_type ) |
74 | ( as_string, as_string_type ) |
75 | ( as_wstring, as_wstring_type ) |
76 | ( inf, inf_type ) |
77 | ( eol, eol_type ) |
78 | ( eoi, eoi_type ) |
79 | ( buffer, buffer_type ) |
80 | ( true_, true_type ) |
81 | ( false_, false_type ) |
82 | ( matches, matches_type ) |
83 | ( hold, hold_type ) |
84 | ( strict, strict_type ) |
85 | ( relaxed, relaxed_type ) |
86 | ( duplicate, duplicate_type ) |
87 | ( expect, expect_type ) |
88 | ) |
89 | |
90 | // Our extended terminals |
91 | BOOST_SPIRIT_DEFINE_TERMINALS_NAME_EX( |
92 | ( lit, lit_type ) |
93 | ( bin, bin_type ) |
94 | ( oct, oct_type ) |
95 | ( hex, hex_type ) |
96 | ( bool_, bool_type ) |
97 | ( ushort_, ushort_type ) |
98 | ( ulong_, ulong_type ) |
99 | ( uint_, uint_type ) |
100 | ( short_, short_type ) |
101 | ( long_, long_type ) |
102 | ( int_, int_type ) |
103 | ( ulong_long, ulong_long_type ) |
104 | ( long_long, long_long_type ) |
105 | ( float_, float_type ) |
106 | ( double_, double_type ) |
107 | ( long_double, long_double_type ) |
108 | ( repeat, repeat_type ) |
109 | ( eps, eps_type ) |
110 | ( pad, pad_type ) |
111 | ( byte_, byte_type ) |
112 | ( word, word_type ) |
113 | ( big_word, big_word_type ) |
114 | ( little_word, little_word_type ) |
115 | ( dword, dword_type ) |
116 | ( big_dword, big_dword_type ) |
117 | ( little_dword, little_dword_type ) |
118 | ( qword, qword_type ) |
119 | ( big_qword, big_qword_type ) |
120 | ( little_qword, little_qword_type ) |
121 | ( bin_float, bin_float_type ) |
122 | ( big_bin_float, big_bin_float_type ) |
123 | ( little_bin_float, little_bin_float_type ) |
124 | ( bin_double, bin_double_type ) |
125 | ( big_bin_double, big_bin_double_type ) |
126 | ( little_bin_double, little_bin_double_type ) |
127 | ( skip, skip_type ) |
128 | ( delimit, delimit_type ) |
129 | ( stream, stream_type ) |
130 | ( wstream, wstream_type ) |
131 | ( left_align, left_align_type ) |
132 | ( right_align, right_align_type ) |
133 | ( center, center_type ) |
134 | ( maxwidth, maxwidth_type ) |
135 | ( set_state, set_state_type ) |
136 | ( in_state, in_state_type ) |
137 | ( token, token_type ) |
138 | ( tokenid, tokenid_type ) |
139 | ( raw_token, raw_token_type ) |
140 | ( tokenid_mask, tokenid_mask_type ) |
141 | ( attr, attr_type ) |
142 | ( columns, columns_type ) |
143 | ( auto_, auto_type ) |
144 | ) |
145 | |
146 | // special tags (used mainly for stateful tag types) |
147 | namespace tag |
148 | { |
149 | struct attr_cast { BOOST_SPIRIT_IS_TAG() }; |
150 | struct as { BOOST_SPIRIT_IS_TAG() }; |
151 | } |
152 | }} |
153 | |
154 | /////////////////////////////////////////////////////////////////////////////// |
155 | // Here we place the character-set sensitive placeholders. We have one set |
156 | // each for ascii, iso8859_1, standard and standard_wide and unicode. These |
157 | // placeholders are placed in its char-set namespace. For example, there exist |
158 | // a placeholder spirit::ascii::alnum for ascii versions of alnum. |
159 | |
160 | #define BOOST_SPIRIT_TAG_CHAR_SPEC(charset) \ |
161 | typedef tag::char_code<tag::char_, charset> char_; \ |
162 | typedef tag::char_code<tag::string, charset> string; \ |
163 | /***/ |
164 | |
165 | #ifdef BOOST_SPIRIT_NO_PREDEFINED_TERMINALS |
166 | |
167 | #define BOOST_SPIRIT_CHAR_SPEC(charset) \ |
168 | typedef spirit::terminal<tag::charset::char_> char_type; \ |
169 | typedef spirit::terminal<tag::charset::string> string_type; \ |
170 | /***/ |
171 | |
172 | #else |
173 | |
174 | #define BOOST_SPIRIT_CHAR_SPEC(charset) \ |
175 | typedef spirit::terminal<tag::charset::char_> char_type; \ |
176 | char_type const char_ = char_type(); \ |
177 | \ |
178 | inline void silence_unused_warnings_##char_() { (void) char_; } \ |
179 | \ |
180 | typedef spirit::terminal<tag::charset::string> string_type; \ |
181 | string_type const string = string_type(); \ |
182 | \ |
183 | inline void silence_unused_warnings_##string() { (void) string; } \ |
184 | /***/ |
185 | |
186 | #endif |
187 | |
188 | #ifdef BOOST_SPIRIT_NO_PREDEFINED_TERMINALS |
189 | |
190 | #define BOOST_SPIRIT_CHAR_CODE(name, charset) \ |
191 | typedef proto::terminal<tag::char_code<tag::name, charset> >::type \ |
192 | name##_type; \ |
193 | /***/ |
194 | |
195 | #else |
196 | |
197 | #define BOOST_SPIRIT_CHAR_CODE(name, charset) \ |
198 | typedef proto::terminal<tag::char_code<tag::name, charset> >::type \ |
199 | name##_type; \ |
200 | name##_type const name = name##_type(); \ |
201 | \ |
202 | inline void silence_unused_warnings_##name() { (void) name; } \ |
203 | /***/ |
204 | |
205 | |
206 | #endif |
207 | |
208 | #define BOOST_SPIRIT_DEFINE_CHAR_CODES(charset) \ |
209 | namespace boost { namespace spirit { namespace tag { namespace charset \ |
210 | { \ |
211 | BOOST_SPIRIT_TAG_CHAR_SPEC(spirit::char_encoding::charset) \ |
212 | }}}} \ |
213 | namespace boost { namespace spirit { namespace charset \ |
214 | { \ |
215 | BOOST_SPIRIT_CHAR_SPEC(charset) \ |
216 | \ |
217 | BOOST_SPIRIT_CHAR_CODE(alnum, spirit::char_encoding::charset) \ |
218 | BOOST_SPIRIT_CHAR_CODE(alpha, spirit::char_encoding::charset) \ |
219 | BOOST_SPIRIT_CHAR_CODE(blank, spirit::char_encoding::charset) \ |
220 | BOOST_SPIRIT_CHAR_CODE(cntrl, spirit::char_encoding::charset) \ |
221 | BOOST_SPIRIT_CHAR_CODE(digit, spirit::char_encoding::charset) \ |
222 | BOOST_SPIRIT_CHAR_CODE(graph, spirit::char_encoding::charset) \ |
223 | BOOST_SPIRIT_CHAR_CODE(print, spirit::char_encoding::charset) \ |
224 | BOOST_SPIRIT_CHAR_CODE(punct, spirit::char_encoding::charset) \ |
225 | BOOST_SPIRIT_CHAR_CODE(space, spirit::char_encoding::charset) \ |
226 | BOOST_SPIRIT_CHAR_CODE(xdigit, spirit::char_encoding::charset) \ |
227 | \ |
228 | BOOST_SPIRIT_CHAR_CODE(no_case, spirit::char_encoding::charset) \ |
229 | BOOST_SPIRIT_CHAR_CODE(lower, spirit::char_encoding::charset) \ |
230 | BOOST_SPIRIT_CHAR_CODE(upper, spirit::char_encoding::charset) \ |
231 | BOOST_SPIRIT_CHAR_CODE(lowernum, spirit::char_encoding::charset) \ |
232 | BOOST_SPIRIT_CHAR_CODE(uppernum, spirit::char_encoding::charset) \ |
233 | }}} \ |
234 | /***/ |
235 | |
236 | BOOST_SPIRIT_DEFINE_CHAR_CODES(ascii) |
237 | BOOST_SPIRIT_DEFINE_CHAR_CODES(iso8859_1) |
238 | BOOST_SPIRIT_DEFINE_CHAR_CODES(standard) |
239 | BOOST_SPIRIT_DEFINE_CHAR_CODES(standard_wide) |
240 | |
241 | namespace boost { namespace spirit { namespace traits |
242 | { |
243 | template <typename Char> |
244 | struct char_encoding_from_char; |
245 | |
246 | template <> |
247 | struct char_encoding_from_char<char> |
248 | : mpl::identity<spirit::char_encoding::standard> |
249 | {}; |
250 | |
251 | template <> |
252 | struct char_encoding_from_char<wchar_t> |
253 | : mpl::identity<spirit::char_encoding::standard_wide> |
254 | {}; |
255 | |
256 | template <typename T> |
257 | struct char_encoding_from_char<T const> |
258 | : char_encoding_from_char<T> |
259 | {}; |
260 | }}} |
261 | |
262 | #if defined(BOOST_SPIRIT_UNICODE) |
263 | BOOST_SPIRIT_DEFINE_CHAR_CODES(unicode) |
264 | |
265 | namespace boost { namespace spirit { namespace tag { namespace unicode |
266 | { |
267 | BOOST_SPIRIT_TAG_CHAR_SPEC(spirit::char_encoding::unicode) |
268 | }}}} |
269 | |
270 | namespace boost { namespace spirit { namespace unicode |
271 | { |
272 | #define BOOST_SPIRIT_UNICODE_CHAR_CODE(name) \ |
273 | BOOST_SPIRIT_CHAR_CODE(name, spirit::char_encoding::unicode) \ |
274 | |
275 | /////////////////////////////////////////////////////////////////////////// |
276 | // Unicode Major Categories |
277 | /////////////////////////////////////////////////////////////////////////// |
278 | BOOST_SPIRIT_UNICODE_CHAR_CODE(letter) |
279 | BOOST_SPIRIT_UNICODE_CHAR_CODE(mark) |
280 | BOOST_SPIRIT_UNICODE_CHAR_CODE(number) |
281 | BOOST_SPIRIT_UNICODE_CHAR_CODE(separator) |
282 | BOOST_SPIRIT_UNICODE_CHAR_CODE(other) |
283 | BOOST_SPIRIT_UNICODE_CHAR_CODE(punctuation) |
284 | BOOST_SPIRIT_UNICODE_CHAR_CODE(symbol) |
285 | |
286 | /////////////////////////////////////////////////////////////////////////// |
287 | // Unicode General Categories |
288 | /////////////////////////////////////////////////////////////////////////// |
289 | BOOST_SPIRIT_UNICODE_CHAR_CODE(uppercase_letter) |
290 | BOOST_SPIRIT_UNICODE_CHAR_CODE(lowercase_letter) |
291 | BOOST_SPIRIT_UNICODE_CHAR_CODE(titlecase_letter) |
292 | BOOST_SPIRIT_UNICODE_CHAR_CODE(modifier_letter) |
293 | BOOST_SPIRIT_UNICODE_CHAR_CODE(other_letter) |
294 | |
295 | BOOST_SPIRIT_UNICODE_CHAR_CODE(nonspacing_mark) |
296 | BOOST_SPIRIT_UNICODE_CHAR_CODE(enclosing_mark) |
297 | BOOST_SPIRIT_UNICODE_CHAR_CODE(spacing_mark) |
298 | |
299 | BOOST_SPIRIT_UNICODE_CHAR_CODE(decimal_number) |
300 | BOOST_SPIRIT_UNICODE_CHAR_CODE(letter_number) |
301 | BOOST_SPIRIT_UNICODE_CHAR_CODE(other_number) |
302 | |
303 | BOOST_SPIRIT_UNICODE_CHAR_CODE(space_separator) |
304 | BOOST_SPIRIT_UNICODE_CHAR_CODE(line_separator) |
305 | BOOST_SPIRIT_UNICODE_CHAR_CODE(paragraph_separator) |
306 | |
307 | BOOST_SPIRIT_UNICODE_CHAR_CODE(control) |
308 | BOOST_SPIRIT_UNICODE_CHAR_CODE(format) |
309 | BOOST_SPIRIT_UNICODE_CHAR_CODE(private_use) |
310 | BOOST_SPIRIT_UNICODE_CHAR_CODE(surrogate) |
311 | BOOST_SPIRIT_UNICODE_CHAR_CODE(unassigned) |
312 | |
313 | BOOST_SPIRIT_UNICODE_CHAR_CODE(dash_punctuation) |
314 | BOOST_SPIRIT_UNICODE_CHAR_CODE(open_punctuation) |
315 | BOOST_SPIRIT_UNICODE_CHAR_CODE(close_punctuation) |
316 | BOOST_SPIRIT_UNICODE_CHAR_CODE(connector_punctuation) |
317 | BOOST_SPIRIT_UNICODE_CHAR_CODE(other_punctuation) |
318 | BOOST_SPIRIT_UNICODE_CHAR_CODE(initial_punctuation) |
319 | BOOST_SPIRIT_UNICODE_CHAR_CODE(final_punctuation) |
320 | |
321 | BOOST_SPIRIT_UNICODE_CHAR_CODE(math_symbol) |
322 | BOOST_SPIRIT_UNICODE_CHAR_CODE(currency_symbol) |
323 | BOOST_SPIRIT_UNICODE_CHAR_CODE(modifier_symbol) |
324 | BOOST_SPIRIT_UNICODE_CHAR_CODE(other_symbol) |
325 | |
326 | /////////////////////////////////////////////////////////////////////////// |
327 | // Unicode Derived Categories |
328 | /////////////////////////////////////////////////////////////////////////// |
329 | BOOST_SPIRIT_UNICODE_CHAR_CODE(alphabetic) |
330 | BOOST_SPIRIT_UNICODE_CHAR_CODE(uppercase) |
331 | BOOST_SPIRIT_UNICODE_CHAR_CODE(lowercase) |
332 | BOOST_SPIRIT_UNICODE_CHAR_CODE(white_space) |
333 | BOOST_SPIRIT_UNICODE_CHAR_CODE(hex_digit) |
334 | BOOST_SPIRIT_UNICODE_CHAR_CODE(noncharacter_code_point) |
335 | BOOST_SPIRIT_UNICODE_CHAR_CODE(default_ignorable_code_point) |
336 | |
337 | /////////////////////////////////////////////////////////////////////////// |
338 | // Unicode Scripts |
339 | /////////////////////////////////////////////////////////////////////////// |
340 | BOOST_SPIRIT_UNICODE_CHAR_CODE(adlam) |
341 | BOOST_SPIRIT_UNICODE_CHAR_CODE(caucasian_albanian) |
342 | BOOST_SPIRIT_UNICODE_CHAR_CODE(ahom) |
343 | BOOST_SPIRIT_UNICODE_CHAR_CODE(arabic) |
344 | BOOST_SPIRIT_UNICODE_CHAR_CODE(imperial_aramaic) |
345 | BOOST_SPIRIT_UNICODE_CHAR_CODE(armenian) |
346 | BOOST_SPIRIT_UNICODE_CHAR_CODE(avestan) |
347 | BOOST_SPIRIT_UNICODE_CHAR_CODE(balinese) |
348 | BOOST_SPIRIT_UNICODE_CHAR_CODE(bamum) |
349 | BOOST_SPIRIT_UNICODE_CHAR_CODE(bassa_vah) |
350 | BOOST_SPIRIT_UNICODE_CHAR_CODE(batak) |
351 | BOOST_SPIRIT_UNICODE_CHAR_CODE(bengali) |
352 | BOOST_SPIRIT_UNICODE_CHAR_CODE(bhaiksuki) |
353 | BOOST_SPIRIT_UNICODE_CHAR_CODE(bopomofo) |
354 | BOOST_SPIRIT_UNICODE_CHAR_CODE(brahmi) |
355 | BOOST_SPIRIT_UNICODE_CHAR_CODE(braille) |
356 | BOOST_SPIRIT_UNICODE_CHAR_CODE(buginese) |
357 | BOOST_SPIRIT_UNICODE_CHAR_CODE(buhid) |
358 | BOOST_SPIRIT_UNICODE_CHAR_CODE(chakma) |
359 | BOOST_SPIRIT_UNICODE_CHAR_CODE(canadian_aboriginal) |
360 | BOOST_SPIRIT_UNICODE_CHAR_CODE(carian) |
361 | BOOST_SPIRIT_UNICODE_CHAR_CODE(cham) |
362 | BOOST_SPIRIT_UNICODE_CHAR_CODE(cherokee) |
363 | BOOST_SPIRIT_UNICODE_CHAR_CODE(chorasmian) |
364 | BOOST_SPIRIT_UNICODE_CHAR_CODE(coptic) |
365 | BOOST_SPIRIT_UNICODE_CHAR_CODE(cypro_minoan) |
366 | BOOST_SPIRIT_UNICODE_CHAR_CODE(cypriot) |
367 | BOOST_SPIRIT_UNICODE_CHAR_CODE(cyrillic) |
368 | BOOST_SPIRIT_UNICODE_CHAR_CODE(devanagari) |
369 | BOOST_SPIRIT_UNICODE_CHAR_CODE(dives_akuru) |
370 | BOOST_SPIRIT_UNICODE_CHAR_CODE(dogra) |
371 | BOOST_SPIRIT_UNICODE_CHAR_CODE(deseret) |
372 | BOOST_SPIRIT_UNICODE_CHAR_CODE(duployan) |
373 | BOOST_SPIRIT_UNICODE_CHAR_CODE(egyptian_hieroglyphs) |
374 | BOOST_SPIRIT_UNICODE_CHAR_CODE(elbasan) |
375 | BOOST_SPIRIT_UNICODE_CHAR_CODE(elymaic) |
376 | BOOST_SPIRIT_UNICODE_CHAR_CODE(ethiopic) |
377 | BOOST_SPIRIT_UNICODE_CHAR_CODE(georgian) |
378 | BOOST_SPIRIT_UNICODE_CHAR_CODE(glagolitic) |
379 | BOOST_SPIRIT_UNICODE_CHAR_CODE(gunjala_gondi) |
380 | BOOST_SPIRIT_UNICODE_CHAR_CODE(masaram_gondi) |
381 | BOOST_SPIRIT_UNICODE_CHAR_CODE(gothic) |
382 | BOOST_SPIRIT_UNICODE_CHAR_CODE(grantha) |
383 | BOOST_SPIRIT_UNICODE_CHAR_CODE(greek) |
384 | BOOST_SPIRIT_UNICODE_CHAR_CODE(gujarati) |
385 | BOOST_SPIRIT_UNICODE_CHAR_CODE(gurmukhi) |
386 | BOOST_SPIRIT_UNICODE_CHAR_CODE(hangul) |
387 | BOOST_SPIRIT_UNICODE_CHAR_CODE(han) |
388 | BOOST_SPIRIT_UNICODE_CHAR_CODE(hanunoo) |
389 | BOOST_SPIRIT_UNICODE_CHAR_CODE(hatran) |
390 | BOOST_SPIRIT_UNICODE_CHAR_CODE(hebrew) |
391 | BOOST_SPIRIT_UNICODE_CHAR_CODE(hiragana) |
392 | BOOST_SPIRIT_UNICODE_CHAR_CODE(anatolian_hieroglyphs) |
393 | BOOST_SPIRIT_UNICODE_CHAR_CODE(pahawh_hmong) |
394 | BOOST_SPIRIT_UNICODE_CHAR_CODE(nyiakeng_puachue_hmong) |
395 | BOOST_SPIRIT_UNICODE_CHAR_CODE(katakana_or_hiragana) |
396 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_hungarian) |
397 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_italic) |
398 | BOOST_SPIRIT_UNICODE_CHAR_CODE(javanese) |
399 | BOOST_SPIRIT_UNICODE_CHAR_CODE(kayah_li) |
400 | BOOST_SPIRIT_UNICODE_CHAR_CODE(katakana) |
401 | BOOST_SPIRIT_UNICODE_CHAR_CODE(kawi) |
402 | BOOST_SPIRIT_UNICODE_CHAR_CODE(kharoshthi) |
403 | BOOST_SPIRIT_UNICODE_CHAR_CODE(khmer) |
404 | BOOST_SPIRIT_UNICODE_CHAR_CODE(khojki) |
405 | BOOST_SPIRIT_UNICODE_CHAR_CODE(khitan_small_script) |
406 | BOOST_SPIRIT_UNICODE_CHAR_CODE(kannada) |
407 | BOOST_SPIRIT_UNICODE_CHAR_CODE(kaithi) |
408 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tai_tham) |
409 | BOOST_SPIRIT_UNICODE_CHAR_CODE(lao) |
410 | BOOST_SPIRIT_UNICODE_CHAR_CODE(latin) |
411 | BOOST_SPIRIT_UNICODE_CHAR_CODE(lepcha) |
412 | BOOST_SPIRIT_UNICODE_CHAR_CODE(limbu) |
413 | BOOST_SPIRIT_UNICODE_CHAR_CODE(linear_a) |
414 | BOOST_SPIRIT_UNICODE_CHAR_CODE(linear_b) |
415 | BOOST_SPIRIT_UNICODE_CHAR_CODE(lisu) |
416 | BOOST_SPIRIT_UNICODE_CHAR_CODE(lycian) |
417 | BOOST_SPIRIT_UNICODE_CHAR_CODE(lydian) |
418 | BOOST_SPIRIT_UNICODE_CHAR_CODE(mahajani) |
419 | BOOST_SPIRIT_UNICODE_CHAR_CODE(makasar) |
420 | BOOST_SPIRIT_UNICODE_CHAR_CODE(mandaic) |
421 | BOOST_SPIRIT_UNICODE_CHAR_CODE(manichaean) |
422 | BOOST_SPIRIT_UNICODE_CHAR_CODE(marchen) |
423 | BOOST_SPIRIT_UNICODE_CHAR_CODE(medefaidrin) |
424 | BOOST_SPIRIT_UNICODE_CHAR_CODE(mende_kikakui) |
425 | BOOST_SPIRIT_UNICODE_CHAR_CODE(meroitic_cursive) |
426 | BOOST_SPIRIT_UNICODE_CHAR_CODE(meroitic_hieroglyphs) |
427 | BOOST_SPIRIT_UNICODE_CHAR_CODE(malayalam) |
428 | BOOST_SPIRIT_UNICODE_CHAR_CODE(modi) |
429 | BOOST_SPIRIT_UNICODE_CHAR_CODE(mongolian) |
430 | BOOST_SPIRIT_UNICODE_CHAR_CODE(mro) |
431 | BOOST_SPIRIT_UNICODE_CHAR_CODE(meetei_mayek) |
432 | BOOST_SPIRIT_UNICODE_CHAR_CODE(multani) |
433 | BOOST_SPIRIT_UNICODE_CHAR_CODE(myanmar) |
434 | BOOST_SPIRIT_UNICODE_CHAR_CODE(nag_mundari) |
435 | BOOST_SPIRIT_UNICODE_CHAR_CODE(nandinagari) |
436 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_north_arabian) |
437 | BOOST_SPIRIT_UNICODE_CHAR_CODE(nabataean) |
438 | BOOST_SPIRIT_UNICODE_CHAR_CODE(newa) |
439 | BOOST_SPIRIT_UNICODE_CHAR_CODE(nko) |
440 | BOOST_SPIRIT_UNICODE_CHAR_CODE(nushu) |
441 | BOOST_SPIRIT_UNICODE_CHAR_CODE(ogham) |
442 | BOOST_SPIRIT_UNICODE_CHAR_CODE(ol_chiki) |
443 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_turkic) |
444 | BOOST_SPIRIT_UNICODE_CHAR_CODE(oriya) |
445 | BOOST_SPIRIT_UNICODE_CHAR_CODE(osage) |
446 | BOOST_SPIRIT_UNICODE_CHAR_CODE(osmanya) |
447 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_uyghur) |
448 | BOOST_SPIRIT_UNICODE_CHAR_CODE(palmyrene) |
449 | BOOST_SPIRIT_UNICODE_CHAR_CODE(pau_cin_hau) |
450 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_permic) |
451 | BOOST_SPIRIT_UNICODE_CHAR_CODE(phags_pa) |
452 | BOOST_SPIRIT_UNICODE_CHAR_CODE(inscriptional_pahlavi) |
453 | BOOST_SPIRIT_UNICODE_CHAR_CODE(psalter_pahlavi) |
454 | BOOST_SPIRIT_UNICODE_CHAR_CODE(phoenician) |
455 | BOOST_SPIRIT_UNICODE_CHAR_CODE(miao) |
456 | BOOST_SPIRIT_UNICODE_CHAR_CODE(inscriptional_parthian) |
457 | BOOST_SPIRIT_UNICODE_CHAR_CODE(rejang) |
458 | BOOST_SPIRIT_UNICODE_CHAR_CODE(hanifi_rohingya) |
459 | BOOST_SPIRIT_UNICODE_CHAR_CODE(runic) |
460 | BOOST_SPIRIT_UNICODE_CHAR_CODE(samaritan) |
461 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_south_arabian) |
462 | BOOST_SPIRIT_UNICODE_CHAR_CODE(saurashtra) |
463 | BOOST_SPIRIT_UNICODE_CHAR_CODE(signwriting) |
464 | BOOST_SPIRIT_UNICODE_CHAR_CODE(shavian) |
465 | BOOST_SPIRIT_UNICODE_CHAR_CODE(sharada) |
466 | BOOST_SPIRIT_UNICODE_CHAR_CODE(siddham) |
467 | BOOST_SPIRIT_UNICODE_CHAR_CODE(khudawadi) |
468 | BOOST_SPIRIT_UNICODE_CHAR_CODE(sinhala) |
469 | BOOST_SPIRIT_UNICODE_CHAR_CODE(sogdian) |
470 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_sogdian) |
471 | BOOST_SPIRIT_UNICODE_CHAR_CODE(sora_sompeng) |
472 | BOOST_SPIRIT_UNICODE_CHAR_CODE(soyombo) |
473 | BOOST_SPIRIT_UNICODE_CHAR_CODE(sundanese) |
474 | BOOST_SPIRIT_UNICODE_CHAR_CODE(syloti_nagri) |
475 | BOOST_SPIRIT_UNICODE_CHAR_CODE(syriac) |
476 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tagbanwa) |
477 | BOOST_SPIRIT_UNICODE_CHAR_CODE(takri) |
478 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tai_le) |
479 | BOOST_SPIRIT_UNICODE_CHAR_CODE(new_tai_lue) |
480 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tamil) |
481 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tangut) |
482 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tai_viet) |
483 | BOOST_SPIRIT_UNICODE_CHAR_CODE(telugu) |
484 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tifinagh) |
485 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tagalog) |
486 | BOOST_SPIRIT_UNICODE_CHAR_CODE(thaana) |
487 | BOOST_SPIRIT_UNICODE_CHAR_CODE(thai) |
488 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tibetan) |
489 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tirhuta) |
490 | BOOST_SPIRIT_UNICODE_CHAR_CODE(tangsa) |
491 | BOOST_SPIRIT_UNICODE_CHAR_CODE(toto) |
492 | BOOST_SPIRIT_UNICODE_CHAR_CODE(ugaritic) |
493 | BOOST_SPIRIT_UNICODE_CHAR_CODE(vai) |
494 | BOOST_SPIRIT_UNICODE_CHAR_CODE(vithkuqi) |
495 | BOOST_SPIRIT_UNICODE_CHAR_CODE(warang_citi) |
496 | BOOST_SPIRIT_UNICODE_CHAR_CODE(wancho) |
497 | BOOST_SPIRIT_UNICODE_CHAR_CODE(old_persian) |
498 | BOOST_SPIRIT_UNICODE_CHAR_CODE(cuneiform) |
499 | BOOST_SPIRIT_UNICODE_CHAR_CODE(yezidi) |
500 | BOOST_SPIRIT_UNICODE_CHAR_CODE(yi) |
501 | BOOST_SPIRIT_UNICODE_CHAR_CODE(zanabazar_square) |
502 | BOOST_SPIRIT_UNICODE_CHAR_CODE(inherited) |
503 | BOOST_SPIRIT_UNICODE_CHAR_CODE(common) |
504 | BOOST_SPIRIT_UNICODE_CHAR_CODE(unknown) |
505 | |
506 | #undef BOOST_SPIRIT_UNICODE_CHAR_CODE |
507 | }}} |
508 | #endif |
509 | |
510 | #endif |
511 | |