]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/spirit/example/qi/compiler_tutorial/conjure2/conjure_static_switch_lexer.hpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / libs / spirit / example / qi / compiler_tutorial / conjure2 / conjure_static_switch_lexer.hpp
1 // Copyright (c) 2008-2009 Ben Hanson
2 // Copyright (c) 2008-2011 Hartmut Kaiser
3 //
4 // Distributed under the Boost Software License, Version 1.0. (See accompanying
5 // file licence_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
6
7 // Auto-generated by boost::lexer, do not edit
8
9 #if !defined(BOOST_SPIRIT_LEXER_NEXT_TOKEN_CONJURE_STATIC_SWITCH_JUL_25_2011_07_03_08)
10 #define BOOST_SPIRIT_LEXER_NEXT_TOKEN_CONJURE_STATIC_SWITCH_JUL_25_2011_07_03_08
11
12 #include <boost/spirit/home/support/detail/lexer/char_traits.hpp>
13
14 ////////////////////////////////////////////////////////////////////////////////
15 // the generated table of state names and the tokenizer have to be
16 // defined in the boost::spirit::lex::lexertl::static_ namespace
17 namespace boost { namespace spirit { namespace lex { namespace lexertl { namespace static_ {
18
19 ////////////////////////////////////////////////////////////////////////////////
20 // this table defines the names of the lexer states
21 char const* const lexer_state_names_conjure_static_switch[1] =
22 {
23 "INITIAL"
24 };
25
26 ////////////////////////////////////////////////////////////////////////////////
27 // this variable defines the number of lexer states
28 std::size_t const lexer_state_count_conjure_static_switch = 1;
29
30 ////////////////////////////////////////////////////////////////////////////////
31 // this function returns the next matched token
32 template<typename Iterator>
33 std::size_t next_token_conjure_static_switch (std::size_t& /*start_state_*/, bool& /*bol_*/,
34 Iterator &start_token_, Iterator const& end_, std::size_t& unique_id_)
35 {
36 static std::size_t const npos = static_cast<std::size_t>(~0);
37
38 if (start_token_ == end_)
39 {
40 unique_id_ = npos;
41 return 0;
42 }
43
44 Iterator curr_ = start_token_;
45 bool end_state_ = false;
46 std::size_t id_ = npos;
47 std::size_t uid_ = npos;
48 Iterator end_token_ = start_token_;
49
50 char ch_ = 0;
51
52 if (curr_ == end_) goto end;
53 ch_ = *curr_;
54 ++curr_;
55
56 if ((ch_ >= '0' && ch_ <= '9')) goto state0_1;
57
58 if (ch_ == 't') goto state0_2;
59
60 if (ch_ == 'f') goto state0_3;
61
62 if (ch_ == 'v') goto state0_4;
63
64 if (ch_ == 'i') goto state0_5;
65
66 if (ch_ == 'e') goto state0_6;
67
68 if (ch_ == 'w') goto state0_7;
69
70 if (ch_ == 'r') goto state0_8;
71
72 if (ch_ == '|') goto state0_9;
73
74 if (ch_ == '&') goto state0_10;
75
76 if (ch_ == '=') goto state0_11;
77
78 if (ch_ == '!') goto state0_12;
79
80 if (ch_ == '<') goto state0_13;
81
82 if (ch_ == '>') goto state0_14;
83
84 if (ch_ == '+') goto state0_15;
85
86 if (ch_ == '-') goto state0_16;
87
88 if (ch_ == '*') goto state0_17;
89
90 if (ch_ == '/') goto state0_18;
91
92 if (ch_ == '(') goto state0_19;
93
94 if (ch_ == ')') goto state0_20;
95
96 if (ch_ == '{') goto state0_21;
97
98 if (ch_ == '}') goto state0_22;
99
100 if (ch_ == ',') goto state0_23;
101
102 if (ch_ == ';') goto state0_24;
103
104 if ((ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'd') || (ch_ >= 'g' && ch_ <= 'h') || (ch_ >= 'j' && ch_ <= 'q') || ch_ == 's' || ch_ == 'u' || (ch_ >= 'x' && ch_ <= 'z')) goto state0_25;
105
106 if ((ch_ >= '\t' && ch_ <= '\n') || ch_ == '\r' || ch_ == ' ') goto state0_26;
107 goto end;
108
109 state0_1:
110 end_state_ = true;
111 id_ = 35;
112 uid_ = 0;
113 end_token_ = curr_;
114
115 if (curr_ == end_) goto end;
116 ch_ = *curr_;
117 ++curr_;
118
119 if ((ch_ >= '0' && ch_ <= '9')) goto state0_1;
120 goto end;
121
122 state0_2:
123 end_state_ = true;
124 id_ = 32;
125 uid_ = 28;
126 end_token_ = curr_;
127
128 if (curr_ == end_) goto end;
129 ch_ = *curr_;
130 ++curr_;
131
132 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'q') || (ch_ >= 's' && ch_ <= 'z')) goto state0_25;
133
134 if (ch_ == 'r') goto state0_27;
135 goto end;
136
137 state0_3:
138 end_state_ = true;
139 id_ = 32;
140 uid_ = 28;
141 end_token_ = curr_;
142
143 if (curr_ == end_) goto end;
144 ch_ = *curr_;
145 ++curr_;
146
147 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'b' && ch_ <= 'z')) goto state0_25;
148
149 if (ch_ == 'a') goto state0_28;
150 goto end;
151
152 state0_4:
153 end_state_ = true;
154 id_ = 32;
155 uid_ = 28;
156 end_token_ = curr_;
157
158 if (curr_ == end_) goto end;
159 ch_ = *curr_;
160 ++curr_;
161
162 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'n') || (ch_ >= 'p' && ch_ <= 'z')) goto state0_25;
163
164 if (ch_ == 'o') goto state0_29;
165 goto end;
166
167 state0_5:
168 end_state_ = true;
169 id_ = 32;
170 uid_ = 28;
171 end_token_ = curr_;
172
173 if (curr_ == end_) goto end;
174 ch_ = *curr_;
175 ++curr_;
176
177 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'e') || (ch_ >= 'g' && ch_ <= 'm') || (ch_ >= 'o' && ch_ <= 'z')) goto state0_25;
178
179 if (ch_ == 'n') goto state0_30;
180
181 if (ch_ == 'f') goto state0_31;
182 goto end;
183
184 state0_6:
185 end_state_ = true;
186 id_ = 32;
187 uid_ = 28;
188 end_token_ = curr_;
189
190 if (curr_ == end_) goto end;
191 ch_ = *curr_;
192 ++curr_;
193
194 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'k') || (ch_ >= 'm' && ch_ <= 'z')) goto state0_25;
195
196 if (ch_ == 'l') goto state0_32;
197 goto end;
198
199 state0_7:
200 end_state_ = true;
201 id_ = 32;
202 uid_ = 28;
203 end_token_ = curr_;
204
205 if (curr_ == end_) goto end;
206 ch_ = *curr_;
207 ++curr_;
208
209 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'g') || (ch_ >= 'i' && ch_ <= 'z')) goto state0_25;
210
211 if (ch_ == 'h') goto state0_33;
212 goto end;
213
214 state0_8:
215 end_state_ = true;
216 id_ = 32;
217 uid_ = 28;
218 end_token_ = curr_;
219
220 if (curr_ == end_) goto end;
221 ch_ = *curr_;
222 ++curr_;
223
224 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'd') || (ch_ >= 'f' && ch_ <= 'z')) goto state0_25;
225
226 if (ch_ == 'e') goto state0_34;
227 goto end;
228
229 state0_9:
230 if (curr_ == end_) goto end;
231 ch_ = *curr_;
232 ++curr_;
233
234 if (ch_ == '|') goto state0_35;
235 goto end;
236
237 state0_10:
238 if (curr_ == end_) goto end;
239 ch_ = *curr_;
240 ++curr_;
241
242 if (ch_ == '&') goto state0_36;
243 goto end;
244
245 state0_11:
246 end_state_ = true;
247 id_ = 61;
248 uid_ = 26;
249 end_token_ = curr_;
250
251 if (curr_ == end_) goto end;
252 ch_ = *curr_;
253 ++curr_;
254
255 if (ch_ == '=') goto state0_37;
256 goto end;
257
258 state0_12:
259 end_state_ = true;
260 id_ = 262177;
261 uid_ = 20;
262 end_token_ = curr_;
263
264 if (curr_ == end_) goto end;
265 ch_ = *curr_;
266 ++curr_;
267
268 if (ch_ == '=') goto state0_38;
269 goto end;
270
271 state0_13:
272 end_state_ = true;
273 id_ = 131091;
274 uid_ = 12;
275 end_token_ = curr_;
276
277 if (curr_ == end_) goto end;
278 ch_ = *curr_;
279 ++curr_;
280
281 if (ch_ == '=') goto state0_39;
282 goto end;
283
284 state0_14:
285 end_state_ = true;
286 id_ = 131093;
287 uid_ = 14;
288 end_token_ = curr_;
289
290 if (curr_ == end_) goto end;
291 ch_ = *curr_;
292 ++curr_;
293
294 if (ch_ == '=') goto state0_40;
295 goto end;
296
297 state0_15:
298 end_state_ = true;
299 id_ = 393241;
300 uid_ = 16;
301 end_token_ = curr_;
302 goto end;
303
304 state0_16:
305 end_state_ = true;
306 id_ = 393242;
307 uid_ = 17;
308 end_token_ = curr_;
309 goto end;
310
311 state0_17:
312 end_state_ = true;
313 id_ = 131099;
314 uid_ = 18;
315 end_token_ = curr_;
316 goto end;
317
318 state0_18:
319 end_state_ = true;
320 id_ = 131100;
321 uid_ = 19;
322 end_token_ = curr_;
323
324 if (curr_ == end_) goto end;
325 ch_ = *curr_;
326 ++curr_;
327
328 if (ch_ == '*') goto state0_41;
329 goto end;
330
331 state0_19:
332 end_state_ = true;
333 id_ = 40;
334 uid_ = 21;
335 end_token_ = curr_;
336 goto end;
337
338 state0_20:
339 end_state_ = true;
340 id_ = 41;
341 uid_ = 22;
342 end_token_ = curr_;
343 goto end;
344
345 state0_21:
346 end_state_ = true;
347 id_ = 123;
348 uid_ = 23;
349 end_token_ = curr_;
350 goto end;
351
352 state0_22:
353 end_state_ = true;
354 id_ = 125;
355 uid_ = 24;
356 end_token_ = curr_;
357 goto end;
358
359 state0_23:
360 end_state_ = true;
361 id_ = 44;
362 uid_ = 25;
363 end_token_ = curr_;
364 goto end;
365
366 state0_24:
367 end_state_ = true;
368 id_ = 59;
369 uid_ = 27;
370 end_token_ = curr_;
371 goto end;
372
373 state0_25:
374 end_state_ = true;
375 id_ = 32;
376 uid_ = 28;
377 end_token_ = curr_;
378
379 if (curr_ == end_) goto end;
380 ch_ = *curr_;
381 ++curr_;
382
383 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'z')) goto state0_25;
384 goto end;
385
386 state0_26:
387 end_state_ = true;
388 id_ = 34;
389 uid_ = 30;
390 end_token_ = curr_;
391
392 if (curr_ == end_) goto end;
393 ch_ = *curr_;
394 ++curr_;
395
396 if ((ch_ >= '\t' && ch_ <= '\n') || ch_ == '\r' || ch_ == ' ') goto state0_26;
397 goto end;
398
399 state0_27:
400 end_state_ = true;
401 id_ = 32;
402 uid_ = 28;
403 end_token_ = curr_;
404
405 if (curr_ == end_) goto end;
406 ch_ = *curr_;
407 ++curr_;
408
409 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 't') || (ch_ >= 'v' && ch_ <= 'z')) goto state0_25;
410
411 if (ch_ == 'u') goto state0_42;
412 goto end;
413
414 state0_28:
415 end_state_ = true;
416 id_ = 32;
417 uid_ = 28;
418 end_token_ = curr_;
419
420 if (curr_ == end_) goto end;
421 ch_ = *curr_;
422 ++curr_;
423
424 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'k') || (ch_ >= 'm' && ch_ <= 'z')) goto state0_25;
425
426 if (ch_ == 'l') goto state0_43;
427 goto end;
428
429 state0_29:
430 end_state_ = true;
431 id_ = 32;
432 uid_ = 28;
433 end_token_ = curr_;
434
435 if (curr_ == end_) goto end;
436 ch_ = *curr_;
437 ++curr_;
438
439 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'h') || (ch_ >= 'j' && ch_ <= 'z')) goto state0_25;
440
441 if (ch_ == 'i') goto state0_44;
442 goto end;
443
444 state0_30:
445 end_state_ = true;
446 id_ = 32;
447 uid_ = 28;
448 end_token_ = curr_;
449
450 if (curr_ == end_) goto end;
451 ch_ = *curr_;
452 ++curr_;
453
454 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 's') || (ch_ >= 'u' && ch_ <= 'z')) goto state0_25;
455
456 if (ch_ == 't') goto state0_45;
457 goto end;
458
459 state0_31:
460 end_state_ = true;
461 id_ = 65538;
462 uid_ = 4;
463 end_token_ = curr_;
464
465 if (curr_ == end_) goto end;
466 ch_ = *curr_;
467 ++curr_;
468
469 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'z')) goto state0_25;
470 goto end;
471
472 state0_32:
473 end_state_ = true;
474 id_ = 32;
475 uid_ = 28;
476 end_token_ = curr_;
477
478 if (curr_ == end_) goto end;
479 ch_ = *curr_;
480 ++curr_;
481
482 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'r') || (ch_ >= 't' && ch_ <= 'z')) goto state0_25;
483
484 if (ch_ == 's') goto state0_46;
485 goto end;
486
487 state0_33:
488 end_state_ = true;
489 id_ = 32;
490 uid_ = 28;
491 end_token_ = curr_;
492
493 if (curr_ == end_) goto end;
494 ch_ = *curr_;
495 ++curr_;
496
497 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'h') || (ch_ >= 'j' && ch_ <= 'z')) goto state0_25;
498
499 if (ch_ == 'i') goto state0_47;
500 goto end;
501
502 state0_34:
503 end_state_ = true;
504 id_ = 32;
505 uid_ = 28;
506 end_token_ = curr_;
507
508 if (curr_ == end_) goto end;
509 ch_ = *curr_;
510 ++curr_;
511
512 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 's') || (ch_ >= 'u' && ch_ <= 'z')) goto state0_25;
513
514 if (ch_ == 't') goto state0_48;
515 goto end;
516
517 state0_35:
518 end_state_ = true;
519 id_ = 131084;
520 uid_ = 8;
521 end_token_ = curr_;
522 goto end;
523
524 state0_36:
525 end_state_ = true;
526 id_ = 131085;
527 uid_ = 9;
528 end_token_ = curr_;
529 goto end;
530
531 state0_37:
532 end_state_ = true;
533 id_ = 131089;
534 uid_ = 10;
535 end_token_ = curr_;
536 goto end;
537
538 state0_38:
539 end_state_ = true;
540 id_ = 131090;
541 uid_ = 11;
542 end_token_ = curr_;
543 goto end;
544
545 state0_39:
546 end_state_ = true;
547 id_ = 131092;
548 uid_ = 13;
549 end_token_ = curr_;
550 goto end;
551
552 state0_40:
553 end_state_ = true;
554 id_ = 131094;
555 uid_ = 15;
556 end_token_ = curr_;
557 goto end;
558
559 state0_41:
560 if (curr_ == end_) goto end;
561 ch_ = *curr_;
562 ++curr_;
563
564 if (ch_ != '*') goto state0_41;
565
566 if (ch_ == '*') goto state0_49;
567 goto end;
568
569 state0_42:
570 end_state_ = true;
571 id_ = 32;
572 uid_ = 28;
573 end_token_ = curr_;
574
575 if (curr_ == end_) goto end;
576 ch_ = *curr_;
577 ++curr_;
578
579 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'd') || (ch_ >= 'f' && ch_ <= 'z')) goto state0_25;
580
581 if (ch_ == 'e') goto state0_50;
582 goto end;
583
584 state0_43:
585 end_state_ = true;
586 id_ = 32;
587 uid_ = 28;
588 end_token_ = curr_;
589
590 if (curr_ == end_) goto end;
591 ch_ = *curr_;
592 ++curr_;
593
594 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'r') || (ch_ >= 't' && ch_ <= 'z')) goto state0_25;
595
596 if (ch_ == 's') goto state0_42;
597 goto end;
598
599 state0_44:
600 end_state_ = true;
601 id_ = 32;
602 uid_ = 28;
603 end_token_ = curr_;
604
605 if (curr_ == end_) goto end;
606 ch_ = *curr_;
607 ++curr_;
608
609 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'c') || (ch_ >= 'e' && ch_ <= 'z')) goto state0_25;
610
611 if (ch_ == 'd') goto state0_51;
612 goto end;
613
614 state0_45:
615 end_state_ = true;
616 id_ = 65537;
617 uid_ = 3;
618 end_token_ = curr_;
619
620 if (curr_ == end_) goto end;
621 ch_ = *curr_;
622 ++curr_;
623
624 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'z')) goto state0_25;
625 goto end;
626
627 state0_46:
628 end_state_ = true;
629 id_ = 32;
630 uid_ = 28;
631 end_token_ = curr_;
632
633 if (curr_ == end_) goto end;
634 ch_ = *curr_;
635 ++curr_;
636
637 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'd') || (ch_ >= 'f' && ch_ <= 'z')) goto state0_25;
638
639 if (ch_ == 'e') goto state0_52;
640 goto end;
641
642 state0_47:
643 end_state_ = true;
644 id_ = 32;
645 uid_ = 28;
646 end_token_ = curr_;
647
648 if (curr_ == end_) goto end;
649 ch_ = *curr_;
650 ++curr_;
651
652 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'k') || (ch_ >= 'm' && ch_ <= 'z')) goto state0_25;
653
654 if (ch_ == 'l') goto state0_53;
655 goto end;
656
657 state0_48:
658 end_state_ = true;
659 id_ = 32;
660 uid_ = 28;
661 end_token_ = curr_;
662
663 if (curr_ == end_) goto end;
664 ch_ = *curr_;
665 ++curr_;
666
667 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 't') || (ch_ >= 'v' && ch_ <= 'z')) goto state0_25;
668
669 if (ch_ == 'u') goto state0_54;
670 goto end;
671
672 state0_49:
673 if (curr_ == end_) goto end;
674 ch_ = *curr_;
675 ++curr_;
676
677 if (ch_ == '*') goto state0_49;
678
679 if (ch_ != '*' && ch_ != '/') goto state0_55;
680
681 if (ch_ == '/') goto state0_56;
682 goto end;
683
684 state0_50:
685 end_state_ = true;
686 id_ = 36;
687 uid_ = 1;
688 end_token_ = curr_;
689
690 if (curr_ == end_) goto end;
691 ch_ = *curr_;
692 ++curr_;
693
694 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'z')) goto state0_25;
695 goto end;
696
697 state0_51:
698 end_state_ = true;
699 id_ = 65536;
700 uid_ = 2;
701 end_token_ = curr_;
702
703 if (curr_ == end_) goto end;
704 ch_ = *curr_;
705 ++curr_;
706
707 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'z')) goto state0_25;
708 goto end;
709
710 state0_52:
711 end_state_ = true;
712 id_ = 65539;
713 uid_ = 5;
714 end_token_ = curr_;
715
716 if (curr_ == end_) goto end;
717 ch_ = *curr_;
718 ++curr_;
719
720 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'z')) goto state0_25;
721 goto end;
722
723 state0_53:
724 end_state_ = true;
725 id_ = 32;
726 uid_ = 28;
727 end_token_ = curr_;
728
729 if (curr_ == end_) goto end;
730 ch_ = *curr_;
731 ++curr_;
732
733 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'd') || (ch_ >= 'f' && ch_ <= 'z')) goto state0_25;
734
735 if (ch_ == 'e') goto state0_57;
736 goto end;
737
738 state0_54:
739 end_state_ = true;
740 id_ = 32;
741 uid_ = 28;
742 end_token_ = curr_;
743
744 if (curr_ == end_) goto end;
745 ch_ = *curr_;
746 ++curr_;
747
748 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'q') || (ch_ >= 's' && ch_ <= 'z')) goto state0_25;
749
750 if (ch_ == 'r') goto state0_58;
751 goto end;
752
753 state0_55:
754 if (curr_ == end_) goto end;
755 ch_ = *curr_;
756 ++curr_;
757
758 if (ch_ != '*') goto state0_55;
759
760 if (ch_ == '*') goto state0_59;
761 goto end;
762
763 state0_56:
764 end_state_ = true;
765 id_ = 33;
766 uid_ = 29;
767 end_token_ = curr_;
768 goto end;
769
770 state0_57:
771 end_state_ = true;
772 id_ = 65540;
773 uid_ = 6;
774 end_token_ = curr_;
775
776 if (curr_ == end_) goto end;
777 ch_ = *curr_;
778 ++curr_;
779
780 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'z')) goto state0_25;
781 goto end;
782
783 state0_58:
784 end_state_ = true;
785 id_ = 32;
786 uid_ = 28;
787 end_token_ = curr_;
788
789 if (curr_ == end_) goto end;
790 ch_ = *curr_;
791 ++curr_;
792
793 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'm') || (ch_ >= 'o' && ch_ <= 'z')) goto state0_25;
794
795 if (ch_ == 'n') goto state0_60;
796 goto end;
797
798 state0_59:
799 if (curr_ == end_) goto end;
800 ch_ = *curr_;
801 ++curr_;
802
803 if (ch_ != '*' && ch_ != '/') goto state0_55;
804
805 if (ch_ == '/') goto state0_56;
806
807 if (ch_ == '*') goto state0_59;
808 goto end;
809
810 state0_60:
811 end_state_ = true;
812 id_ = 65541;
813 uid_ = 7;
814 end_token_ = curr_;
815
816 if (curr_ == end_) goto end;
817 ch_ = *curr_;
818 ++curr_;
819
820 if ((ch_ >= '0' && ch_ <= '9') || (ch_ >= 'A' && ch_ <= 'Z') || ch_ == '_' || (ch_ >= 'a' && ch_ <= 'z')) goto state0_25;
821
822 end:
823 if (end_state_)
824 {
825 // return longest match
826 start_token_ = end_token_;
827 }
828 else
829 {
830 id_ = npos;
831 uid_ = npos;
832 }
833
834 unique_id_ = uid_;
835 return id_;
836 }
837
838 ////////////////////////////////////////////////////////////////////////////////
839 // this defines a generic accessors for the information above
840 struct lexer_conjure_static_switch
841 {
842 // version number and feature-set of compatible static lexer engine
843 enum
844 {
845 static_version = 65536,
846 supports_bol = false,
847 supports_eol = false
848 };
849
850 // return the number of lexer states
851 static std::size_t state_count()
852 {
853 return lexer_state_count_conjure_static_switch;
854 }
855
856 // return the name of the lexer state as given by 'idx'
857 static char const* state_name(std::size_t idx)
858 {
859 return lexer_state_names_conjure_static_switch[idx];
860 }
861
862 // return the next matched token
863 template<typename Iterator>
864 static std::size_t next(std::size_t &start_state_, bool& bol_
865 , Iterator &start_token_, Iterator const& end_, std::size_t& unique_id_)
866 {
867 return next_token_conjure_static_switch(start_state_, bol_, start_token_, end_, unique_id_);
868 }
869 };
870
871 }}}}} // namespace boost::spirit::lex::lexertl::static_
872
873 #endif