62fe215ffc068f6198cf512c2f59b789032f1db3
[m6w6/ext-psi] / src / parser_scan.c
1 /* Generated by re2c 1.1.1 on Tue Nov 20 15:59:31 2018 */
2 #line 1 "src/parser_scan.re"
3 /*******************************************************************************
4 Copyright (c) 2016, Michael Wallner <mike@php.net>.
5 All rights reserved.
6
7 Redistribution and use in source and binary forms, with or without
8 modification, are permitted provided that the following conditions are met:
9
10 * Redistributions of source code must retain the above copyright notice,
11 this list of conditions and the following disclaimer.
12 * Redistributions in binary form must reproduce the above copyright
13 notice, this list of conditions and the following disclaimer in the
14 documentation and/or other materials provided with the distribution.
15
16 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
17 AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
18 IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
19 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE
20 FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
21 DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
22 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
23 CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
24 OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
25 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
26 *******************************************************************************/
27
28 #include <php_psi_stdinc.h>
29
30 #include "parser.h"
31 #include "plist.h"
32
33 #define YYMAXFILL 15
34
35 #ifndef YYMAXFILL
36 # define YYMAXFILL 256
37 #endif
38
39 size_t psi_parser_maxfill(void) {
40 return YYMAXFILL;
41 }
42
43 #define NEWLINE() \
44 eol = cur; \
45 ++I->lines
46
47 #define NEWTOKEN(t) do { \
48 if (t == PSI_T_COMMENT || t == PSI_T_WHITESPACE) { \
49 token = psi_token_init(t, "", 0, tok - eol + 1, I->lines, I->file); \
50 } else { \
51 token = psi_token_init(t, tok, cur - tok, tok - eol + 1, I->lines, I->file); \
52 } \
53 tokens = psi_plist_add(tokens, &token); \
54 PSI_DEBUG_PRINT(P, "PSI: scanned < "); \
55 PSI_DEBUG_DUMP(P, psi_token_dump, token); \
56 } while(0)
57
58 #define CHECKEOF() if (cur >= lim - YYMAXFILL) goto done
59
60 struct psi_plist *psi_parser_scan(struct psi_parser *P, struct psi_parser_input *I)
61 {
62 struct psi_plist *tokens;
63 struct psi_token *token;
64 const char *tok, *cur, *lim, *mrk, *eol, *ctxmrk;
65 unsigned parens;
66 bool escaped;
67 token_t char_width;
68
69 PSI_DEBUG_PRINT(P, "PSI: scanning %s\n", I->file->val);
70
71 tok = mrk = eol = cur = I->buffer;
72 lim = I->buffer + I->length + YYMAXFILL;
73 I->lines = 1;
74 tokens = psi_plist_init((psi_plist_dtor) psi_token_free);
75
76 start: ;
77 char_width = 1;
78 ctxmrk = NULL;
79 tok = cur;
80
81 (void) ctxmrk;
82
83
84 #line 85 "src/parser_scan.c"
85 {
86 unsigned char yych;
87 unsigned int yyaccept = 0;
88 if ((lim - cur) < 15) CHECKEOF();;
89 yych = *cur;
90 switch (yych) {
91 case 0x00:
92 case 0x01:
93 case 0x02:
94 case 0x03:
95 case 0x04:
96 case 0x05:
97 case 0x06:
98 case 0x07:
99 case 0x08:
100 case '\v':
101 case 0x0E:
102 case 0x0F:
103 case 0x10:
104 case 0x11:
105 case 0x12:
106 case 0x13:
107 case 0x14:
108 case 0x15:
109 case 0x16:
110 case 0x17:
111 case 0x18:
112 case 0x19:
113 case 0x1A:
114 case 0x1B:
115 case 0x1C:
116 case 0x1D:
117 case 0x1E:
118 case 0x1F:
119 case '@':
120 case '`':
121 case 0x7F: goto yy2;
122 case '\t':
123 case '\f':
124 case ' ': goto yy4;
125 case '\n':
126 case '\r': goto yy7;
127 case '!': goto yy9;
128 case '"': goto yy11;
129 case '#': goto yy13;
130 case '$': goto yy15;
131 case '%': goto yy16;
132 case '&': goto yy18;
133 case '\'': goto yy20;
134 case '(': goto yy22;
135 case ')': goto yy24;
136 case '*': goto yy26;
137 case '+': goto yy28;
138 case ',': goto yy30;
139 case '-': goto yy32;
140 case '.': goto yy34;
141 case '/': goto yy36;
142 case '0': goto yy38;
143 case '1':
144 case '2':
145 case '3':
146 case '4':
147 case '5':
148 case '6':
149 case '7':
150 case '8':
151 case '9': goto yy40;
152 case ':': goto yy42;
153 case ';': goto yy44;
154 case '<': goto yy46;
155 case '=': goto yy48;
156 case '>': goto yy50;
157 case '?': goto yy52;
158 case 'A':
159 case 'a': goto yy54;
160 case 'B': goto yy56;
161 case 'C': goto yy57;
162 case 'D': goto yy58;
163 case 'E': goto yy59;
164 case 'F': goto yy60;
165 case 'I': goto yy63;
166 case 'L': goto yy64;
167 case 'M':
168 case 'm': goto yy65;
169 case 'N':
170 case 'n': goto yy66;
171 case 'O':
172 case 'o': goto yy67;
173 case 'P': goto yy68;
174 case 'R':
175 case 'r': goto yy69;
176 case 'S': goto yy70;
177 case 'T': goto yy71;
178 case 'U': goto yy72;
179 case 'W':
180 case 'w': goto yy73;
181 case 'Z':
182 case 'z': goto yy74;
183 case '[': goto yy75;
184 case '\\': goto yy77;
185 case ']': goto yy79;
186 case '^': goto yy81;
187 case '_': goto yy83;
188 case 'b': goto yy84;
189 case 'c': goto yy85;
190 case 'd': goto yy86;
191 case 'e': goto yy87;
192 case 'f': goto yy88;
193 case 'i': goto yy89;
194 case 'l': goto yy90;
195 case 'p': goto yy91;
196 case 's': goto yy92;
197 case 't': goto yy93;
198 case 'u': goto yy94;
199 case 'v': goto yy95;
200 case '{': goto yy96;
201 case '|': goto yy98;
202 case '}': goto yy100;
203 case '~': goto yy102;
204 default: goto yy61;
205 }
206 yy2:
207 ++cur;
208 yy3:
209 #line 250 "src/parser_scan.re"
210 { CHECKEOF(); NEWTOKEN(-2); goto error; }
211 #line 212 "src/parser_scan.c"
212 yy4:
213 ++cur;
214 if (lim <= cur) CHECKEOF();;
215 yych = *cur;
216 switch (yych) {
217 case '\t':
218 case '\f':
219 case ' ': goto yy4;
220 default: goto yy6;
221 }
222 yy6:
223 #line 249 "src/parser_scan.re"
224 { NEWTOKEN(PSI_T_WHITESPACE); goto start; }
225 #line 226 "src/parser_scan.c"
226 yy7:
227 ++cur;
228 #line 248 "src/parser_scan.re"
229 { NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
230 #line 231 "src/parser_scan.c"
231 yy9:
232 yych = *++cur;
233 switch (yych) {
234 case '=': goto yy104;
235 default: goto yy10;
236 }
237 yy10:
238 #line 151 "src/parser_scan.re"
239 { NEWTOKEN(PSI_T_NOT); goto start; }
240 #line 241 "src/parser_scan.c"
241 yy11:
242 ++cur;
243 #line 124 "src/parser_scan.re"
244 { escaped = false; tok += 1; goto string; }
245 #line 246 "src/parser_scan.c"
246 yy13:
247 yych = *++cur;
248 switch (yych) {
249 case '#': goto yy106;
250 default: goto yy14;
251 }
252 yy14:
253 #line 134 "src/parser_scan.re"
254 { NEWTOKEN(PSI_T_HASH); goto start; }
255 #line 256 "src/parser_scan.c"
256 yy15:
257 yych = *++cur;
258 switch (yych) {
259 case 0x00:
260 case 0x01:
261 case 0x02:
262 case 0x03:
263 case 0x04:
264 case 0x05:
265 case 0x06:
266 case 0x07:
267 case 0x08:
268 case '\t':
269 case '\n':
270 case '\v':
271 case '\f':
272 case '\r':
273 case 0x0E:
274 case 0x0F:
275 case 0x10:
276 case 0x11:
277 case 0x12:
278 case 0x13:
279 case 0x14:
280 case 0x15:
281 case 0x16:
282 case 0x17:
283 case 0x18:
284 case 0x19:
285 case 0x1A:
286 case 0x1B:
287 case 0x1C:
288 case 0x1D:
289 case 0x1E:
290 case 0x1F:
291 case ' ':
292 case '!':
293 case '"':
294 case '#':
295 case '$':
296 case '%':
297 case '&':
298 case '\'':
299 case '(':
300 case ')':
301 case '*':
302 case '+':
303 case ',':
304 case '-':
305 case '.':
306 case '/':
307 case ':':
308 case ';':
309 case '<':
310 case '=':
311 case '>':
312 case '?':
313 case '@':
314 case '[':
315 case '\\':
316 case ']':
317 case '^':
318 case '`':
319 case '{':
320 case '|':
321 case '}':
322 case '~':
323 case 0x7F: goto yy3;
324 default: goto yy108;
325 }
326 yy16:
327 ++cur;
328 #line 152 "src/parser_scan.re"
329 { NEWTOKEN(PSI_T_MODULO); goto start; }
330 #line 331 "src/parser_scan.c"
331 yy18:
332 yych = *++cur;
333 switch (yych) {
334 case '&': goto yy111;
335 default: goto yy19;
336 }
337 yy19:
338 #line 153 "src/parser_scan.re"
339 { NEWTOKEN(PSI_T_AMPERSAND); goto start; }
340 #line 341 "src/parser_scan.c"
341 yy20:
342 ++cur;
343 #line 123 "src/parser_scan.re"
344 { escaped = false; tok += 1; goto character; }
345 #line 346 "src/parser_scan.c"
346 yy22:
347 ++cur;
348 #line 135 "src/parser_scan.re"
349 { NEWTOKEN(PSI_T_LPAREN); goto start; }
350 #line 351 "src/parser_scan.c"
351 yy24:
352 ++cur;
353 #line 136 "src/parser_scan.re"
354 { NEWTOKEN(PSI_T_RPAREN); goto start; }
355 #line 356 "src/parser_scan.c"
356 yy26:
357 ++cur;
358 #line 149 "src/parser_scan.re"
359 { NEWTOKEN(PSI_T_ASTERISK); goto start; }
360 #line 361 "src/parser_scan.c"
361 yy28:
362 ++cur;
363 #line 154 "src/parser_scan.re"
364 { NEWTOKEN(PSI_T_PLUS); goto start; }
365 #line 366 "src/parser_scan.c"
366 yy30:
367 ++cur;
368 #line 138 "src/parser_scan.re"
369 { NEWTOKEN(PSI_T_COMMA); goto start; }
370 #line 371 "src/parser_scan.c"
371 yy32:
372 ++cur;
373 #line 155 "src/parser_scan.re"
374 { NEWTOKEN(PSI_T_MINUS); goto start; }
375 #line 376 "src/parser_scan.c"
376 yy34:
377 yyaccept = 0;
378 yych = *(mrk = ++cur);
379 switch (yych) {
380 case '.': goto yy113;
381 case '0':
382 case '1':
383 case '2':
384 case '3':
385 case '4':
386 case '5':
387 case '6':
388 case '7':
389 case '8':
390 case '9': goto yy115;
391 default: goto yy35;
392 }
393 yy35:
394 #line 166 "src/parser_scan.re"
395 { NEWTOKEN(PSI_T_PERIOD); goto start; }
396 #line 397 "src/parser_scan.c"
397 yy36:
398 yych = *++cur;
399 switch (yych) {
400 case '*': goto yy118;
401 case '/': goto yy120;
402 default: goto yy37;
403 }
404 yy37:
405 #line 156 "src/parser_scan.re"
406 { NEWTOKEN(PSI_T_SLASH); goto start; }
407 #line 408 "src/parser_scan.c"
408 yy38:
409 yyaccept = 1;
410 yych = *(mrk = ++cur);
411 switch (yych) {
412 case '.': goto yy122;
413 case 'E':
414 case 'e': goto yy126;
415 case 'X':
416 case 'x': goto yy131;
417 default: goto yy125;
418 }
419 yy39:
420 #line 110 "src/parser_scan.re"
421 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT; goto start; }
422 #line 423 "src/parser_scan.c"
423 yy40:
424 yyaccept = 1;
425 mrk = ++cur;
426 if ((lim - cur) < 3) CHECKEOF();;
427 yych = *cur;
428 switch (yych) {
429 case '.': goto yy122;
430 case '0':
431 case '1':
432 case '2':
433 case '3':
434 case '4':
435 case '5':
436 case '6':
437 case '7':
438 case '8':
439 case '9': goto yy40;
440 case 'E':
441 case 'e': goto yy126;
442 case 'L':
443 case 'l': goto yy127;
444 case 'U':
445 case 'u': goto yy129;
446 default: goto yy39;
447 }
448 yy42:
449 ++cur;
450 #line 139 "src/parser_scan.re"
451 { NEWTOKEN(PSI_T_COLON); goto start; }
452 #line 453 "src/parser_scan.c"
453 yy44:
454 ++cur;
455 #line 137 "src/parser_scan.re"
456 { NEWTOKEN(PSI_T_EOS); goto start; }
457 #line 458 "src/parser_scan.c"
458 yy46:
459 yyaccept = 2;
460 yych = *(mrk = ++cur);
461 switch (yych) {
462 case '-':
463 case '.':
464 case '/':
465 case '0':
466 case '1':
467 case '2':
468 case '3':
469 case '4':
470 case '5':
471 case '6':
472 case '7':
473 case '8':
474 case '9':
475 case 'A':
476 case 'B':
477 case 'C':
478 case 'D':
479 case 'E':
480 case 'F':
481 case 'G':
482 case 'H':
483 case 'I':
484 case 'J':
485 case 'K':
486 case 'L':
487 case 'M':
488 case 'N':
489 case 'O':
490 case 'P':
491 case 'Q':
492 case 'R':
493 case 'S':
494 case 'T':
495 case 'U':
496 case 'V':
497 case 'W':
498 case 'X':
499 case 'Y':
500 case 'Z':
501 case '_':
502 case 'a':
503 case 'b':
504 case 'c':
505 case 'd':
506 case 'e':
507 case 'f':
508 case 'g':
509 case 'h':
510 case 'i':
511 case 'j':
512 case 'k':
513 case 'l':
514 case 'm':
515 case 'n':
516 case 'o':
517 case 'p':
518 case 'q':
519 case 'r':
520 case 's':
521 case 't':
522 case 'u':
523 case 'v':
524 case 'w':
525 case 'x':
526 case 'y':
527 case 'z': goto yy132;
528 case '<': goto yy134;
529 case '=': goto yy136;
530 default: goto yy47;
531 }
532 yy47:
533 #line 164 "src/parser_scan.re"
534 { NEWTOKEN(PSI_T_LCHEVR); goto start; }
535 #line 536 "src/parser_scan.c"
536 yy48:
537 yych = *++cur;
538 switch (yych) {
539 case '=': goto yy138;
540 default: goto yy49;
541 }
542 yy49:
543 #line 148 "src/parser_scan.re"
544 { NEWTOKEN(PSI_T_EQUALS); goto start; }
545 #line 546 "src/parser_scan.c"
546 yy50:
547 yych = *++cur;
548 switch (yych) {
549 case '=': goto yy140;
550 case '>': goto yy142;
551 default: goto yy51;
552 }
553 yy51:
554 #line 165 "src/parser_scan.re"
555 { NEWTOKEN(PSI_T_RCHEVR); goto start; }
556 #line 557 "src/parser_scan.c"
557 yy52:
558 ++cur;
559 #line 168 "src/parser_scan.re"
560 { NEWTOKEN(PSI_T_IIF); goto start; }
561 #line 562 "src/parser_scan.c"
562 yy54:
563 yyaccept = 3;
564 yych = *(mrk = ++cur);
565 switch (yych) {
566 case 'R':
567 case 'r': goto yy144;
568 case 'S':
569 case 's': goto yy145;
570 default: goto yy62;
571 }
572 yy55:
573 #line 243 "src/parser_scan.re"
574 { NEWTOKEN(PSI_T_NAME); goto start; }
575 #line 576 "src/parser_scan.c"
576 yy56:
577 yyaccept = 3;
578 yych = *(mrk = ++cur);
579 switch (yych) {
580 case 'O':
581 case 'o': goto yy148;
582 default: goto yy62;
583 }
584 yy57:
585 yyaccept = 3;
586 yych = *(mrk = ++cur);
587 switch (yych) {
588 case 'A':
589 case 'a': goto yy149;
590 case 'O':
591 case 'o': goto yy150;
592 default: goto yy62;
593 }
594 yy58:
595 yyaccept = 3;
596 yych = *(mrk = ++cur);
597 switch (yych) {
598 case 'E':
599 case 'e': goto yy151;
600 default: goto yy62;
601 }
602 yy59:
603 yyaccept = 3;
604 yych = *(mrk = ++cur);
605 switch (yych) {
606 case 'L':
607 case 'l': goto yy152;
608 case 'N':
609 case 'n': goto yy153;
610 case 'R':
611 case 'r': goto yy154;
612 default: goto yy62;
613 }
614 yy60:
615 yyaccept = 3;
616 yych = *(mrk = ++cur);
617 switch (yych) {
618 case 'A':
619 case 'a': goto yy155;
620 case 'L':
621 case 'l': goto yy156;
622 case 'R':
623 case 'r': goto yy157;
624 case 'U':
625 case 'u': goto yy158;
626 default: goto yy62;
627 }
628 yy61:
629 yyaccept = 3;
630 mrk = ++cur;
631 if (lim <= cur) CHECKEOF();;
632 yych = *cur;
633 yy62:
634 switch (yych) {
635 case 0x00:
636 case 0x01:
637 case 0x02:
638 case 0x03:
639 case 0x04:
640 case 0x05:
641 case 0x06:
642 case 0x07:
643 case 0x08:
644 case '\t':
645 case '\n':
646 case '\v':
647 case '\f':
648 case '\r':
649 case 0x0E:
650 case 0x0F:
651 case 0x10:
652 case 0x11:
653 case 0x12:
654 case 0x13:
655 case 0x14:
656 case 0x15:
657 case 0x16:
658 case 0x17:
659 case 0x18:
660 case 0x19:
661 case 0x1A:
662 case 0x1B:
663 case 0x1C:
664 case 0x1D:
665 case 0x1E:
666 case 0x1F:
667 case ' ':
668 case '!':
669 case '"':
670 case '#':
671 case '$':
672 case '%':
673 case '&':
674 case '\'':
675 case '(':
676 case ')':
677 case '*':
678 case '+':
679 case ',':
680 case '-':
681 case '.':
682 case '/':
683 case ':':
684 case ';':
685 case '<':
686 case '=':
687 case '>':
688 case '?':
689 case '@':
690 case '[':
691 case ']':
692 case '^':
693 case '`':
694 case '{':
695 case '|':
696 case '}':
697 case '~':
698 case 0x7F: goto yy55;
699 case '\\': goto yy147;
700 default: goto yy61;
701 }
702 yy63:
703 yyaccept = 3;
704 yych = *(mrk = ++cur);
705 switch (yych) {
706 case 'F':
707 case 'f': goto yy159;
708 case 'N':
709 case 'n': goto yy161;
710 default: goto yy62;
711 }
712 yy64:
713 yyaccept = 3;
714 yych = *(mrk = ++cur);
715 switch (yych) {
716 case '"':
717 case '\'': goto yy162;
718 case 'E':
719 case 'e': goto yy164;
720 case 'I':
721 case 'i': goto yy165;
722 default: goto yy62;
723 }
724 yy65:
725 yyaccept = 3;
726 yych = *(mrk = ++cur);
727 switch (yych) {
728 case 'I':
729 case 'i': goto yy166;
730 default: goto yy62;
731 }
732 yy66:
733 yyaccept = 3;
734 yych = *(mrk = ++cur);
735 switch (yych) {
736 case 'U':
737 case 'u': goto yy167;
738 default: goto yy62;
739 }
740 yy67:
741 yyaccept = 3;
742 yych = *(mrk = ++cur);
743 switch (yych) {
744 case 'B':
745 case 'b': goto yy168;
746 default: goto yy62;
747 }
748 yy68:
749 yyaccept = 3;
750 yych = *(mrk = ++cur);
751 switch (yych) {
752 case 'A':
753 case 'a': goto yy169;
754 case 'O':
755 case 'o': goto yy170;
756 case 'R':
757 case 'r': goto yy171;
758 default: goto yy62;
759 }
760 yy69:
761 yyaccept = 3;
762 yych = *(mrk = ++cur);
763 switch (yych) {
764 case 'E':
765 case 'e': goto yy172;
766 default: goto yy62;
767 }
768 yy70:
769 yyaccept = 3;
770 yych = *(mrk = ++cur);
771 switch (yych) {
772 case 'E':
773 case 'e': goto yy173;
774 case 'T':
775 case 't': goto yy174;
776 default: goto yy62;
777 }
778 yy71:
779 yyaccept = 3;
780 yych = *(mrk = ++cur);
781 switch (yych) {
782 case 'E':
783 case 'e': goto yy175;
784 case 'O':
785 case 'o': goto yy176;
786 case 'R':
787 case 'r': goto yy177;
788 default: goto yy62;
789 }
790 yy72:
791 yyaccept = 3;
792 yych = *(mrk = ++cur);
793 switch (yych) {
794 case '"':
795 case '\'': goto yy178;
796 case 'N':
797 case 'n': goto yy180;
798 default: goto yy62;
799 }
800 yy73:
801 yyaccept = 3;
802 yych = *(mrk = ++cur);
803 switch (yych) {
804 case 'A':
805 case 'a': goto yy181;
806 default: goto yy62;
807 }
808 yy74:
809 yyaccept = 3;
810 yych = *(mrk = ++cur);
811 switch (yych) {
812 case 'V':
813 case 'v': goto yy182;
814 default: goto yy62;
815 }
816 yy75:
817 ++cur;
818 #line 142 "src/parser_scan.re"
819 { NEWTOKEN(PSI_T_LBRACKET); goto start; }
820 #line 821 "src/parser_scan.c"
821 yy77:
822 yych = *++cur;
823 switch (yych) {
824 case 0x00:
825 case 0x01:
826 case 0x02:
827 case 0x03:
828 case 0x04:
829 case 0x05:
830 case 0x06:
831 case 0x07:
832 case 0x08:
833 case '\t':
834 case '\n':
835 case '\v':
836 case '\f':
837 case '\r':
838 case 0x0E:
839 case 0x0F:
840 case 0x10:
841 case 0x11:
842 case 0x12:
843 case 0x13:
844 case 0x14:
845 case 0x15:
846 case 0x16:
847 case 0x17:
848 case 0x18:
849 case 0x19:
850 case 0x1A:
851 case 0x1B:
852 case 0x1C:
853 case 0x1D:
854 case 0x1E:
855 case 0x1F:
856 case ' ':
857 case '!':
858 case '"':
859 case '#':
860 case '$':
861 case '%':
862 case '&':
863 case '\'':
864 case '(':
865 case ')':
866 case '*':
867 case '+':
868 case ',':
869 case '-':
870 case '.':
871 case '/':
872 case '0':
873 case '1':
874 case '2':
875 case '3':
876 case '4':
877 case '5':
878 case '6':
879 case '7':
880 case '8':
881 case '9':
882 case ':':
883 case ';':
884 case '<':
885 case '=':
886 case '>':
887 case '?':
888 case '@':
889 case '[':
890 case '\\':
891 case ']':
892 case '^':
893 case '`':
894 case '{':
895 case '|':
896 case '}':
897 case '~':
898 case 0x7F: goto yy78;
899 default: goto yy183;
900 }
901 yy78:
902 #line 157 "src/parser_scan.re"
903 { NEWTOKEN(PSI_T_BSLASH); goto start; }
904 #line 905 "src/parser_scan.c"
905 yy79:
906 ++cur;
907 #line 143 "src/parser_scan.re"
908 { NEWTOKEN(PSI_T_RBRACKET); goto start; }
909 #line 910 "src/parser_scan.c"
910 yy81:
911 ++cur;
912 #line 159 "src/parser_scan.re"
913 { NEWTOKEN(PSI_T_CARET); goto start; }
914 #line 915 "src/parser_scan.c"
915 yy83:
916 yyaccept = 3;
917 yych = *(mrk = ++cur);
918 switch (yych) {
919 case '_': goto yy186;
920 default: goto yy62;
921 }
922 yy84:
923 yyaccept = 3;
924 yych = *(mrk = ++cur);
925 switch (yych) {
926 case 'O': goto yy148;
927 case 'o': goto yy187;
928 default: goto yy62;
929 }
930 yy85:
931 yyaccept = 3;
932 yych = *(mrk = ++cur);
933 switch (yych) {
934 case 'A':
935 case 'a': goto yy149;
936 case 'O': goto yy150;
937 case 'h': goto yy188;
938 case 'o': goto yy189;
939 default: goto yy62;
940 }
941 yy86:
942 yyaccept = 3;
943 yych = *(mrk = ++cur);
944 switch (yych) {
945 case 'E':
946 case 'e': goto yy151;
947 case 'o': goto yy190;
948 default: goto yy62;
949 }
950 yy87:
951 yyaccept = 3;
952 yych = *(mrk = ++cur);
953 switch (yych) {
954 case 'L':
955 case 'l': goto yy152;
956 case 'N': goto yy153;
957 case 'R':
958 case 'r': goto yy154;
959 case 'n': goto yy191;
960 default: goto yy62;
961 }
962 yy88:
963 yyaccept = 3;
964 yych = *(mrk = ++cur);
965 switch (yych) {
966 case 'A':
967 case 'a': goto yy155;
968 case 'L': goto yy156;
969 case 'R':
970 case 'r': goto yy157;
971 case 'U':
972 case 'u': goto yy158;
973 case 'l': goto yy192;
974 default: goto yy62;
975 }
976 yy89:
977 yyaccept = 3;
978 yych = *(mrk = ++cur);
979 switch (yych) {
980 case 'F':
981 case 'f': goto yy159;
982 case 'N': goto yy161;
983 case 'n': goto yy193;
984 default: goto yy62;
985 }
986 yy90:
987 yyaccept = 3;
988 yych = *(mrk = ++cur);
989 switch (yych) {
990 case 'E':
991 case 'e': goto yy164;
992 case 'I': goto yy165;
993 case 'i': goto yy194;
994 case 'o': goto yy195;
995 default: goto yy62;
996 }
997 yy91:
998 yyaccept = 3;
999 yych = *(mrk = ++cur);
1000 switch (yych) {
1001 case 'A':
1002 case 'a': goto yy169;
1003 case 'O':
1004 case 'o': goto yy170;
1005 case 'R': goto yy171;
1006 case 'r': goto yy196;
1007 default: goto yy62;
1008 }
1009 yy92:
1010 yyaccept = 3;
1011 yych = *(mrk = ++cur);
1012 switch (yych) {
1013 case 'E':
1014 case 'e': goto yy173;
1015 case 'T': goto yy174;
1016 case 'h': goto yy197;
1017 case 'i': goto yy198;
1018 case 't': goto yy199;
1019 default: goto yy62;
1020 }
1021 yy93:
1022 yyaccept = 3;
1023 yych = *(mrk = ++cur);
1024 switch (yych) {
1025 case 'E':
1026 case 'e': goto yy175;
1027 case 'O':
1028 case 'o': goto yy176;
1029 case 'R':
1030 case 'r': goto yy177;
1031 case 'y': goto yy200;
1032 default: goto yy62;
1033 }
1034 yy94:
1035 yyaccept = 3;
1036 yych = *(mrk = ++cur);
1037 switch (yych) {
1038 case '"':
1039 case '\'': goto yy201;
1040 case '8': goto yy203;
1041 case 'N': goto yy180;
1042 case 'n': goto yy204;
1043 default: goto yy62;
1044 }
1045 yy95:
1046 yyaccept = 3;
1047 yych = *(mrk = ++cur);
1048 switch (yych) {
1049 case 'o': goto yy205;
1050 default: goto yy62;
1051 }
1052 yy96:
1053 ++cur;
1054 #line 140 "src/parser_scan.re"
1055 { NEWTOKEN(PSI_T_LBRACE); goto start; }
1056 #line 1057 "src/parser_scan.c"
1057 yy98:
1058 yych = *++cur;
1059 switch (yych) {
1060 case '|': goto yy206;
1061 default: goto yy99;
1062 }
1063 yy99:
1064 #line 158 "src/parser_scan.re"
1065 { NEWTOKEN(PSI_T_PIPE); goto start; }
1066 #line 1067 "src/parser_scan.c"
1067 yy100:
1068 ++cur;
1069 #line 141 "src/parser_scan.re"
1070 { NEWTOKEN(PSI_T_RBRACE); goto start; }
1071 #line 1072 "src/parser_scan.c"
1072 yy102:
1073 ++cur;
1074 #line 150 "src/parser_scan.re"
1075 { NEWTOKEN(PSI_T_TILDE); goto start; }
1076 #line 1077 "src/parser_scan.c"
1077 yy104:
1078 ++cur;
1079 #line 144 "src/parser_scan.re"
1080 { NEWTOKEN(PSI_T_CMP_NE); goto start; }
1081 #line 1082 "src/parser_scan.c"
1082 yy106:
1083 ++cur;
1084 #line 133 "src/parser_scan.re"
1085 { NEWTOKEN(PSI_T_CPP_PASTE); goto start; }
1086 #line 1087 "src/parser_scan.c"
1087 yy108:
1088 ++cur;
1089 if (lim <= cur) CHECKEOF();;
1090 yych = *cur;
1091 switch (yych) {
1092 case 0x00:
1093 case 0x01:
1094 case 0x02:
1095 case 0x03:
1096 case 0x04:
1097 case 0x05:
1098 case 0x06:
1099 case 0x07:
1100 case 0x08:
1101 case '\t':
1102 case '\n':
1103 case '\v':
1104 case '\f':
1105 case '\r':
1106 case 0x0E:
1107 case 0x0F:
1108 case 0x10:
1109 case 0x11:
1110 case 0x12:
1111 case 0x13:
1112 case 0x14:
1113 case 0x15:
1114 case 0x16:
1115 case 0x17:
1116 case 0x18:
1117 case 0x19:
1118 case 0x1A:
1119 case 0x1B:
1120 case 0x1C:
1121 case 0x1D:
1122 case 0x1E:
1123 case 0x1F:
1124 case ' ':
1125 case '!':
1126 case '"':
1127 case '#':
1128 case '$':
1129 case '%':
1130 case '&':
1131 case '\'':
1132 case '(':
1133 case ')':
1134 case '*':
1135 case '+':
1136 case ',':
1137 case '-':
1138 case '.':
1139 case '/':
1140 case ':':
1141 case ';':
1142 case '<':
1143 case '=':
1144 case '>':
1145 case '?':
1146 case '@':
1147 case '[':
1148 case '\\':
1149 case ']':
1150 case '^':
1151 case '`':
1152 case '{':
1153 case '|':
1154 case '}':
1155 case '~':
1156 case 0x7F: goto yy110;
1157 default: goto yy108;
1158 }
1159 yy110:
1160 #line 245 "src/parser_scan.re"
1161 { NEWTOKEN(PSI_T_DOLLAR_NAME); goto start; }
1162 #line 1163 "src/parser_scan.c"
1163 yy111:
1164 ++cur;
1165 #line 146 "src/parser_scan.re"
1166 { NEWTOKEN(PSI_T_AND); goto start; }
1167 #line 1168 "src/parser_scan.c"
1168 yy113:
1169 yych = *++cur;
1170 switch (yych) {
1171 case '.': goto yy208;
1172 default: goto yy114;
1173 }
1174 yy114:
1175 cur = mrk;
1176 switch (yyaccept) {
1177 case 0: goto yy35;
1178 case 1: goto yy39;
1179 case 2: goto yy47;
1180 case 3: goto yy55;
1181 case 4: goto yy117;
1182 case 5: goto yy128;
1183 case 6: goto yy146;
1184 case 7: goto yy160;
1185 case 8: goto yy185;
1186 case 9: goto yy242;
1187 case 10: goto yy244;
1188 case 11: goto yy253;
1189 case 12: goto yy274;
1190 case 13: goto yy306;
1191 case 14: goto yy308;
1192 case 15: goto yy314;
1193 case 16: goto yy322;
1194 case 17: goto yy334;
1195 case 18: goto yy342;
1196 case 19: goto yy346;
1197 case 20: goto yy353;
1198 case 21: goto yy355;
1199 case 22: goto yy359;
1200 case 23: goto yy363;
1201 case 24: goto yy365;
1202 case 25: goto yy375;
1203 case 26: goto yy378;
1204 case 27: goto yy385;
1205 case 28: goto yy388;
1206 case 29: goto yy390;
1207 case 30: goto yy392;
1208 case 31: goto yy396;
1209 case 32: goto yy401;
1210 case 33: goto yy419;
1211 case 34: goto yy422;
1212 case 35: goto yy427;
1213 case 36: goto yy430;
1214 case 37: goto yy434;
1215 case 38: goto yy440;
1216 case 39: goto yy444;
1217 case 40: goto yy449;
1218 case 41: goto yy451;
1219 case 42: goto yy455;
1220 case 43: goto yy458;
1221 case 44: goto yy460;
1222 case 45: goto yy462;
1223 case 46: goto yy467;
1224 case 47: goto yy469;
1225 case 48: goto yy471;
1226 case 49: goto yy473;
1227 case 50: goto yy475;
1228 case 51: goto yy480;
1229 case 52: goto yy489;
1230 case 53: goto yy491;
1231 case 54: goto yy493;
1232 case 55: goto yy495;
1233 case 56: goto yy497;
1234 case 57: goto yy499;
1235 case 58: goto yy504;
1236 case 59: goto yy508;
1237 case 60: goto yy512;
1238 case 61: goto yy514;
1239 case 62: goto yy519;
1240 case 63: goto yy524;
1241 case 64: goto yy532;
1242 case 65: goto yy536;
1243 case 66: goto yy538;
1244 case 67: goto yy540;
1245 case 68: goto yy542;
1246 case 69: goto yy547;
1247 case 70: goto yy549;
1248 case 71: goto yy558;
1249 case 72: goto yy560;
1250 case 73: goto yy565;
1251 case 74: goto yy567;
1252 case 75: goto yy575;
1253 case 76: goto yy579;
1254 case 77: goto yy583;
1255 case 78: goto yy587;
1256 case 79: goto yy589;
1257 default: goto yy594;
1258 }
1259 yy115:
1260 yyaccept = 4;
1261 mrk = ++cur;
1262 if ((lim - cur) < 2) CHECKEOF();;
1263 yych = *cur;
1264 switch (yych) {
1265 case '0':
1266 case '1':
1267 case '2':
1268 case '3':
1269 case '4':
1270 case '5':
1271 case '6':
1272 case '7':
1273 case '8':
1274 case '9': goto yy115;
1275 case 'D':
1276 case 'd': goto yy210;
1277 case 'F':
1278 case 'f': goto yy211;
1279 case 'L':
1280 case 'l': goto yy213;
1281 default: goto yy117;
1282 }
1283 yy117:
1284 #line 116 "src/parser_scan.re"
1285 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT; goto start; }
1286 #line 1287 "src/parser_scan.c"
1287 yy118:
1288 ++cur;
1289 #line 130 "src/parser_scan.re"
1290 { goto comment; }
1291 #line 1292 "src/parser_scan.c"
1292 yy120:
1293 ++cur;
1294 #line 131 "src/parser_scan.re"
1295 { goto comment_sl; }
1296 #line 1297 "src/parser_scan.c"
1297 yy122:
1298 yyaccept = 4;
1299 mrk = ++cur;
1300 if ((lim - cur) < 3) CHECKEOF();;
1301 yych = *cur;
1302 switch (yych) {
1303 case '0':
1304 case '1':
1305 case '2':
1306 case '3':
1307 case '4':
1308 case '5':
1309 case '6':
1310 case '7':
1311 case '8':
1312 case '9': goto yy122;
1313 case 'D':
1314 case 'd': goto yy210;
1315 case 'E':
1316 case 'e': goto yy126;
1317 case 'F':
1318 case 'f': goto yy211;
1319 case 'L':
1320 case 'l': goto yy213;
1321 default: goto yy117;
1322 }
1323 yy124:
1324 ++cur;
1325 if ((lim - cur) < 3) CHECKEOF();;
1326 yych = *cur;
1327 yy125:
1328 switch (yych) {
1329 case '0':
1330 case '1':
1331 case '2':
1332 case '3':
1333 case '4':
1334 case '5':
1335 case '6':
1336 case '7': goto yy124;
1337 case 'L':
1338 case 'l': goto yy127;
1339 case 'U':
1340 case 'u': goto yy129;
1341 default: goto yy39;
1342 }
1343 yy126:
1344 yych = *++cur;
1345 switch (yych) {
1346 case '+':
1347 case '-': goto yy215;
1348 case '0':
1349 case '1':
1350 case '2':
1351 case '3':
1352 case '4':
1353 case '5':
1354 case '6':
1355 case '7':
1356 case '8':
1357 case '9': goto yy115;
1358 default: goto yy114;
1359 }
1360 yy127:
1361 yyaccept = 5;
1362 yych = *(mrk = ++cur);
1363 switch (yych) {
1364 case 'L':
1365 case 'l': goto yy216;
1366 case 'U':
1367 case 'u': goto yy217;
1368 default: goto yy128;
1369 }
1370 yy128:
1371 cur -= 1;
1372 #line 112 "src/parser_scan.re"
1373 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_L; cur += 1; goto start; }
1374 #line 1375 "src/parser_scan.c"
1375 yy129:
1376 yych = *++cur;
1377 switch (yych) {
1378 case 'L':
1379 case 'l': goto yy219;
1380 default: goto yy130;
1381 }
1382 yy130:
1383 cur -= 1;
1384 #line 111 "src/parser_scan.re"
1385 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_U; cur += 1; goto start; }
1386 #line 1387 "src/parser_scan.c"
1387 yy131:
1388 yych = *++cur;
1389 switch (yych) {
1390 case '0':
1391 case '1':
1392 case '2':
1393 case '3':
1394 case '4':
1395 case '5':
1396 case '6':
1397 case '7':
1398 case '8':
1399 case '9':
1400 case 'A':
1401 case 'B':
1402 case 'C':
1403 case 'D':
1404 case 'E':
1405 case 'F':
1406 case 'a':
1407 case 'b':
1408 case 'c':
1409 case 'd':
1410 case 'e':
1411 case 'f': goto yy220;
1412 default: goto yy114;
1413 }
1414 yy132:
1415 ++cur;
1416 if (lim <= cur) CHECKEOF();;
1417 yych = *cur;
1418 switch (yych) {
1419 case '-':
1420 case '.':
1421 case '/':
1422 case '0':
1423 case '1':
1424 case '2':
1425 case '3':
1426 case '4':
1427 case '5':
1428 case '6':
1429 case '7':
1430 case '8':
1431 case '9':
1432 case 'A':
1433 case 'B':
1434 case 'C':
1435 case 'D':
1436 case 'E':
1437 case 'F':
1438 case 'G':
1439 case 'H':
1440 case 'I':
1441 case 'J':
1442 case 'K':
1443 case 'L':
1444 case 'M':
1445 case 'N':
1446 case 'O':
1447 case 'P':
1448 case 'Q':
1449 case 'R':
1450 case 'S':
1451 case 'T':
1452 case 'U':
1453 case 'V':
1454 case 'W':
1455 case 'X':
1456 case 'Y':
1457 case 'Z':
1458 case '_':
1459 case 'a':
1460 case 'b':
1461 case 'c':
1462 case 'd':
1463 case 'e':
1464 case 'f':
1465 case 'g':
1466 case 'h':
1467 case 'i':
1468 case 'j':
1469 case 'k':
1470 case 'l':
1471 case 'm':
1472 case 'n':
1473 case 'o':
1474 case 'p':
1475 case 'q':
1476 case 'r':
1477 case 's':
1478 case 't':
1479 case 'u':
1480 case 'v':
1481 case 'w':
1482 case 'x':
1483 case 'y':
1484 case 'z': goto yy132;
1485 case '>': goto yy222;
1486 default: goto yy114;
1487 }
1488 yy134:
1489 ++cur;
1490 #line 160 "src/parser_scan.re"
1491 { NEWTOKEN(PSI_T_LSHIFT); goto start; }
1492 #line 1493 "src/parser_scan.c"
1493 yy136:
1494 ++cur;
1495 #line 162 "src/parser_scan.re"
1496 { NEWTOKEN(PSI_T_CMP_LE); goto start; }
1497 #line 1498 "src/parser_scan.c"
1498 yy138:
1499 ++cur;
1500 #line 145 "src/parser_scan.re"
1501 { NEWTOKEN(PSI_T_CMP_EQ); goto start; }
1502 #line 1503 "src/parser_scan.c"
1503 yy140:
1504 ++cur;
1505 #line 163 "src/parser_scan.re"
1506 { NEWTOKEN(PSI_T_CMP_GE); goto start; }
1507 #line 1508 "src/parser_scan.c"
1508 yy142:
1509 ++cur;
1510 #line 161 "src/parser_scan.re"
1511 { NEWTOKEN(PSI_T_RSHIFT); goto start; }
1512 #line 1513 "src/parser_scan.c"
1513 yy144:
1514 yyaccept = 3;
1515 yych = *(mrk = ++cur);
1516 switch (yych) {
1517 case 'R':
1518 case 'r': goto yy224;
1519 default: goto yy62;
1520 }
1521 yy145:
1522 yyaccept = 6;
1523 yych = *(mrk = ++cur);
1524 switch (yych) {
1525 case 0x00:
1526 case 0x01:
1527 case 0x02:
1528 case 0x03:
1529 case 0x04:
1530 case 0x05:
1531 case 0x06:
1532 case 0x07:
1533 case 0x08:
1534 case '\t':
1535 case '\n':
1536 case '\v':
1537 case '\f':
1538 case '\r':
1539 case 0x0E:
1540 case 0x0F:
1541 case 0x10:
1542 case 0x11:
1543 case 0x12:
1544 case 0x13:
1545 case 0x14:
1546 case 0x15:
1547 case 0x16:
1548 case 0x17:
1549 case 0x18:
1550 case 0x19:
1551 case 0x1A:
1552 case 0x1B:
1553 case 0x1C:
1554 case 0x1D:
1555 case 0x1E:
1556 case 0x1F:
1557 case ' ':
1558 case '!':
1559 case '"':
1560 case '#':
1561 case '$':
1562 case '%':
1563 case '&':
1564 case '\'':
1565 case '(':
1566 case ')':
1567 case '*':
1568 case '+':
1569 case ',':
1570 case '-':
1571 case '.':
1572 case '/':
1573 case ':':
1574 case ';':
1575 case '<':
1576 case '=':
1577 case '>':
1578 case '?':
1579 case '@':
1580 case '[':
1581 case ']':
1582 case '^':
1583 case '`':
1584 case '{':
1585 case '|':
1586 case '}':
1587 case '~':
1588 case 0x7F: goto yy146;
1589 case '\\': goto yy147;
1590 default: goto yy61;
1591 }
1592 yy146:
1593 #line 223 "src/parser_scan.re"
1594 { NEWTOKEN(PSI_T_AS); goto start; }
1595 #line 1596 "src/parser_scan.c"
1596 yy147:
1597 ++cur;
1598 if (lim <= cur) CHECKEOF();;
1599 yych = *cur;
1600 switch (yych) {
1601 case 0x00:
1602 case 0x01:
1603 case 0x02:
1604 case 0x03:
1605 case 0x04:
1606 case 0x05:
1607 case 0x06:
1608 case 0x07:
1609 case 0x08:
1610 case '\t':
1611 case '\n':
1612 case '\v':
1613 case '\f':
1614 case '\r':
1615 case 0x0E:
1616 case 0x0F:
1617 case 0x10:
1618 case 0x11:
1619 case 0x12:
1620 case 0x13:
1621 case 0x14:
1622 case 0x15:
1623 case 0x16:
1624 case 0x17:
1625 case 0x18:
1626 case 0x19:
1627 case 0x1A:
1628 case 0x1B:
1629 case 0x1C:
1630 case 0x1D:
1631 case 0x1E:
1632 case 0x1F:
1633 case ' ':
1634 case '!':
1635 case '"':
1636 case '#':
1637 case '$':
1638 case '%':
1639 case '&':
1640 case '\'':
1641 case '(':
1642 case ')':
1643 case '*':
1644 case '+':
1645 case ',':
1646 case '-':
1647 case '.':
1648 case '/':
1649 case '0':
1650 case '1':
1651 case '2':
1652 case '3':
1653 case '4':
1654 case '5':
1655 case '6':
1656 case '7':
1657 case '8':
1658 case '9':
1659 case ':':
1660 case ';':
1661 case '<':
1662 case '=':
1663 case '>':
1664 case '?':
1665 case '@':
1666 case '[':
1667 case '\\':
1668 case ']':
1669 case '^':
1670 case '`':
1671 case '{':
1672 case '|':
1673 case '}':
1674 case '~':
1675 case 0x7F: goto yy114;
1676 default: goto yy183;
1677 }
1678 yy148:
1679 yyaccept = 3;
1680 yych = *(mrk = ++cur);
1681 switch (yych) {
1682 case 'O':
1683 case 'o': goto yy225;
1684 default: goto yy62;
1685 }
1686 yy149:
1687 yyaccept = 3;
1688 yych = *(mrk = ++cur);
1689 switch (yych) {
1690 case 'L':
1691 case 'l': goto yy226;
1692 default: goto yy62;
1693 }
1694 yy150:
1695 yyaccept = 3;
1696 yych = *(mrk = ++cur);
1697 switch (yych) {
1698 case 'U':
1699 case 'u': goto yy227;
1700 default: goto yy62;
1701 }
1702 yy151:
1703 yyaccept = 3;
1704 yych = *(mrk = ++cur);
1705 switch (yych) {
1706 case 'F':
1707 case 'f': goto yy228;
1708 default: goto yy62;
1709 }
1710 yy152:
1711 yyaccept = 3;
1712 yych = *(mrk = ++cur);
1713 switch (yych) {
1714 case 'I':
1715 case 'i': goto yy229;
1716 case 'S':
1717 case 's': goto yy230;
1718 default: goto yy62;
1719 }
1720 yy153:
1721 yyaccept = 3;
1722 yych = *(mrk = ++cur);
1723 switch (yych) {
1724 case 'D':
1725 case 'd': goto yy231;
1726 default: goto yy62;
1727 }
1728 yy154:
1729 yyaccept = 3;
1730 yych = *(mrk = ++cur);
1731 switch (yych) {
1732 case 'R':
1733 case 'r': goto yy232;
1734 default: goto yy62;
1735 }
1736 yy155:
1737 yyaccept = 3;
1738 yych = *(mrk = ++cur);
1739 switch (yych) {
1740 case 'L':
1741 case 'l': goto yy233;
1742 default: goto yy62;
1743 }
1744 yy156:
1745 yyaccept = 3;
1746 yych = *(mrk = ++cur);
1747 switch (yych) {
1748 case 'O':
1749 case 'o': goto yy234;
1750 default: goto yy62;
1751 }
1752 yy157:
1753 yyaccept = 3;
1754 yych = *(mrk = ++cur);
1755 switch (yych) {
1756 case 'E':
1757 case 'e': goto yy235;
1758 default: goto yy62;
1759 }
1760 yy158:
1761 yyaccept = 3;
1762 yych = *(mrk = ++cur);
1763 switch (yych) {
1764 case 'N':
1765 case 'n': goto yy236;
1766 default: goto yy62;
1767 }
1768 yy159:
1769 yyaccept = 7;
1770 yych = *(mrk = ++cur);
1771 switch (yych) {
1772 case 0x00:
1773 case 0x01:
1774 case 0x02:
1775 case 0x03:
1776 case 0x04:
1777 case 0x05:
1778 case 0x06:
1779 case 0x07:
1780 case 0x08:
1781 case '\t':
1782 case '\n':
1783 case '\v':
1784 case '\f':
1785 case '\r':
1786 case 0x0E:
1787 case 0x0F:
1788 case 0x10:
1789 case 0x11:
1790 case 0x12:
1791 case 0x13:
1792 case 0x14:
1793 case 0x15:
1794 case 0x16:
1795 case 0x17:
1796 case 0x18:
1797 case 0x19:
1798 case 0x1A:
1799 case 0x1B:
1800 case 0x1C:
1801 case 0x1D:
1802 case 0x1E:
1803 case 0x1F:
1804 case ' ':
1805 case '!':
1806 case '"':
1807 case '#':
1808 case '$':
1809 case '%':
1810 case '&':
1811 case '\'':
1812 case '(':
1813 case ')':
1814 case '*':
1815 case '+':
1816 case ',':
1817 case '-':
1818 case '.':
1819 case '/':
1820 case ':':
1821 case ';':
1822 case '<':
1823 case '=':
1824 case '>':
1825 case '?':
1826 case '@':
1827 case '[':
1828 case ']':
1829 case '^':
1830 case '`':
1831 case '{':
1832 case '|':
1833 case '}':
1834 case '~':
1835 case 0x7F: goto yy160;
1836 case 'D':
1837 case 'd': goto yy237;
1838 case 'N':
1839 case 'n': goto yy238;
1840 case '\\': goto yy147;
1841 default: goto yy61;
1842 }
1843 yy160:
1844 #line 193 "src/parser_scan.re"
1845 { NEWTOKEN(PSI_T_IF); goto start; }
1846 #line 1847 "src/parser_scan.c"
1847 yy161:
1848 yyaccept = 3;
1849 yych = *(mrk = ++cur);
1850 switch (yych) {
1851 case 'C':
1852 case 'c': goto yy239;
1853 case 'T':
1854 case 't': goto yy240;
1855 default: goto yy62;
1856 }
1857 yy162:
1858 ++cur;
1859 cur -= 1;
1860 #line 128 "src/parser_scan.re"
1861 { char_width = sizeof(wchar_t)/8; }
1862 #line 1863 "src/parser_scan.c"
1863 yy164:
1864 yyaccept = 3;
1865 yych = *(mrk = ++cur);
1866 switch (yych) {
1867 case 'T':
1868 case 't': goto yy241;
1869 default: goto yy62;
1870 }
1871 yy165:
1872 yyaccept = 3;
1873 yych = *(mrk = ++cur);
1874 switch (yych) {
1875 case 'B':
1876 case 'b': goto yy243;
1877 default: goto yy62;
1878 }
1879 yy166:
1880 yyaccept = 3;
1881 yych = *(mrk = ++cur);
1882 switch (yych) {
1883 case 'X':
1884 case 'x': goto yy245;
1885 default: goto yy62;
1886 }
1887 yy167:
1888 yyaccept = 3;
1889 yych = *(mrk = ++cur);
1890 switch (yych) {
1891 case 'L':
1892 case 'l': goto yy246;
1893 default: goto yy62;
1894 }
1895 yy168:
1896 yyaccept = 3;
1897 yych = *(mrk = ++cur);
1898 switch (yych) {
1899 case 'J':
1900 case 'j': goto yy247;
1901 default: goto yy62;
1902 }
1903 yy169:
1904 yyaccept = 3;
1905 yych = *(mrk = ++cur);
1906 switch (yych) {
1907 case 'T':
1908 case 't': goto yy248;
1909 default: goto yy62;
1910 }
1911 yy170:
1912 yyaccept = 3;
1913 yych = *(mrk = ++cur);
1914 switch (yych) {
1915 case 'S':
1916 case 's': goto yy249;
1917 default: goto yy62;
1918 }
1919 yy171:
1920 yyaccept = 3;
1921 yych = *(mrk = ++cur);
1922 switch (yych) {
1923 case 'E':
1924 case 'e': goto yy250;
1925 default: goto yy62;
1926 }
1927 yy172:
1928 yyaccept = 3;
1929 yych = *(mrk = ++cur);
1930 switch (yych) {
1931 case 'T':
1932 case 't': goto yy251;
1933 default: goto yy62;
1934 }
1935 yy173:
1936 yyaccept = 3;
1937 yych = *(mrk = ++cur);
1938 switch (yych) {
1939 case 'T':
1940 case 't': goto yy252;
1941 default: goto yy62;
1942 }
1943 yy174:
1944 yyaccept = 3;
1945 yych = *(mrk = ++cur);
1946 switch (yych) {
1947 case 'A':
1948 case 'a': goto yy254;
1949 case 'R':
1950 case 'r': goto yy255;
1951 default: goto yy62;
1952 }
1953 yy175:
1954 yyaccept = 3;
1955 yych = *(mrk = ++cur);
1956 switch (yych) {
1957 case 'M':
1958 case 'm': goto yy256;
1959 default: goto yy62;
1960 }
1961 yy176:
1962 yyaccept = 3;
1963 yych = *(mrk = ++cur);
1964 switch (yych) {
1965 case '_': goto yy257;
1966 default: goto yy62;
1967 }
1968 yy177:
1969 yyaccept = 3;
1970 yych = *(mrk = ++cur);
1971 switch (yych) {
1972 case 'U':
1973 case 'u': goto yy258;
1974 default: goto yy62;
1975 }
1976 yy178:
1977 ++cur;
1978 cur -= 1;
1979 #line 127 "src/parser_scan.re"
1980 { char_width = 4; }
1981 #line 1982 "src/parser_scan.c"
1982 yy180:
1983 yyaccept = 3;
1984 yych = *(mrk = ++cur);
1985 switch (yych) {
1986 case 'D':
1987 case 'd': goto yy259;
1988 default: goto yy62;
1989 }
1990 yy181:
1991 yyaccept = 3;
1992 yych = *(mrk = ++cur);
1993 switch (yych) {
1994 case 'R':
1995 case 'r': goto yy260;
1996 default: goto yy62;
1997 }
1998 yy182:
1999 yyaccept = 3;
2000 yych = *(mrk = ++cur);
2001 switch (yych) {
2002 case 'A':
2003 case 'a': goto yy261;
2004 default: goto yy62;
2005 }
2006 yy183:
2007 yyaccept = 8;
2008 mrk = ++cur;
2009 if (lim <= cur) CHECKEOF();;
2010 yych = *cur;
2011 switch (yych) {
2012 case 0x00:
2013 case 0x01:
2014 case 0x02:
2015 case 0x03:
2016 case 0x04:
2017 case 0x05:
2018 case 0x06:
2019 case 0x07:
2020 case 0x08:
2021 case '\t':
2022 case '\n':
2023 case '\v':
2024 case '\f':
2025 case '\r':
2026 case 0x0E:
2027 case 0x0F:
2028 case 0x10:
2029 case 0x11:
2030 case 0x12:
2031 case 0x13:
2032 case 0x14:
2033 case 0x15:
2034 case 0x16:
2035 case 0x17:
2036 case 0x18:
2037 case 0x19:
2038 case 0x1A:
2039 case 0x1B:
2040 case 0x1C:
2041 case 0x1D:
2042 case 0x1E:
2043 case 0x1F:
2044 case ' ':
2045 case '!':
2046 case '"':
2047 case '#':
2048 case '$':
2049 case '%':
2050 case '&':
2051 case '\'':
2052 case '(':
2053 case ')':
2054 case '*':
2055 case '+':
2056 case ',':
2057 case '-':
2058 case '.':
2059 case '/':
2060 case ':':
2061 case ';':
2062 case '<':
2063 case '=':
2064 case '>':
2065 case '?':
2066 case '@':
2067 case '[':
2068 case ']':
2069 case '^':
2070 case '`':
2071 case '{':
2072 case '|':
2073 case '}':
2074 case '~':
2075 case 0x7F: goto yy185;
2076 case '\\': goto yy147;
2077 default: goto yy183;
2078 }
2079 yy185:
2080 #line 244 "src/parser_scan.re"
2081 { NEWTOKEN(PSI_T_NSNAME); goto start; }
2082 #line 2083 "src/parser_scan.c"
2083 yy186:
2084 yyaccept = 3;
2085 yych = *(mrk = ++cur);
2086 switch (yych) {
2087 case 'a': goto yy262;
2088 case 'e': goto yy263;
2089 case 'i': goto yy264;
2090 case 'r': goto yy265;
2091 default: goto yy62;
2092 }
2093 yy187:
2094 yyaccept = 3;
2095 yych = *(mrk = ++cur);
2096 switch (yych) {
2097 case 'O': goto yy225;
2098 case 'o': goto yy266;
2099 default: goto yy62;
2100 }
2101 yy188:
2102 yyaccept = 3;
2103 yych = *(mrk = ++cur);
2104 switch (yych) {
2105 case 'a': goto yy267;
2106 default: goto yy62;
2107 }
2108 yy189:
2109 yyaccept = 3;
2110 yych = *(mrk = ++cur);
2111 switch (yych) {
2112 case 'U':
2113 case 'u': goto yy227;
2114 case 'n': goto yy268;
2115 default: goto yy62;
2116 }
2117 yy190:
2118 yyaccept = 3;
2119 yych = *(mrk = ++cur);
2120 switch (yych) {
2121 case 'u': goto yy269;
2122 default: goto yy62;
2123 }
2124 yy191:
2125 yyaccept = 3;
2126 yych = *(mrk = ++cur);
2127 switch (yych) {
2128 case 'D':
2129 case 'd': goto yy231;
2130 case 'u': goto yy270;
2131 default: goto yy62;
2132 }
2133 yy192:
2134 yyaccept = 3;
2135 yych = *(mrk = ++cur);
2136 switch (yych) {
2137 case 'O': goto yy234;
2138 case 'o': goto yy271;
2139 default: goto yy62;
2140 }
2141 yy193:
2142 yyaccept = 3;
2143 yych = *(mrk = ++cur);
2144 switch (yych) {
2145 case 'C':
2146 case 'c': goto yy239;
2147 case 'T': goto yy240;
2148 case 'l': goto yy272;
2149 case 't': goto yy273;
2150 default: goto yy62;
2151 }
2152 yy194:
2153 yyaccept = 3;
2154 yych = *(mrk = ++cur);
2155 switch (yych) {
2156 case 'B':
2157 case 'b': goto yy243;
2158 case 'n': goto yy275;
2159 default: goto yy62;
2160 }
2161 yy195:
2162 yyaccept = 3;
2163 yych = *(mrk = ++cur);
2164 switch (yych) {
2165 case 'n': goto yy276;
2166 default: goto yy62;
2167 }
2168 yy196:
2169 yyaccept = 3;
2170 yych = *(mrk = ++cur);
2171 switch (yych) {
2172 case 'E':
2173 case 'e': goto yy250;
2174 case 'a': goto yy277;
2175 default: goto yy62;
2176 }
2177 yy197:
2178 yyaccept = 3;
2179 yych = *(mrk = ++cur);
2180 switch (yych) {
2181 case 'o': goto yy278;
2182 default: goto yy62;
2183 }
2184 yy198:
2185 yyaccept = 3;
2186 yych = *(mrk = ++cur);
2187 switch (yych) {
2188 case 'g': goto yy279;
2189 case 'z': goto yy280;
2190 default: goto yy62;
2191 }
2192 yy199:
2193 yyaccept = 3;
2194 yych = *(mrk = ++cur);
2195 switch (yych) {
2196 case 'A':
2197 case 'a': goto yy254;
2198 case 'R': goto yy255;
2199 case 'r': goto yy281;
2200 default: goto yy62;
2201 }
2202 yy200:
2203 yyaccept = 3;
2204 yych = *(mrk = ++cur);
2205 switch (yych) {
2206 case 'p': goto yy282;
2207 default: goto yy62;
2208 }
2209 yy201:
2210 ++cur;
2211 cur -= 1;
2212 #line 126 "src/parser_scan.re"
2213 { char_width = 2; }
2214 #line 2215 "src/parser_scan.c"
2215 yy203:
2216 yyaccept = 3;
2217 yych = *(mrk = ++cur);
2218 switch (yych) {
2219 case '"': goto yy283;
2220 default: goto yy62;
2221 }
2222 yy204:
2223 yyaccept = 3;
2224 yych = *(mrk = ++cur);
2225 switch (yych) {
2226 case 'D':
2227 case 'd': goto yy259;
2228 case 'i': goto yy285;
2229 case 's': goto yy286;
2230 default: goto yy62;
2231 }
2232 yy205:
2233 yyaccept = 3;
2234 yych = *(mrk = ++cur);
2235 switch (yych) {
2236 case 'i': goto yy287;
2237 case 'l': goto yy288;
2238 default: goto yy62;
2239 }
2240 yy206:
2241 ++cur;
2242 #line 147 "src/parser_scan.re"
2243 { NEWTOKEN(PSI_T_OR); goto start; }
2244 #line 2245 "src/parser_scan.c"
2245 yy208:
2246 ++cur;
2247 #line 167 "src/parser_scan.re"
2248 { NEWTOKEN(PSI_T_ELLIPSIS); goto start; }
2249 #line 2250 "src/parser_scan.c"
2250 yy210:
2251 yych = *++cur;
2252 switch (yych) {
2253 case 'D':
2254 case 'd': goto yy289;
2255 case 'F':
2256 case 'f': goto yy291;
2257 case 'L':
2258 case 'l': goto yy293;
2259 default: goto yy114;
2260 }
2261 yy211:
2262 ++cur;
2263 cur -= 1;
2264 #line 117 "src/parser_scan.re"
2265 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_F; cur += 1; goto start; }
2266 #line 2267 "src/parser_scan.c"
2267 yy213:
2268 ++cur;
2269 cur -= 1;
2270 #line 118 "src/parser_scan.re"
2271 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_L; cur += 1; goto start; }
2272 #line 2273 "src/parser_scan.c"
2273 yy215:
2274 yych = *++cur;
2275 switch (yych) {
2276 case '0':
2277 case '1':
2278 case '2':
2279 case '3':
2280 case '4':
2281 case '5':
2282 case '6':
2283 case '7':
2284 case '8':
2285 case '9': goto yy115;
2286 default: goto yy114;
2287 }
2288 yy216:
2289 yych = *++cur;
2290 switch (yych) {
2291 case 'U':
2292 case 'u': goto yy295;
2293 default: goto yy114;
2294 }
2295 yy217:
2296 ++cur;
2297 yy218:
2298 cur -= 2;
2299 #line 113 "src/parser_scan.re"
2300 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_UL; cur += 2; goto start; }
2301 #line 2302 "src/parser_scan.c"
2302 yy219:
2303 yych = *++cur;
2304 switch (yych) {
2305 case 'L':
2306 case 'l': goto yy295;
2307 default: goto yy218;
2308 }
2309 yy220:
2310 yyaccept = 1;
2311 mrk = ++cur;
2312 if ((lim - cur) < 3) CHECKEOF();;
2313 yych = *cur;
2314 switch (yych) {
2315 case '.': goto yy297;
2316 case '0':
2317 case '1':
2318 case '2':
2319 case '3':
2320 case '4':
2321 case '5':
2322 case '6':
2323 case '7':
2324 case '8':
2325 case '9':
2326 case 'A':
2327 case 'B':
2328 case 'C':
2329 case 'D':
2330 case 'E':
2331 case 'F':
2332 case 'a':
2333 case 'b':
2334 case 'c':
2335 case 'd':
2336 case 'e':
2337 case 'f': goto yy220;
2338 case 'L':
2339 case 'l': goto yy127;
2340 case 'P':
2341 case 'p': goto yy126;
2342 case 'U':
2343 case 'u': goto yy129;
2344 default: goto yy39;
2345 }
2346 yy222:
2347 ++cur;
2348 #line 246 "src/parser_scan.re"
2349 { tok += 1; cur -= 1; NEWTOKEN(PSI_T_CPP_HEADER); cur += 1; goto start; }
2350 #line 2351 "src/parser_scan.c"
2351 yy224:
2352 yyaccept = 3;
2353 yych = *(mrk = ++cur);
2354 switch (yych) {
2355 case 'A':
2356 case 'a': goto yy299;
2357 case 'V':
2358 case 'v': goto yy300;
2359 default: goto yy62;
2360 }
2361 yy225:
2362 yyaccept = 3;
2363 yych = *(mrk = ++cur);
2364 switch (yych) {
2365 case 'L':
2366 case 'l': goto yy301;
2367 default: goto yy62;
2368 }
2369 yy226:
2370 yyaccept = 3;
2371 yych = *(mrk = ++cur);
2372 switch (yych) {
2373 case 'L':
2374 case 'l': goto yy302;
2375 default: goto yy62;
2376 }
2377 yy227:
2378 yyaccept = 3;
2379 yych = *(mrk = ++cur);
2380 switch (yych) {
2381 case 'N':
2382 case 'n': goto yy303;
2383 default: goto yy62;
2384 }
2385 yy228:
2386 yyaccept = 3;
2387 yych = *(mrk = ++cur);
2388 switch (yych) {
2389 case 'I':
2390 case 'i': goto yy304;
2391 default: goto yy62;
2392 }
2393 yy229:
2394 yyaccept = 3;
2395 yych = *(mrk = ++cur);
2396 switch (yych) {
2397 case 'F':
2398 case 'f': goto yy305;
2399 default: goto yy62;
2400 }
2401 yy230:
2402 yyaccept = 3;
2403 yych = *(mrk = ++cur);
2404 switch (yych) {
2405 case 'E':
2406 case 'e': goto yy307;
2407 default: goto yy62;
2408 }
2409 yy231:
2410 yyaccept = 3;
2411 yych = *(mrk = ++cur);
2412 switch (yych) {
2413 case 'I':
2414 case 'i': goto yy309;
2415 default: goto yy62;
2416 }
2417 yy232:
2418 yyaccept = 3;
2419 yych = *(mrk = ++cur);
2420 switch (yych) {
2421 case 'O':
2422 case 'o': goto yy310;
2423 default: goto yy62;
2424 }
2425 yy233:
2426 yyaccept = 3;
2427 yych = *(mrk = ++cur);
2428 switch (yych) {
2429 case 'S':
2430 case 's': goto yy311;
2431 default: goto yy62;
2432 }
2433 yy234:
2434 yyaccept = 3;
2435 yych = *(mrk = ++cur);
2436 switch (yych) {
2437 case 'A':
2438 case 'a': goto yy312;
2439 default: goto yy62;
2440 }
2441 yy235:
2442 yyaccept = 3;
2443 yych = *(mrk = ++cur);
2444 switch (yych) {
2445 case 'E':
2446 case 'e': goto yy313;
2447 default: goto yy62;
2448 }
2449 yy236:
2450 yyaccept = 3;
2451 yych = *(mrk = ++cur);
2452 switch (yych) {
2453 case 'C':
2454 case 'c': goto yy315;
2455 default: goto yy62;
2456 }
2457 yy237:
2458 yyaccept = 3;
2459 yych = *(mrk = ++cur);
2460 switch (yych) {
2461 case 'E':
2462 case 'e': goto yy316;
2463 default: goto yy62;
2464 }
2465 yy238:
2466 yyaccept = 3;
2467 yych = *(mrk = ++cur);
2468 switch (yych) {
2469 case 'D':
2470 case 'd': goto yy317;
2471 default: goto yy62;
2472 }
2473 yy239:
2474 yyaccept = 3;
2475 yych = *(mrk = ++cur);
2476 switch (yych) {
2477 case 'L':
2478 case 'l': goto yy318;
2479 default: goto yy62;
2480 }
2481 yy240:
2482 yyaccept = 3;
2483 yych = *(mrk = ++cur);
2484 switch (yych) {
2485 case 'V':
2486 case 'v': goto yy319;
2487 default: goto yy62;
2488 }
2489 yy241:
2490 yyaccept = 9;
2491 yych = *(mrk = ++cur);
2492 switch (yych) {
2493 case 0x00:
2494 case 0x01:
2495 case 0x02:
2496 case 0x03:
2497 case 0x04:
2498 case 0x05:
2499 case 0x06:
2500 case 0x07:
2501 case 0x08:
2502 case '\t':
2503 case '\n':
2504 case '\v':
2505 case '\f':
2506 case '\r':
2507 case 0x0E:
2508 case 0x0F:
2509 case 0x10:
2510 case 0x11:
2511 case 0x12:
2512 case 0x13:
2513 case 0x14:
2514 case 0x15:
2515 case 0x16:
2516 case 0x17:
2517 case 0x18:
2518 case 0x19:
2519 case 0x1A:
2520 case 0x1B:
2521 case 0x1C:
2522 case 0x1D:
2523 case 0x1E:
2524 case 0x1F:
2525 case ' ':
2526 case '!':
2527 case '"':
2528 case '#':
2529 case '$':
2530 case '%':
2531 case '&':
2532 case '\'':
2533 case '(':
2534 case ')':
2535 case '*':
2536 case '+':
2537 case ',':
2538 case '-':
2539 case '.':
2540 case '/':
2541 case ':':
2542 case ';':
2543 case '<':
2544 case '=':
2545 case '>':
2546 case '?':
2547 case '@':
2548 case '[':
2549 case ']':
2550 case '^':
2551 case '`':
2552 case '{':
2553 case '|':
2554 case '}':
2555 case '~':
2556 case 0x7F: goto yy242;
2557 case '\\': goto yy147;
2558 default: goto yy61;
2559 }
2560 yy242:
2561 #line 218 "src/parser_scan.re"
2562 { NEWTOKEN(PSI_T_LET); goto start; }
2563 #line 2564 "src/parser_scan.c"
2564 yy243:
2565 yyaccept = 10;
2566 yych = *(mrk = ++cur);
2567 switch (yych) {
2568 case 0x00:
2569 case 0x01:
2570 case 0x02:
2571 case 0x03:
2572 case 0x04:
2573 case 0x05:
2574 case 0x06:
2575 case 0x07:
2576 case 0x08:
2577 case '\t':
2578 case '\n':
2579 case '\v':
2580 case '\f':
2581 case '\r':
2582 case 0x0E:
2583 case 0x0F:
2584 case 0x10:
2585 case 0x11:
2586 case 0x12:
2587 case 0x13:
2588 case 0x14:
2589 case 0x15:
2590 case 0x16:
2591 case 0x17:
2592 case 0x18:
2593 case 0x19:
2594 case 0x1A:
2595 case 0x1B:
2596 case 0x1C:
2597 case 0x1D:
2598 case 0x1E:
2599 case 0x1F:
2600 case ' ':
2601 case '!':
2602 case '"':
2603 case '#':
2604 case '$':
2605 case '%':
2606 case '&':
2607 case '\'':
2608 case '(':
2609 case ')':
2610 case '*':
2611 case '+':
2612 case ',':
2613 case '-':
2614 case '.':
2615 case '/':
2616 case ':':
2617 case ';':
2618 case '<':
2619 case '=':
2620 case '>':
2621 case '?':
2622 case '@':
2623 case '[':
2624 case ']':
2625 case '^':
2626 case '`':
2627 case '{':
2628 case '|':
2629 case '}':
2630 case '~':
2631 case 0x7F: goto yy244;
2632 case '\\': goto yy147;
2633 default: goto yy61;
2634 }
2635 yy244:
2636 #line 217 "src/parser_scan.re"
2637 { NEWTOKEN(PSI_T_LIB); goto start; }
2638 #line 2639 "src/parser_scan.c"
2639 yy245:
2640 yyaccept = 3;
2641 yych = *(mrk = ++cur);
2642 switch (yych) {
2643 case 'E':
2644 case 'e': goto yy320;
2645 default: goto yy62;
2646 }
2647 yy246:
2648 yyaccept = 3;
2649 yych = *(mrk = ++cur);
2650 switch (yych) {
2651 case 'L':
2652 case 'l': goto yy321;
2653 default: goto yy62;
2654 }
2655 yy247:
2656 yyaccept = 3;
2657 yych = *(mrk = ++cur);
2658 switch (yych) {
2659 case 'E':
2660 case 'e': goto yy323;
2661 case 'V':
2662 case 'v': goto yy324;
2663 default: goto yy62;
2664 }
2665 yy248:
2666 yyaccept = 3;
2667 yych = *(mrk = ++cur);
2668 switch (yych) {
2669 case 'H':
2670 case 'h': goto yy325;
2671 default: goto yy62;
2672 }
2673 yy249:
2674 yyaccept = 3;
2675 yych = *(mrk = ++cur);
2676 switch (yych) {
2677 case 'T':
2678 case 't': goto yy326;
2679 default: goto yy62;
2680 }
2681 yy250:
2682 yyaccept = 3;
2683 yych = *(mrk = ++cur);
2684 switch (yych) {
2685 case '_': goto yy327;
2686 default: goto yy62;
2687 }
2688 yy251:
2689 yyaccept = 3;
2690 yych = *(mrk = ++cur);
2691 switch (yych) {
2692 case 'U':
2693 case 'u': goto yy328;
2694 default: goto yy62;
2695 }
2696 yy252:
2697 yyaccept = 11;
2698 yych = *(mrk = ++cur);
2699 switch (yych) {
2700 case 0x00:
2701 case 0x01:
2702 case 0x02:
2703 case 0x03:
2704 case 0x04:
2705 case 0x05:
2706 case 0x06:
2707 case 0x07:
2708 case 0x08:
2709 case '\t':
2710 case '\n':
2711 case '\v':
2712 case '\f':
2713 case '\r':
2714 case 0x0E:
2715 case 0x0F:
2716 case 0x10:
2717 case 0x11:
2718 case 0x12:
2719 case 0x13:
2720 case 0x14:
2721 case 0x15:
2722 case 0x16:
2723 case 0x17:
2724 case 0x18:
2725 case 0x19:
2726 case 0x1A:
2727 case 0x1B:
2728 case 0x1C:
2729 case 0x1D:
2730 case 0x1E:
2731 case 0x1F:
2732 case ' ':
2733 case '!':
2734 case '"':
2735 case '#':
2736 case '$':
2737 case '%':
2738 case '&':
2739 case '\'':
2740 case '(':
2741 case ')':
2742 case '*':
2743 case '+':
2744 case ',':
2745 case '-':
2746 case '.':
2747 case '/':
2748 case ':':
2749 case ';':
2750 case '<':
2751 case '=':
2752 case '>':
2753 case '?':
2754 case '@':
2755 case '[':
2756 case ']':
2757 case '^':
2758 case '`':
2759 case '{':
2760 case '|':
2761 case '}':
2762 case '~':
2763 case 0x7F: goto yy253;
2764 case '\\': goto yy147;
2765 default: goto yy61;
2766 }
2767 yy253:
2768 #line 219 "src/parser_scan.re"
2769 { NEWTOKEN(PSI_T_SET); goto start; }
2770 #line 2771 "src/parser_scan.c"
2771 yy254:
2772 yyaccept = 3;
2773 yych = *(mrk = ++cur);
2774 switch (yych) {
2775 case 'T':
2776 case 't': goto yy329;
2777 default: goto yy62;
2778 }
2779 yy255:
2780 yyaccept = 3;
2781 yych = *(mrk = ++cur);
2782 switch (yych) {
2783 case 'I':
2784 case 'i': goto yy330;
2785 case 'L':
2786 case 'l': goto yy331;
2787 case 'V':
2788 case 'v': goto yy332;
2789 default: goto yy62;
2790 }
2791 yy256:
2792 yyaccept = 3;
2793 yych = *(mrk = ++cur);
2794 switch (yych) {
2795 case 'P':
2796 case 'p': goto yy333;
2797 default: goto yy62;
2798 }
2799 yy257:
2800 yyaccept = 3;
2801 yych = *(mrk = ++cur);
2802 switch (yych) {
2803 case 'A':
2804 case 'a': goto yy335;
2805 case 'B':
2806 case 'b': goto yy336;
2807 case 'F':
2808 case 'f': goto yy337;
2809 case 'I':
2810 case 'i': goto yy338;
2811 case 'O':
2812 case 'o': goto yy339;
2813 case 'S':
2814 case 's': goto yy340;
2815 default: goto yy62;
2816 }
2817 yy258:
2818 yyaccept = 3;
2819 yych = *(mrk = ++cur);
2820 switch (yych) {
2821 case 'E':
2822 case 'e': goto yy341;
2823 default: goto yy62;
2824 }
2825 yy259:
2826 yyaccept = 3;
2827 yych = *(mrk = ++cur);
2828 switch (yych) {
2829 case 'E':
2830 case 'e': goto yy343;
2831 default: goto yy62;
2832 }
2833 yy260:
2834 yyaccept = 3;
2835 yych = *(mrk = ++cur);
2836 switch (yych) {
2837 case 'N':
2838 case 'n': goto yy344;
2839 default: goto yy62;
2840 }
2841 yy261:
2842 yyaccept = 3;
2843 yych = *(mrk = ++cur);
2844 switch (yych) {
2845 case 'L':
2846 case 'l': goto yy345;
2847 default: goto yy62;
2848 }
2849 yy262:
2850 yyaccept = 3;
2851 yych = *(mrk = ++cur);
2852 switch (yych) {
2853 case 's': goto yy347;
2854 case 't': goto yy348;
2855 default: goto yy62;
2856 }
2857 yy263:
2858 yyaccept = 3;
2859 yych = *(mrk = ++cur);
2860 switch (yych) {
2861 case 'x': goto yy349;
2862 default: goto yy62;
2863 }
2864 yy264:
2865 yyaccept = 3;
2866 yych = *(mrk = ++cur);
2867 switch (yych) {
2868 case 'n': goto yy350;
2869 default: goto yy62;
2870 }
2871 yy265:
2872 yyaccept = 3;
2873 yych = *(mrk = ++cur);
2874 switch (yych) {
2875 case 'e': goto yy351;
2876 default: goto yy62;
2877 }
2878 yy266:
2879 yyaccept = 3;
2880 yych = *(mrk = ++cur);
2881 switch (yych) {
2882 case 'L': goto yy301;
2883 case 'l': goto yy352;
2884 default: goto yy62;
2885 }
2886 yy267:
2887 yyaccept = 3;
2888 yych = *(mrk = ++cur);
2889 switch (yych) {
2890 case 'r': goto yy354;
2891 default: goto yy62;
2892 }
2893 yy268:
2894 yyaccept = 3;
2895 yych = *(mrk = ++cur);
2896 switch (yych) {
2897 case 's': goto yy356;
2898 default: goto yy62;
2899 }
2900 yy269:
2901 yyaccept = 3;
2902 yych = *(mrk = ++cur);
2903 switch (yych) {
2904 case 'b': goto yy357;
2905 default: goto yy62;
2906 }
2907 yy270:
2908 yyaccept = 3;
2909 yych = *(mrk = ++cur);
2910 switch (yych) {
2911 case 'm': goto yy358;
2912 default: goto yy62;
2913 }
2914 yy271:
2915 yyaccept = 3;
2916 yych = *(mrk = ++cur);
2917 switch (yych) {
2918 case 'A': goto yy312;
2919 case 'a': goto yy360;
2920 default: goto yy62;
2921 }
2922 yy272:
2923 yyaccept = 3;
2924 yych = *(mrk = ++cur);
2925 switch (yych) {
2926 case 'i': goto yy361;
2927 default: goto yy62;
2928 }
2929 yy273:
2930 yyaccept = 12;
2931 yych = *(mrk = ++cur);
2932 switch (yych) {
2933 case 0x00:
2934 case 0x01:
2935 case 0x02:
2936 case 0x03:
2937 case 0x04:
2938 case 0x05:
2939 case 0x06:
2940 case 0x07:
2941 case 0x08:
2942 case '\t':
2943 case '\n':
2944 case '\v':
2945 case '\f':
2946 case '\r':
2947 case 0x0E:
2948 case 0x0F:
2949 case 0x10:
2950 case 0x11:
2951 case 0x12:
2952 case 0x13:
2953 case 0x14:
2954 case 0x15:
2955 case 0x16:
2956 case 0x17:
2957 case 0x18:
2958 case 0x19:
2959 case 0x1A:
2960 case 0x1B:
2961 case 0x1C:
2962 case 0x1D:
2963 case 0x1E:
2964 case 0x1F:
2965 case ' ':
2966 case '!':
2967 case '"':
2968 case '#':
2969 case '$':
2970 case '%':
2971 case '&':
2972 case '\'':
2973 case '(':
2974 case ')':
2975 case '*':
2976 case '+':
2977 case ',':
2978 case '-':
2979 case '.':
2980 case '/':
2981 case ':':
2982 case ';':
2983 case '<':
2984 case '=':
2985 case '>':
2986 case '?':
2987 case '@':
2988 case '[':
2989 case ']':
2990 case '^':
2991 case '`':
2992 case '{':
2993 case '|':
2994 case '}':
2995 case '~':
2996 case 0x7F: goto yy274;
2997 case 'V':
2998 case 'v': goto yy319;
2999 case '\\': goto yy147;
3000 default: goto yy61;
3001 }
3002 yy274:
3003 #line 187 "src/parser_scan.re"
3004 { NEWTOKEN(PSI_T_INT); goto start; }
3005 #line 3006 "src/parser_scan.c"
3006 yy275:
3007 yyaccept = 3;
3008 yych = *(mrk = ++cur);
3009 switch (yych) {
3010 case 'e': goto yy362;
3011 default: goto yy62;
3012 }
3013 yy276:
3014 yyaccept = 3;
3015 yych = *(mrk = ++cur);
3016 switch (yych) {
3017 case 'g': goto yy364;
3018 default: goto yy62;
3019 }
3020 yy277:
3021 yyaccept = 3;
3022 yych = *(mrk = ++cur);
3023 switch (yych) {
3024 case 'g': goto yy366;
3025 default: goto yy62;
3026 }
3027 yy278:
3028 yyaccept = 3;
3029 yych = *(mrk = ++cur);
3030 switch (yych) {
3031 case 'r': goto yy367;
3032 default: goto yy62;
3033 }
3034 yy279:
3035 yyaccept = 3;
3036 yych = *(mrk = ++cur);
3037 switch (yych) {
3038 case 'n': goto yy368;
3039 default: goto yy62;
3040 }
3041 yy280:
3042 yyaccept = 3;
3043 yych = *(mrk = ++cur);
3044 switch (yych) {
3045 case 'e': goto yy369;
3046 default: goto yy62;
3047 }
3048 yy281:
3049 yyaccept = 3;
3050 yych = *(mrk = ++cur);
3051 switch (yych) {
3052 case 'I':
3053 case 'i': goto yy330;
3054 case 'L':
3055 case 'l': goto yy331;
3056 case 'V':
3057 case 'v': goto yy332;
3058 case 'u': goto yy370;
3059 default: goto yy62;
3060 }
3061 yy282:
3062 yyaccept = 3;
3063 yych = *(mrk = ++cur);
3064 switch (yych) {
3065 case 'e': goto yy371;
3066 default: goto yy62;
3067 }
3068 yy283:
3069 ++cur;
3070 cur -= 1;
3071 #line 125 "src/parser_scan.re"
3072 { char_width = 1; }
3073 #line 3074 "src/parser_scan.c"
3074 yy285:
3075 yyaccept = 3;
3076 yych = *(mrk = ++cur);
3077 switch (yych) {
3078 case 'o': goto yy372;
3079 default: goto yy62;
3080 }
3081 yy286:
3082 yyaccept = 3;
3083 yych = *(mrk = ++cur);
3084 switch (yych) {
3085 case 'i': goto yy373;
3086 default: goto yy62;
3087 }
3088 yy287:
3089 yyaccept = 3;
3090 yych = *(mrk = ++cur);
3091 switch (yych) {
3092 case 'd': goto yy374;
3093 default: goto yy62;
3094 }
3095 yy288:
3096 yyaccept = 3;
3097 yych = *(mrk = ++cur);
3098 switch (yych) {
3099 case 'a': goto yy376;
3100 default: goto yy62;
3101 }
3102 yy289:
3103 ++cur;
3104 cur -= 2;
3105 #line 120 "src/parser_scan.re"
3106 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DD; cur += 2; goto start; }
3107 #line 3108 "src/parser_scan.c"
3108 yy291:
3109 ++cur;
3110 cur -= 2;
3111 #line 119 "src/parser_scan.re"
3112 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DF; cur += 2; goto start; }
3113 #line 3114 "src/parser_scan.c"
3114 yy293:
3115 ++cur;
3116 cur -= 2;
3117 #line 121 "src/parser_scan.re"
3118 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_FLT | PSI_NUMBER_DL; cur += 2; goto start; }
3119 #line 3120 "src/parser_scan.c"
3120 yy295:
3121 ++cur;
3122 cur -= 3;
3123 #line 114 "src/parser_scan.re"
3124 { NEWTOKEN(PSI_T_NUMBER); token->flags = PSI_NUMBER_INT | PSI_NUMBER_ULL; cur += 3; goto start; }
3125 #line 3126 "src/parser_scan.c"
3126 yy297:
3127 ++cur;
3128 if ((lim - cur) < 3) CHECKEOF();;
3129 yych = *cur;
3130 switch (yych) {
3131 case '0':
3132 case '1':
3133 case '2':
3134 case '3':
3135 case '4':
3136 case '5':
3137 case '6':
3138 case '7':
3139 case '8':
3140 case '9':
3141 case 'A':
3142 case 'B':
3143 case 'C':
3144 case 'D':
3145 case 'E':
3146 case 'F':
3147 case 'a':
3148 case 'b':
3149 case 'c':
3150 case 'd':
3151 case 'e':
3152 case 'f': goto yy297;
3153 case 'P':
3154 case 'p': goto yy126;
3155 default: goto yy114;
3156 }
3157 yy299:
3158 yyaccept = 3;
3159 yych = *(mrk = ++cur);
3160 switch (yych) {
3161 case 'Y':
3162 case 'y': goto yy377;
3163 default: goto yy62;
3164 }
3165 yy300:
3166 yyaccept = 3;
3167 yych = *(mrk = ++cur);
3168 switch (yych) {
3169 case 'A':
3170 case 'a': goto yy379;
3171 default: goto yy62;
3172 }
3173 yy301:
3174 yyaccept = 3;
3175 yych = *(mrk = ++cur);
3176 switch (yych) {
3177 case 'V':
3178 case 'v': goto yy380;
3179 default: goto yy62;
3180 }
3181 yy302:
3182 yyaccept = 3;
3183 yych = *(mrk = ++cur);
3184 switch (yych) {
3185 case 'A':
3186 case 'a': goto yy381;
3187 case 'B':
3188 case 'b': goto yy382;
3189 case 'O':
3190 case 'o': goto yy383;
3191 default: goto yy62;
3192 }
3193 yy303:
3194 yyaccept = 3;
3195 yych = *(mrk = ++cur);
3196 switch (yych) {
3197 case 'T':
3198 case 't': goto yy384;
3199 default: goto yy62;
3200 }
3201 yy304:
3202 yyaccept = 3;
3203 yych = *(mrk = ++cur);
3204 switch (yych) {
3205 case 'N':
3206 case 'n': goto yy386;
3207 default: goto yy62;
3208 }
3209 yy305:
3210 yyaccept = 13;
3211 yych = *(mrk = ++cur);
3212 switch (yych) {
3213 case 0x00:
3214 case 0x01:
3215 case 0x02:
3216 case 0x03:
3217 case 0x04:
3218 case 0x05:
3219 case 0x06:
3220 case 0x07:
3221 case 0x08:
3222 case '\t':
3223 case '\n':
3224 case '\v':
3225 case '\f':
3226 case '\r':
3227 case 0x0E:
3228 case 0x0F:
3229 case 0x10:
3230 case 0x11:
3231 case 0x12:
3232 case 0x13:
3233 case 0x14:
3234 case 0x15:
3235 case 0x16:
3236 case 0x17:
3237 case 0x18:
3238 case 0x19:
3239 case 0x1A:
3240 case 0x1B:
3241 case 0x1C:
3242 case 0x1D:
3243 case 0x1E:
3244 case 0x1F:
3245 case ' ':
3246 case '!':
3247 case '"':
3248 case '#':
3249 case '$':
3250 case '%':
3251 case '&':
3252 case '\'':
3253 case '(':
3254 case ')':
3255 case '*':
3256 case '+':
3257 case ',':
3258 case '-':
3259 case '.':
3260 case '/':
3261 case ':':
3262 case ';':
3263 case '<':
3264 case '=':
3265 case '>':
3266 case '?':
3267 case '@':
3268 case '[':
3269 case ']':
3270 case '^':
3271 case '`':
3272 case '{':
3273 case '|':
3274 case '}':
3275 case '~':
3276 case 0x7F: goto yy306;
3277 case '\\': goto yy147;
3278 default: goto yy61;
3279 }
3280 yy306:
3281 #line 197 "src/parser_scan.re"
3282 { NEWTOKEN(PSI_T_ELIF); goto start; }
3283 #line 3284 "src/parser_scan.c"
3284 yy307:
3285 yyaccept = 14;
3286 yych = *(mrk = ++cur);
3287 switch (yych) {
3288 case 0x00:
3289 case 0x01:
3290 case 0x02:
3291 case 0x03:
3292 case 0x04:
3293 case 0x05:
3294 case 0x06:
3295 case 0x07:
3296 case 0x08:
3297 case '\t':
3298 case '\n':
3299 case '\v':
3300 case '\f':
3301 case '\r':
3302 case 0x0E:
3303 case 0x0F:
3304 case 0x10:
3305 case 0x11:
3306 case 0x12:
3307 case 0x13:
3308 case 0x14:
3309 case 0x15:
3310 case 0x16:
3311 case 0x17:
3312 case 0x18:
3313 case 0x19:
3314 case 0x1A:
3315 case 0x1B:
3316 case 0x1C:
3317 case 0x1D:
3318 case 0x1E:
3319 case 0x1F:
3320 case ' ':
3321 case '!':
3322 case '"':
3323 case '#':
3324 case '$':
3325 case '%':
3326 case '&':
3327 case '\'':
3328 case '(':
3329 case ')':
3330 case '*':
3331 case '+':
3332 case ',':
3333 case '-':
3334 case '.':
3335 case '/':
3336 case ':':
3337 case ';':
3338 case '<':
3339 case '=':
3340 case '>':
3341 case '?':
3342 case '@':
3343 case '[':
3344 case ']':
3345 case '^':
3346 case '`':
3347 case '{':
3348 case '|':
3349 case '}':
3350 case '~':
3351 case 0x7F: goto yy308;
3352 case '\\': goto yy147;
3353 default: goto yy61;
3354 }
3355 yy308:
3356 #line 196 "src/parser_scan.re"
3357 { NEWTOKEN(PSI_T_ELSE); goto start; }
3358 #line 3359 "src/parser_scan.c"
3359 yy309:
3360 yyaccept = 3;
3361 yych = *(mrk = ++cur);
3362 switch (yych) {
3363 case 'F':
3364 case 'f': goto yy387;
3365 default: goto yy62;
3366 }
3367 yy310:
3368 yyaccept = 3;
3369 yych = *(mrk = ++cur);
3370 switch (yych) {
3371 case 'R':
3372 case 'r': goto yy389;
3373 default: goto yy62;
3374 }
3375 yy311:
3376 yyaccept = 3;
3377 yych = *(mrk = ++cur);
3378 switch (yych) {
3379 case 'E':
3380 case 'e': goto yy391;
3381 default: goto yy62;
3382 }
3383 yy312:
3384 yyaccept = 3;
3385 yych = *(mrk = ++cur);
3386 switch (yych) {
3387 case 'T':
3388 case 't': goto yy393;
3389 default: goto yy62;
3390 }
3391 yy313:
3392 yyaccept = 15;
3393 yych = *(mrk = ++cur);
3394 switch (yych) {
3395 case 0x00:
3396 case 0x01:
3397 case 0x02:
3398 case 0x03:
3399 case 0x04:
3400 case 0x05:
3401 case 0x06:
3402 case 0x07:
3403 case 0x08:
3404 case '\t':
3405 case '\n':
3406 case '\v':
3407 case '\f':
3408 case '\r':
3409 case 0x0E:
3410 case 0x0F:
3411 case 0x10:
3412 case 0x11:
3413 case 0x12:
3414 case 0x13:
3415 case 0x14:
3416 case 0x15:
3417 case 0x16:
3418 case 0x17:
3419 case 0x18:
3420 case 0x19:
3421 case 0x1A:
3422 case 0x1B:
3423 case 0x1C:
3424 case 0x1D:
3425 case 0x1E:
3426 case 0x1F:
3427 case ' ':
3428 case '!':
3429 case '"':
3430 case '#':
3431 case '$':
3432 case '%':
3433 case '&':
3434 case '\'':
3435 case '(':
3436 case ')':
3437 case '*':
3438 case '+':
3439 case ',':
3440 case '-':
3441 case '.':
3442 case '/':
3443 case ':':
3444 case ';':
3445 case '<':
3446 case '=':
3447 case '>':
3448 case '?':
3449 case '@':
3450 case '[':
3451 case ']':
3452 case '^':
3453 case '`':
3454 case '{':
3455 case '|':
3456 case '}':
3457 case '~':
3458 case 0x7F: goto yy314;
3459 case '\\': goto yy147;
3460 default: goto yy61;
3461 }
3462 yy314:
3463 #line 224 "src/parser_scan.re"
3464 { NEWTOKEN(PSI_T_FREE); goto start; }
3465 #line 3466 "src/parser_scan.c"
3466 yy315:
3467 yyaccept = 3;
3468 yych = *(mrk = ++cur);
3469 switch (yych) {
3470 case 'T':
3471 case 't': goto yy394;
3472 default: goto yy62;
3473 }
3474 yy316:
3475 yyaccept = 3;
3476 yych = *(mrk = ++cur);
3477 switch (yych) {
3478 case 'F':
3479 case 'f': goto yy395;
3480 default: goto yy62;
3481 }
3482 yy317:
3483 yyaccept = 3;
3484 yych = *(mrk = ++cur);
3485 switch (yych) {
3486 case 'E':
3487 case 'e': goto yy397;
3488 default: goto yy62;
3489 }
3490 yy318:
3491 yyaccept = 3;
3492 yych = *(mrk = ++cur);
3493 switch (yych) {
3494 case 'U':
3495 case 'u': goto yy398;
3496 default: goto yy62;
3497 }
3498 yy319:
3499 yyaccept = 3;
3500 yych = *(mrk = ++cur);
3501 switch (yych) {
3502 case 'A':
3503 case 'a': goto yy399;
3504 default: goto yy62;
3505 }
3506 yy320:
3507 yyaccept = 3;
3508 yych = *(mrk = ++cur);
3509 switch (yych) {
3510 case 'D':
3511 case 'd': goto yy400;
3512 default: goto yy62;
3513 }
3514 yy321:
3515 yyaccept = 16;
3516 yych = *(mrk = ++cur);
3517 switch (yych) {
3518 case 0x00:
3519 case 0x01:
3520 case 0x02:
3521 case 0x03:
3522 case 0x04:
3523 case 0x05:
3524 case 0x06:
3525 case 0x07:
3526 case 0x08:
3527 case '\t':
3528 case '\n':
3529 case '\v':
3530 case '\f':
3531 case '\r':
3532 case 0x0E:
3533 case 0x0F:
3534 case 0x10:
3535 case 0x11:
3536 case 0x12:
3537 case 0x13:
3538 case 0x14:
3539 case 0x15:
3540 case 0x16:
3541 case 0x17:
3542 case 0x18:
3543 case 0x19:
3544 case 0x1A:
3545 case 0x1B:
3546 case 0x1C:
3547 case 0x1D:
3548 case 0x1E:
3549 case 0x1F:
3550 case ' ':
3551 case '!':
3552 case '"':
3553 case '#':
3554 case '$':
3555 case '%':
3556 case '&':
3557 case '\'':
3558 case '(':
3559 case ')':
3560 case '*':
3561 case '+':
3562 case ',':
3563 case '-':
3564 case '.':
3565 case '/':
3566 case ':':
3567 case ';':
3568 case '<':
3569 case '=':
3570 case '>':
3571 case '?':
3572 case '@':
3573 case '[':
3574 case ']':
3575 case '^':
3576 case '`':
3577 case '{':
3578 case '|':
3579 case '}':
3580 case '~':
3581 case 0x7F: goto yy322;
3582 case '\\': goto yy147;
3583 default: goto yy61;
3584 }
3585 yy322:
3586 #line 208 "src/parser_scan.re"
3587 { NEWTOKEN(PSI_T_NULL); goto start; }
3588 #line 3589 "src/parser_scan.c"
3589 yy323:
3590 yyaccept = 3;
3591 yych = *(mrk = ++cur);
3592 switch (yych) {
3593 case 'C':
3594 case 'c': goto yy402;
3595 default: goto yy62;
3596 }
3597 yy324:
3598 yyaccept = 3;
3599 yych = *(mrk = ++cur);
3600 switch (yych) {
3601 case 'A':
3602 case 'a': goto yy403;
3603 default: goto yy62;
3604 }
3605 yy325:
3606 yyaccept = 3;
3607 yych = *(mrk = ++cur);
3608 switch (yych) {
3609 case 'V':
3610 case 'v': goto yy404;
3611 default: goto yy62;
3612 }
3613 yy326:
3614 yyaccept = 3;
3615 yych = *(mrk = ++cur);
3616 switch (yych) {
3617 case '_': goto yy405;
3618 default: goto yy62;
3619 }
3620 yy327:
3621 yyaccept = 3;
3622 yych = *(mrk = ++cur);
3623 switch (yych) {
3624 case 'A':
3625 case 'a': goto yy406;
3626 default: goto yy62;
3627 }
3628 yy328:
3629 yyaccept = 3;
3630 yych = *(mrk = ++cur);
3631 switch (yych) {
3632 case 'R':
3633 case 'r': goto yy407;
3634 default: goto yy62;
3635 }
3636 yy329:
3637 yyaccept = 3;
3638 yych = *(mrk = ++cur);
3639 switch (yych) {
3640 case 'I':
3641 case 'i': goto yy408;
3642 default: goto yy62;
3643 }
3644 yy330:
3645 yyaccept = 3;
3646 yych = *(mrk = ++cur);
3647 switch (yych) {
3648 case 'N':
3649 case 'n': goto yy409;
3650 default: goto yy62;
3651 }
3652 yy331:
3653 yyaccept = 3;
3654 yych = *(mrk = ++cur);
3655 switch (yych) {
3656 case 'E':
3657 case 'e': goto yy410;
3658 default: goto yy62;
3659 }
3660 yy332:
3661 yyaccept = 3;
3662 yych = *(mrk = ++cur);
3663 switch (yych) {
3664 case 'A':
3665 case 'a': goto yy411;
3666 default: goto yy62;
3667 }
3668 yy333:
3669 yyaccept = 17;
3670 yych = *(mrk = ++cur);
3671 switch (yych) {
3672 case 0x00:
3673 case 0x01:
3674 case 0x02:
3675 case 0x03:
3676 case 0x04:
3677 case 0x05:
3678 case 0x06:
3679 case 0x07:
3680 case 0x08:
3681 case '\t':
3682 case '\n':
3683 case '\v':
3684 case '\f':
3685 case '\r':
3686 case 0x0E:
3687 case 0x0F:
3688 case 0x10:
3689 case 0x11:
3690 case 0x12:
3691 case 0x13:
3692 case 0x14:
3693 case 0x15:
3694 case 0x16:
3695 case 0x17:
3696 case 0x18:
3697 case 0x19:
3698 case 0x1A:
3699 case 0x1B:
3700 case 0x1C:
3701 case 0x1D:
3702 case 0x1E:
3703 case 0x1F:
3704 case ' ':
3705 case '!':
3706 case '"':
3707 case '#':
3708 case '$':
3709 case '%':
3710 case '&':
3711 case '\'':
3712 case '(':
3713 case ')':
3714 case '*':
3715 case '+':
3716 case ',':
3717 case '-':
3718 case '.':
3719 case '/':
3720 case ':':
3721 case ';':
3722 case '<':
3723 case '=':
3724 case '>':
3725 case '?':
3726 case '@':
3727 case '[':
3728 case ']':
3729 case '^':
3730 case '`':
3731 case '{':
3732 case '|':
3733 case '}':
3734 case '~':
3735 case 0x7F: goto yy334;
3736 case '\\': goto yy147;
3737 default: goto yy61;
3738 }
3739 yy334:
3740 #line 225 "src/parser_scan.re"
3741 { NEWTOKEN(PSI_T_TEMP); goto start; }
3742 #line 3743 "src/parser_scan.c"
3743 yy335:
3744 yyaccept = 3;
3745 yych = *(mrk = ++cur);
3746 switch (yych) {
3747 case 'R':
3748 case 'r': goto yy412;
3749 default: goto yy62;
3750 }
3751 yy336:
3752 yyaccept = 3;
3753 yych = *(mrk = ++cur);
3754 switch (yych) {
3755 case 'O':
3756 case 'o': goto yy413;
3757 default: goto yy62;
3758 }
3759 yy337:
3760 yyaccept = 3;
3761 yych = *(mrk = ++cur);
3762 switch (yych) {
3763 case 'L':
3764 case 'l': goto yy414;
3765 default: goto yy62;
3766 }
3767 yy338:
3768 yyaccept = 3;
3769 yych = *(mrk = ++cur);
3770 switch (yych) {
3771 case 'N':
3772 case 'n': goto yy415;
3773 default: goto yy62;
3774 }
3775 yy339:
3776 yyaccept = 3;
3777 yych = *(mrk = ++cur);
3778 switch (yych) {
3779 case 'B':
3780 case 'b': goto yy416;
3781 default: goto yy62;
3782 }
3783 yy340:
3784 yyaccept = 3;
3785 yych = *(mrk = ++cur);
3786 switch (yych) {
3787 case 'T':
3788 case 't': goto yy417;
3789 default: goto yy62;
3790 }
3791 yy341:
3792 yyaccept = 18;
3793 yych = *(mrk = ++cur);
3794 switch (yych) {
3795 case 0x00:
3796 case 0x01:
3797 case 0x02:
3798 case 0x03:
3799 case 0x04:
3800 case 0x05:
3801 case 0x06:
3802 case 0x07:
3803 case 0x08:
3804 case '\t':
3805 case '\n':
3806 case '\v':
3807 case '\f':
3808 case '\r':
3809 case 0x0E:
3810 case 0x0F:
3811 case 0x10:
3812 case 0x11:
3813 case 0x12:
3814 case 0x13:
3815 case 0x14:
3816 case 0x15:
3817 case 0x16:
3818 case 0x17:
3819 case 0x18:
3820 case 0x19:
3821 case 0x1A:
3822 case 0x1B:
3823 case 0x1C:
3824 case 0x1D:
3825 case 0x1E:
3826 case 0x1F:
3827 case ' ':
3828 case '!':
3829 case '"':
3830 case '#':
3831 case '$':
3832 case '%':
3833 case '&':
3834 case '\'':
3835 case '(':
3836 case ')':
3837 case '*':
3838 case '+':
3839 case ',':
3840 case '-':
3841 case '.':
3842 case '/':
3843 case ':':
3844 case ';':
3845 case '<':
3846 case '=':
3847 case '>':
3848 case '?':
3849 case '@':
3850 case '[':
3851 case ']':
3852 case '^':
3853 case '`':
3854 case '{':
3855 case '|':
3856 case '}':
3857 case '~':
3858 case 0x7F: goto yy342;
3859 case '\\': goto yy147;
3860 default: goto yy61;
3861 }
3862 yy342:
3863 #line 206 "src/parser_scan.re"
3864 { NEWTOKEN(PSI_T_TRUE); goto start; }
3865 #line 3866 "src/parser_scan.c"
3866 yy343:
3867 yyaccept = 3;
3868 yych = *(mrk = ++cur);
3869 switch (yych) {
3870 case 'F':
3871 case 'f': goto yy418;
3872 default: goto yy62;
3873 }
3874 yy344:
3875 yyaccept = 3;
3876 yych = *(mrk = ++cur);
3877 switch (yych) {
3878 case 'I':
3879 case 'i': goto yy420;
3880 default: goto yy62;
3881 }
3882 yy345:
3883 yyaccept = 19;
3884 yych = *(mrk = ++cur);
3885 switch (yych) {
3886 case 0x00:
3887 case 0x01:
3888 case 0x02:
3889 case 0x03:
3890 case 0x04:
3891 case 0x05:
3892 case 0x06:
3893 case 0x07:
3894 case 0x08:
3895 case '\t':
3896 case '\n':
3897 case '\v':
3898 case '\f':
3899 case '\r':
3900 case 0x0E:
3901 case 0x0F:
3902 case 0x10:
3903 case 0x11:
3904 case 0x12:
3905 case 0x13:
3906 case 0x14:
3907 case 0x15:
3908 case 0x16:
3909 case 0x17:
3910 case 0x18:
3911 case 0x19:
3912 case 0x1A:
3913 case 0x1B:
3914 case 0x1C:
3915 case 0x1D:
3916 case 0x1E:
3917 case 0x1F:
3918 case ' ':
3919 case '!':
3920 case '"':
3921 case '#':
3922 case '$':
3923 case '%':
3924 case '&':
3925 case '\'':
3926 case '(':
3927 case ')':
3928 case '*':
3929 case '+':
3930 case ',':
3931 case '-':
3932 case '.':
3933 case '/':
3934 case ':':
3935 case ';':
3936 case '<':
3937 case '=':
3938 case '>':
3939 case '?':
3940 case '@':
3941 case '[':
3942 case ']':
3943 case '^':
3944 case '`':
3945 case '{':
3946 case '|':
3947 case '}':
3948 case '~':
3949 case 0x7F: goto yy346;
3950 case '\\': goto yy147;
3951 default: goto yy61;
3952 }
3953 yy346:
3954 #line 234 "src/parser_scan.re"
3955 { NEWTOKEN(PSI_T_ZVAL); goto start; }
3956 #line 3957 "src/parser_scan.c"
3957 yy347:
3958 yyaccept = 3;
3959 yych = *(mrk = ++cur);
3960 switch (yych) {
3961 case 'm': goto yy421;
3962 default: goto yy62;
3963 }
3964 yy348:
3965 yyaccept = 3;
3966 yych = *(mrk = ++cur);
3967 switch (yych) {
3968 case 't': goto yy423;
3969 default: goto yy62;
3970 }
3971 yy349:
3972 yyaccept = 3;
3973 yych = *(mrk = ++cur);
3974 switch (yych) {
3975 case 't': goto yy424;
3976 default: goto yy62;
3977 }
3978 yy350:
3979 yyaccept = 3;
3980 yych = *(mrk = ++cur);
3981 switch (yych) {
3982 case 'l': goto yy272;
3983 default: goto yy62;
3984 }
3985 yy351:
3986 yyaccept = 3;
3987 yych = *(mrk = ++cur);
3988 switch (yych) {
3989 case 's': goto yy425;
3990 default: goto yy62;
3991 }
3992 yy352:
3993 yyaccept = 20;
3994 yych = *(mrk = ++cur);
3995 switch (yych) {
3996 case 0x00:
3997 case 0x01:
3998 case 0x02:
3999 case 0x03:
4000 case 0x04:
4001 case 0x05:
4002 case 0x06:
4003 case 0x07:
4004 case 0x08:
4005 case '\t':
4006 case '\n':
4007 case '\v':
4008 case '\f':
4009 case '\r':
4010 case 0x0E:
4011 case 0x0F:
4012 case 0x10:
4013 case 0x11:
4014 case 0x12:
4015 case 0x13:
4016 case 0x14:
4017 case 0x15:
4018 case 0x16:
4019 case 0x17:
4020 case 0x18:
4021 case 0x19:
4022 case 0x1A:
4023 case 0x1B:
4024 case 0x1C:
4025 case 0x1D:
4026 case 0x1E:
4027 case 0x1F:
4028 case ' ':
4029 case '!':
4030 case '"':
4031 case '#':
4032 case '$':
4033 case '%':
4034 case '&':
4035 case '\'':
4036 case '(':
4037 case ')':
4038 case '*':
4039 case '+':
4040 case ',':
4041 case '-':
4042 case '.':
4043 case '/':
4044 case ':':
4045 case ';':
4046 case '<':
4047 case '=':
4048 case '>':
4049 case '?':
4050 case '@':
4051 case '[':
4052 case ']':
4053 case '^':
4054 case '`':
4055 case '{':
4056 case '|':
4057 case '}':
4058 case '~':
4059 case 0x7F: goto yy353;
4060 case 'V':
4061 case 'v': goto yy380;
4062 case '\\': goto yy147;
4063 default: goto yy61;
4064 }
4065 yy353:
4066 #line 184 "src/parser_scan.re"
4067 { NEWTOKEN(PSI_T_BOOL); goto start; }
4068 #line 4069 "src/parser_scan.c"
4069 yy354:
4070 yyaccept = 21;
4071 yych = *(mrk = ++cur);
4072 switch (yych) {
4073 case 0x00:
4074 case 0x01:
4075 case 0x02:
4076 case 0x03:
4077 case 0x04:
4078 case 0x05:
4079 case 0x06:
4080 case 0x07:
4081 case 0x08:
4082 case '\t':
4083 case '\n':
4084 case '\v':
4085 case '\f':
4086 case '\r':
4087 case 0x0E:
4088 case 0x0F:
4089 case 0x10:
4090 case 0x11:
4091 case 0x12:
4092 case 0x13:
4093 case 0x14:
4094 case 0x15:
4095 case 0x16:
4096 case 0x17:
4097 case 0x18:
4098 case 0x19:
4099 case 0x1A:
4100 case 0x1B:
4101 case 0x1C:
4102 case 0x1D:
4103 case 0x1E:
4104 case 0x1F:
4105 case ' ':
4106 case '!':
4107 case '"':
4108 case '#':
4109 case '$':
4110 case '%':
4111 case '&':
4112 case '\'':
4113 case '(':
4114 case ')':
4115 case '*':
4116 case '+':
4117 case ',':
4118 case '-':
4119 case '.':
4120 case '/':
4121 case ':':
4122 case ';':
4123 case '<':
4124 case '=':
4125 case '>':
4126 case '?':
4127 case '@':
4128 case '[':
4129 case ']':
4130 case '^':
4131 case '`':
4132 case '{':
4133 case '|':
4134 case '}':
4135 case '~':
4136 case 0x7F: goto yy355;
4137 case '\\': goto yy147;
4138 default: goto yy61;
4139 }
4140 yy355:
4141 #line 185 "src/parser_scan.re"
4142 { NEWTOKEN(PSI_T_CHAR); goto start; }
4143 #line 4144 "src/parser_scan.c"
4144 yy356:
4145 yyaccept = 3;
4146 yych = *(mrk = ++cur);
4147 switch (yych) {
4148 case 't': goto yy426;
4149 default: goto yy62;
4150 }
4151 yy357:
4152 yyaccept = 3;
4153 yych = *(mrk = ++cur);
4154 switch (yych) {
4155 case 'l': goto yy428;
4156 default: goto yy62;
4157 }
4158 yy358:
4159 yyaccept = 22;
4160 yych = *(mrk = ++cur);
4161 switch (yych) {
4162 case 0x00:
4163 case 0x01:
4164 case 0x02:
4165 case 0x03:
4166 case 0x04:
4167 case 0x05:
4168 case 0x06:
4169 case 0x07:
4170 case 0x08:
4171 case '\t':
4172 case '\n':
4173 case '\v':
4174 case '\f':
4175 case '\r':
4176 case 0x0E:
4177 case 0x0F:
4178 case 0x10:
4179 case 0x11:
4180 case 0x12:
4181 case 0x13:
4182 case 0x14:
4183 case 0x15:
4184 case 0x16:
4185 case 0x17:
4186 case 0x18:
4187 case 0x19:
4188 case 0x1A:
4189 case 0x1B:
4190 case 0x1C:
4191 case 0x1D:
4192 case 0x1E:
4193 case 0x1F:
4194 case ' ':
4195 case '!':
4196 case '"':
4197 case '#':
4198 case '$':
4199 case '%':
4200 case '&':
4201 case '\'':
4202 case '(':
4203 case ')':
4204 case '*':
4205 case '+':
4206 case ',':
4207 case '-':
4208 case '.':
4209 case '/':
4210 case ':':
4211 case ';':
4212 case '<':
4213 case '=':
4214 case '>':
4215 case '?':
4216 case '@':
4217 case '[':
4218 case ']':
4219 case '^':
4220 case '`':
4221 case '{':
4222 case '|':
4223 case '}':
4224 case '~':
4225 case 0x7F: goto yy359;
4226 case '\\': goto yy147;
4227 default: goto yy61;
4228 }
4229 yy359:
4230 #line 181 "src/parser_scan.re"
4231 { NEWTOKEN(PSI_T_ENUM); goto start; }
4232 #line 4233 "src/parser_scan.c"
4233 yy360:
4234 yyaccept = 3;
4235 yych = *(mrk = ++cur);
4236 switch (yych) {
4237 case 'T': goto yy393;
4238 case 't': goto yy429;
4239 default: goto yy62;
4240 }
4241 yy361:
4242 yyaccept = 3;
4243 yych = *(mrk = ++cur);
4244 switch (yych) {
4245 case 'n': goto yy431;
4246 default: goto yy62;
4247 }
4248 yy362:
4249 yyaccept = 23;
4250 yych = *(mrk = ++cur);
4251 switch (yych) {
4252 case 0x00:
4253 case 0x01:
4254 case 0x02:
4255 case 0x03:
4256 case 0x04:
4257 case 0x05:
4258 case 0x06:
4259 case 0x07:
4260 case 0x08:
4261 case '\t':
4262 case '\n':
4263 case '\v':
4264 case '\f':
4265 case '\r':
4266 case 0x0E:
4267 case 0x0F:
4268 case 0x10:
4269 case 0x11:
4270 case 0x12:
4271 case 0x13:
4272 case 0x14:
4273 case 0x15:
4274 case 0x16:
4275 case 0x17:
4276 case 0x18:
4277 case 0x19:
4278 case 0x1A:
4279 case 0x1B:
4280 case 0x1C:
4281 case 0x1D:
4282 case 0x1E:
4283 case 0x1F:
4284 case ' ':
4285 case '!':
4286 case '"':
4287 case '#':
4288 case '$':
4289 case '%':
4290 case '&':
4291 case '\'':
4292 case '(':
4293 case ')':
4294 case '*':
4295 case '+':
4296 case ',':
4297 case '-':
4298 case '.':
4299 case '/':
4300 case ':':
4301 case ';':
4302 case '<':
4303 case '=':
4304 case '>':
4305 case '?':
4306 case '@':
4307 case '[':
4308 case ']':
4309 case '^':
4310 case '`':
4311 case '{':
4312 case '|':
4313 case '}':
4314 case '~':
4315 case 0x7F: goto yy363;
4316 case '\\': goto yy147;
4317 default: goto yy61;
4318 }
4319 yy363:
4320 #line 177 "src/parser_scan.re"
4321 { NEWTOKEN(PSI_T_LINE); goto start; }
4322 #line 4323 "src/parser_scan.c"
4323 yy364:
4324 yyaccept = 24;
4325 yych = *(mrk = ++cur);
4326 switch (yych) {
4327 case 0x00:
4328 case 0x01:
4329 case 0x02:
4330 case 0x03:
4331 case 0x04:
4332 case 0x05:
4333 case 0x06:
4334 case 0x07:
4335 case 0x08:
4336 case '\t':
4337 case '\n':
4338 case '\v':
4339 case '\f':
4340 case '\r':
4341 case 0x0E:
4342 case 0x0F:
4343 case 0x10:
4344 case 0x11:
4345 case 0x12:
4346 case 0x13:
4347 case 0x14:
4348 case 0x15:
4349 case 0x16:
4350 case 0x17:
4351 case 0x18:
4352 case 0x19:
4353 case 0x1A:
4354 case 0x1B:
4355 case 0x1C:
4356 case 0x1D:
4357 case 0x1E:
4358 case 0x1F:
4359 case ' ':
4360 case '!':
4361 case '"':
4362 case '#':
4363 case '$':
4364 case '%':
4365 case '&':
4366 case '\'':
4367 case '(':
4368 case ')':
4369 case '*':
4370 case '+':
4371 case ',':
4372 case '-':
4373 case '.':
4374 case '/':
4375 case ':':
4376 case ';':
4377 case '<':
4378 case '=':
4379 case '>':
4380 case '?':
4381 case '@':
4382 case '[':
4383 case ']':
4384 case '^':
4385 case '`':
4386 case '{':
4387 case '|':
4388 case '}':
4389 case '~':
4390 case 0x7F: goto yy365;
4391 case '\\': goto yy147;
4392 default: goto yy61;
4393 }
4394 yy365:
4395 #line 188 "src/parser_scan.re"
4396 { NEWTOKEN(PSI_T_LONG); goto start; }
4397 #line 4398 "src/parser_scan.c"
4398 yy366:
4399 yyaccept = 3;
4400 yych = *(mrk = ++cur);
4401 switch (yych) {
4402 case 'm': goto yy432;
4403 default: goto yy62;
4404 }
4405 yy367:
4406 yyaccept = 3;
4407 yych = *(mrk = ++cur);
4408 switch (yych) {
4409 case 't': goto yy433;
4410 default: goto yy62;
4411 }
4412 yy368:
4413 yyaccept = 3;
4414 yych = *(mrk = ++cur);
4415 switch (yych) {
4416 case 'e': goto yy435;
4417 default: goto yy62;
4418 }
4419 yy369:
4420 yyaccept = 3;
4421 yych = *(mrk = ++cur);
4422 switch (yych) {
4423 case 'o': goto yy436;
4424 default: goto yy62;
4425 }
4426 yy370:
4427 yyaccept = 3;
4428 yych = *(mrk = ++cur);
4429 switch (yych) {
4430 case 'c': goto yy437;
4431 default: goto yy62;
4432 }
4433 yy371:
4434 yyaccept = 3;
4435 yych = *(mrk = ++cur);
4436 switch (yych) {
4437 case 'd': goto yy438;
4438 default: goto yy62;
4439 }
4440 yy372:
4441 yyaccept = 3;
4442 yych = *(mrk = ++cur);
4443 switch (yych) {
4444 case 'n': goto yy439;
4445 default: goto yy62;
4446 }
4447 yy373:
4448 yyaccept = 3;
4449 yych = *(mrk = ++cur);
4450 switch (yych) {
4451 case 'g': goto yy441;
4452 default: goto yy62;
4453 }
4454 yy374:
4455 yyaccept = 25;
4456 yych = *(mrk = ++cur);
4457 switch (yych) {
4458 case 0x00:
4459 case 0x01:
4460 case 0x02:
4461 case 0x03:
4462 case 0x04:
4463 case 0x05:
4464 case 0x06:
4465 case 0x07:
4466 case 0x08:
4467 case '\t':
4468 case '\n':
4469 case '\v':
4470 case '\f':
4471 case '\r':
4472 case 0x0E:
4473 case 0x0F:
4474 case 0x10:
4475 case 0x11:
4476 case 0x12:
4477 case 0x13:
4478 case 0x14:
4479 case 0x15:
4480 case 0x16:
4481 case 0x17:
4482 case 0x18:
4483 case 0x19:
4484 case 0x1A:
4485 case 0x1B:
4486 case 0x1C:
4487 case 0x1D:
4488 case 0x1E:
4489 case 0x1F:
4490 case ' ':
4491 case '!':
4492 case '"':
4493 case '#':
4494 case '$':
4495 case '%':
4496 case '&':
4497 case '\'':
4498 case '(':
4499 case ')':
4500 case '*':
4501 case '+':
4502 case ',':
4503 case '-':
4504 case '.':
4505 case '/':
4506 case ':':
4507 case ';':
4508 case '<':
4509 case '=':
4510 case '>':
4511 case '?':
4512 case '@':
4513 case '[':
4514 case ']':
4515 case '^':
4516 case '`':
4517 case '{':
4518 case '|':
4519 case '}':
4520 case '~':
4521 case 0x7F: goto yy375;
4522 case '\\': goto yy147;
4523 default: goto yy61;
4524 }
4525 yy375:
4526 #line 183 "src/parser_scan.re"
4527 { NEWTOKEN(PSI_T_VOID); goto start; }
4528 #line 4529 "src/parser_scan.c"
4529 yy376:
4530 yyaccept = 3;
4531 yych = *(mrk = ++cur);
4532 switch (yych) {
4533 case 't': goto yy442;
4534 default: goto yy62;
4535 }
4536 yy377:
4537 yyaccept = 26;
4538 yych = *(mrk = ++cur);
4539 switch (yych) {
4540 case 0x00:
4541 case 0x01:
4542 case 0x02:
4543 case 0x03:
4544 case 0x04:
4545 case 0x05:
4546 case 0x06:
4547 case 0x07:
4548 case 0x08:
4549 case '\t':
4550 case '\n':
4551 case '\v':
4552 case '\f':
4553 case '\r':
4554 case 0x0E:
4555 case 0x0F:
4556 case 0x10:
4557 case 0x11:
4558 case 0x12:
4559 case 0x13:
4560 case 0x14:
4561 case 0x15:
4562 case 0x16:
4563 case 0x17:
4564 case 0x18:
4565 case 0x19:
4566 case 0x1A:
4567 case 0x1B:
4568 case 0x1C:
4569 case 0x1D:
4570 case 0x1E:
4571 case 0x1F:
4572 case ' ':
4573 case '!':
4574 case '"':
4575 case '#':
4576 case '$':
4577 case '%':
4578 case '&':
4579 case '\'':
4580 case '(':
4581 case ')':
4582 case '*':
4583 case '+':
4584 case ',':
4585 case '-':
4586 case '.':
4587 case '/':
4588 case ':':
4589 case ';':
4590 case '<':
4591 case '=':
4592 case '>':
4593 case '?':
4594 case '@':
4595 case '[':
4596 case ']':
4597 case '^':
4598 case '`':
4599 case '{':
4600 case '|':
4601 case '}':
4602 case '~':
4603 case 0x7F: goto yy378;
4604 case '\\': goto yy147;
4605 default: goto yy61;
4606 }
4607 yy378:
4608 #line 212 "src/parser_scan.re"
4609 { NEWTOKEN(PSI_T_ARRAY); goto start; }
4610 #line 4611 "src/parser_scan.c"
4611 yy379:
4612 yyaccept = 3;
4613 yych = *(mrk = ++cur);
4614 switch (yych) {
4615 case 'L':
4616 case 'l': goto yy443;
4617 default: goto yy62;
4618 }
4619 yy380:
4620 yyaccept = 3;
4621 yych = *(mrk = ++cur);
4622 switch (yych) {
4623 case 'A':
4624 case 'a': goto yy445;
4625 default: goto yy62;
4626 }
4627 yy381:
4628 yyaccept = 3;
4629 yych = *(mrk = ++cur);
4630 switch (yych) {
4631 case 'B':
4632 case 'b': goto yy446;
4633 default: goto yy62;
4634 }
4635 yy382:
4636 yyaccept = 3;
4637 yych = *(mrk = ++cur);
4638 switch (yych) {
4639 case 'A':
4640 case 'a': goto yy447;
4641 default: goto yy62;
4642 }
4643 yy383:
4644 yyaccept = 3;
4645 yych = *(mrk = ++cur);
4646 switch (yych) {
4647 case 'C':
4648 case 'c': goto yy448;
4649 default: goto yy62;
4650 }
4651 yy384:
4652 yyaccept = 27;
4653 yych = *(mrk = ++cur);
4654 switch (yych) {
4655 case 0x00:
4656 case 0x01:
4657 case 0x02:
4658 case 0x03:
4659 case 0x04:
4660 case 0x05:
4661 case 0x06:
4662 case 0x07:
4663 case 0x08:
4664 case '\t':
4665 case '\n':
4666 case '\v':
4667 case '\f':
4668 case '\r':
4669 case 0x0E:
4670 case 0x0F:
4671 case 0x10:
4672 case 0x11:
4673 case 0x12:
4674 case 0x13:
4675 case 0x14:
4676 case 0x15:
4677 case 0x16:
4678 case 0x17:
4679 case 0x18:
4680 case 0x19:
4681 case 0x1A:
4682 case 0x1B:
4683 case 0x1C:
4684 case 0x1D:
4685 case 0x1E:
4686 case 0x1F:
4687 case ' ':
4688 case '!':
4689 case '"':
4690 case '#':
4691 case '$':
4692 case '%':
4693 case '&':
4694 case '\'':
4695 case '(':
4696 case ')':
4697 case '*':
4698 case '+':
4699 case ',':
4700 case '-':
4701 case '.':
4702 case '/':
4703 case ':':
4704 case ';':
4705 case '<':
4706 case '=':
4707 case '>':
4708 case '?':
4709 case '@':
4710 case '[':
4711 case ']':
4712 case '^':
4713 case '`':
4714 case '{':
4715 case '|':
4716 case '}':
4717 case '~':
4718 case 0x7F: goto yy385;
4719 case '\\': goto yy147;
4720 default: goto yy61;
4721 }
4722 yy385:
4723 #line 235 "src/parser_scan.re"
4724 { NEWTOKEN(PSI_T_COUNT); goto start; }
4725 #line 4726 "src/parser_scan.c"
4726 yy386:
4727 yyaccept = 3;
4728 yych = *(mrk = ++cur);
4729 switch (yych) {
4730 case 'E':
4731 case 'e': goto yy450;
4732 default: goto yy62;
4733 }
4734 yy387:
4735 yyaccept = 28;
4736 yych = *(mrk = ++cur);
4737 switch (yych) {
4738 case 0x00:
4739 case 0x01:
4740 case 0x02:
4741 case 0x03:
4742 case 0x04:
4743 case 0x05:
4744 case 0x06:
4745 case 0x07:
4746 case 0x08:
4747 case '\t':
4748 case '\n':
4749 case '\v':
4750 case '\f':
4751 case '\r':
4752 case 0x0E:
4753 case 0x0F:
4754 case 0x10:
4755 case 0x11:
4756 case 0x12:
4757 case 0x13:
4758 case 0x14:
4759 case 0x15:
4760 case 0x16:
4761 case 0x17:
4762 case 0x18:
4763 case 0x19:
4764 case 0x1A:
4765 case 0x1B:
4766 case 0x1C:
4767 case 0x1D:
4768 case 0x1E:
4769 case 0x1F:
4770 case ' ':
4771 case '!':
4772 case '"':
4773 case '#':
4774 case '$':
4775 case '%':
4776 case '&':
4777 case '\'':
4778 case '(':
4779 case ')':
4780 case '*':
4781 case '+':
4782 case ',':
4783 case '-':
4784 case '.':
4785 case '/':
4786 case ':':
4787 case ';':
4788 case '<':
4789 case '=':
4790 case '>':
4791 case '?':
4792 case '@':
4793 case '[':
4794 case ']':
4795 case '^':
4796 case '`':
4797 case '{':
4798 case '|':
4799 case '}':
4800 case '~':
4801 case 0x7F: goto yy388;
4802 case '\\': goto yy147;
4803 default: goto yy61;
4804 }
4805 yy388:
4806 #line 198 "src/parser_scan.re"
4807 { NEWTOKEN(PSI_T_ENDIF); goto start; }
4808 #line 4809 "src/parser_scan.c"
4809 yy389:
4810 yyaccept = 29;
4811 yych = *(mrk = ++cur);
4812 switch (yych) {
4813 case 0x00:
4814 case 0x01:
4815 case 0x02:
4816 case 0x03:
4817 case 0x04:
4818 case 0x05:
4819 case 0x06:
4820 case 0x07:
4821 case 0x08:
4822 case '\t':
4823 case '\n':
4824 case '\v':
4825 case '\f':
4826 case '\r':
4827 case 0x0E:
4828 case 0x0F:
4829 case 0x10:
4830 case 0x11:
4831 case 0x12:
4832 case 0x13:
4833 case 0x14:
4834 case 0x15:
4835 case 0x16:
4836 case 0x17:
4837 case 0x18:
4838 case 0x19:
4839 case 0x1A:
4840 case 0x1B:
4841 case 0x1C:
4842 case 0x1D:
4843 case 0x1E:
4844 case 0x1F:
4845 case ' ':
4846 case '!':
4847 case '"':
4848 case '#':
4849 case '$':
4850 case '%':
4851 case '&':
4852 case '\'':
4853 case '(':
4854 case ')':
4855 case '*':
4856 case '+':
4857 case ',':
4858 case '-':
4859 case '.':
4860 case '/':
4861 case ':':
4862 case ';':
4863 case '<':
4864 case '=':
4865 case '>':
4866 case '?':
4867 case '@':
4868 case '[':
4869 case ']':
4870 case '^':
4871 case '`':
4872 case '{':
4873 case '|':
4874 case '}':
4875 case '~':
4876 case 0x7F: goto yy390;
4877 case '\\': goto yy147;
4878 default: goto yy61;
4879 }
4880 yy390:
4881 #line 203 "src/parser_scan.re"
4882 { NEWTOKEN(PSI_T_ERROR); goto start; }
4883 #line 4884 "src/parser_scan.c"
4884 yy391:
4885 yyaccept = 30;
4886 yych = *(mrk = ++cur);
4887 switch (yych) {
4888 case 0x00:
4889 case 0x01:
4890 case 0x02:
4891 case 0x03:
4892 case 0x04:
4893 case 0x05:
4894 case 0x06:
4895 case 0x07:
4896 case 0x08:
4897 case '\t':
4898 case '\n':
4899 case '\v':
4900 case '\f':
4901 case '\r':
4902 case 0x0E:
4903 case 0x0F:
4904 case 0x10:
4905 case 0x11:
4906 case 0x12:
4907 case 0x13:
4908 case 0x14:
4909 case 0x15:
4910 case 0x16:
4911 case 0x17:
4912 case 0x18:
4913 case 0x19:
4914 case 0x1A:
4915 case 0x1B:
4916 case 0x1C:
4917 case 0x1D:
4918 case 0x1E:
4919 case 0x1F:
4920 case ' ':
4921 case '!':
4922 case '"':
4923 case '#':
4924 case '$':
4925 case '%':
4926 case '&':
4927 case '\'':
4928 case '(':
4929 case ')':
4930 case '*':
4931 case '+':
4932 case ',':
4933 case '-':
4934 case '.':
4935 case '/':
4936 case ':':
4937 case ';':
4938 case '<':
4939 case '=':
4940 case '>':
4941 case '?':
4942 case '@':
4943 case '[':
4944 case ']':
4945 case '^':
4946 case '`':
4947 case '{':
4948 case '|':
4949 case '}':
4950 case '~':
4951 case 0x7F: goto yy392;
4952 case '\\': goto yy147;
4953 default: goto yy61;
4954 }
4955 yy392:
4956 #line 207 "src/parser_scan.re"
4957 { NEWTOKEN(PSI_T_FALSE); goto start; }
4958 #line 4959 "src/parser_scan.c"
4959 yy393:
4960 yyaccept = 3;
4961 yych = *(mrk = ++cur);
4962 switch (yych) {
4963 case 'V':
4964 case 'v': goto yy452;
4965 default: goto yy62;
4966 }
4967 yy394:
4968 yyaccept = 3;
4969 yych = *(mrk = ++cur);
4970 switch (yych) {
4971 case 'I':
4972 case 'i': goto yy453;
4973 default: goto yy62;
4974 }
4975 yy395:
4976 yyaccept = 31;
4977 yych = *(mrk = ++cur);
4978 switch (yych) {
4979 case 0x00:
4980 case 0x01:
4981 case 0x02:
4982 case 0x03:
4983 case 0x04:
4984 case 0x05:
4985 case 0x06:
4986 case 0x07:
4987 case 0x08:
4988 case '\t':
4989 case '\n':
4990 case '\v':
4991 case '\f':
4992 case '\r':
4993 case 0x0E:
4994 case 0x0F:
4995 case 0x10:
4996 case 0x11:
4997 case 0x12:
4998 case 0x13:
4999 case 0x14:
5000 case 0x15:
5001 case 0x16:
5002 case 0x17:
5003 case 0x18:
5004 case 0x19:
5005 case 0x1A:
5006 case 0x1B:
5007 case 0x1C:
5008 case 0x1D:
5009 case 0x1E:
5010 case 0x1F:
5011 case ' ':
5012 case '!':
5013 case '"':
5014 case '#':
5015 case '$':
5016 case '%':
5017 case '&':
5018 case '\'':
5019 case '(':
5020 case ')':
5021 case '*':
5022 case '+':
5023 case ',':
5024 case '-':
5025 case '.':
5026 case '/':
5027 case ':':
5028 case ';':
5029 case '<':
5030 case '=':
5031 case '>':
5032 case '?':
5033 case '@':
5034 case '[':
5035 case ']':
5036 case '^':
5037 case '`':
5038 case '{':
5039 case '|':
5040 case '}':
5041 case '~':
5042 case 0x7F: goto yy396;
5043 case '\\': goto yy147;
5044 default: goto yy61;
5045 }
5046 yy396:
5047 #line 194 "src/parser_scan.re"
5048 { NEWTOKEN(PSI_T_IFDEF); goto start; }
5049 #line 5050 "src/parser_scan.c"
5050 yy397:
5051 yyaccept = 3;
5052 yych = *(mrk = ++cur);
5053 switch (yych) {
5054 case 'F':
5055 case 'f': goto yy454;
5056 default: goto yy62;
5057 }
5058 yy398:
5059 yyaccept = 3;
5060 yych = *(mrk = ++cur);
5061 switch (yych) {
5062 case 'D':
5063 case 'd': goto yy456;
5064 default: goto yy62;
5065 }
5066 yy399:
5067 yyaccept = 3;
5068 yych = *(mrk = ++cur);
5069 switch (yych) {
5070 case 'L':
5071 case 'l': goto yy457;
5072 default: goto yy62;
5073 }
5074 yy400:
5075 yyaccept = 32;
5076 yych = *(mrk = ++cur);
5077 switch (yych) {
5078 case 0x00:
5079 case 0x01:
5080 case 0x02:
5081 case 0x03:
5082 case 0x04:
5083 case 0x05:
5084 case 0x06:
5085 case 0x07:
5086 case 0x08:
5087 case '\t':
5088 case '\n':
5089 case '\v':
5090 case '\f':
5091 case '\r':
5092 case 0x0E:
5093 case 0x0F:
5094 case 0x10:
5095 case 0x11:
5096 case 0x12:
5097 case 0x13:
5098 case 0x14:
5099 case 0x15:
5100 case 0x16:
5101 case 0x17:
5102 case 0x18:
5103 case 0x19:
5104 case 0x1A:
5105 case 0x1B:
5106 case 0x1C:
5107 case 0x1D:
5108 case 0x1E:
5109 case 0x1F:
5110 case ' ':
5111 case '!':
5112 case '"':
5113 case '#':
5114 case '$':
5115 case '%':
5116 case '&':
5117 case '\'':
5118 case '(':
5119 case ')':
5120 case '*':
5121 case '+':
5122 case ',':
5123 case '-':
5124 case '.':
5125 case '/':
5126 case ':':
5127 case ';':
5128 case '<':
5129 case '=':
5130 case '>':
5131 case '?':
5132 case '@':
5133 case '[':
5134 case ']':
5135 case '^':
5136 case '`':
5137 case '{':
5138 case '|':
5139 case '}':
5140 case '~':
5141 case 0x7F: goto yy401;
5142 case '\\': goto yy147;
5143 default: goto yy61;
5144 }
5145 yy401:
5146 #line 209 "src/parser_scan.re"
5147 { NEWTOKEN(PSI_T_MIXED); goto start; }
5148 #line 5149 "src/parser_scan.c"
5149 yy402:
5150 yyaccept = 3;
5151 yych = *(mrk = ++cur);
5152 switch (yych) {
5153 case 'T':
5154 case 't': goto yy459;
5155 default: goto yy62;
5156 }
5157 yy403:
5158 yyaccept = 3;
5159 yych = *(mrk = ++cur);
5160 switch (yych) {
5161 case 'L':
5162 case 'l': goto yy461;
5163 default: goto yy62;
5164 }
5165 yy404:
5166 yyaccept = 3;
5167 yych = *(mrk = ++cur);
5168 switch (yych) {
5169 case 'A':
5170 case 'a': goto yy463;
5171 default: goto yy62;
5172 }
5173 yy405:
5174 yyaccept = 3;
5175 yych = *(mrk = ++cur);
5176 switch (yych) {
5177 case 'A':
5178 case 'a': goto yy464;
5179 default: goto yy62;
5180 }
5181 yy406:
5182 yyaccept = 3;
5183 yych = *(mrk = ++cur);
5184 switch (yych) {
5185 case 'S':
5186 case 's': goto yy465;
5187 default: goto yy62;
5188 }
5189 yy407:
5190 yyaccept = 3;
5191 yych = *(mrk = ++cur);
5192 switch (yych) {
5193 case 'N':
5194 case 'n': goto yy466;
5195 default: goto yy62;
5196 }
5197 yy408:
5198 yyaccept = 3;
5199 yych = *(mrk = ++cur);
5200 switch (yych) {
5201 case 'C':
5202 case 'c': goto yy468;
5203 default: goto yy62;
5204 }
5205 yy409:
5206 yyaccept = 3;
5207 yych = *(mrk = ++cur);
5208 switch (yych) {
5209 case 'G':
5210 case 'g': goto yy470;
5211 default: goto yy62;
5212 }
5213 yy410:
5214 yyaccept = 3;
5215 yych = *(mrk = ++cur);
5216 switch (yych) {
5217 case 'N':
5218 case 'n': goto yy472;
5219 default: goto yy62;
5220 }
5221 yy411:
5222 yyaccept = 3;
5223 yych = *(mrk = ++cur);
5224 switch (yych) {
5225 case 'L':
5226 case 'l': goto yy474;
5227 default: goto yy62;
5228 }
5229 yy412:
5230 yyaccept = 3;
5231 yych = *(mrk = ++cur);
5232 switch (yych) {
5233 case 'R':
5234 case 'r': goto yy476;
5235 default: goto yy62;
5236 }
5237 yy413:
5238 yyaccept = 3;
5239 yych = *(mrk = ++cur);
5240 switch (yych) {
5241 case 'O':
5242 case 'o': goto yy477;
5243 default: goto yy62;
5244 }
5245 yy414:
5246 yyaccept = 3;
5247 yych = *(mrk = ++cur);
5248 switch (yych) {
5249 case 'O':
5250 case 'o': goto yy478;
5251 default: goto yy62;
5252 }
5253 yy415:
5254 yyaccept = 3;
5255 yych = *(mrk = ++cur);
5256 switch (yych) {
5257 case 'T':
5258 case 't': goto yy479;
5259 default: goto yy62;
5260 }
5261 yy416:
5262 yyaccept = 3;
5263 yych = *(mrk = ++cur);
5264 switch (yych) {
5265 case 'J':
5266 case 'j': goto yy481;
5267 default: goto yy62;
5268 }
5269 yy417:
5270 yyaccept = 3;
5271 yych = *(mrk = ++cur);
5272 switch (yych) {
5273 case 'R':
5274 case 'r': goto yy482;
5275 default: goto yy62;
5276 }
5277 yy418:
5278 yyaccept = 33;
5279 yych = *(mrk = ++cur);
5280 switch (yych) {
5281 case 0x00:
5282 case 0x01:
5283 case 0x02:
5284 case 0x03:
5285 case 0x04:
5286 case 0x05:
5287 case 0x06:
5288 case 0x07:
5289 case 0x08:
5290 case '\t':
5291 case '\n':
5292 case '\v':
5293 case '\f':
5294 case '\r':
5295 case 0x0E:
5296 case 0x0F:
5297 case 0x10:
5298 case 0x11:
5299 case 0x12:
5300 case 0x13:
5301 case 0x14:
5302 case 0x15:
5303 case 0x16:
5304 case 0x17:
5305 case 0x18:
5306 case 0x19:
5307 case 0x1A:
5308 case 0x1B:
5309 case 0x1C:
5310 case 0x1D:
5311 case 0x1E:
5312 case 0x1F:
5313 case ' ':
5314 case '!':
5315 case '"':
5316 case '#':
5317 case '$':
5318 case '%':
5319 case '&':
5320 case '\'':
5321 case '(':
5322 case ')':
5323 case '*':
5324 case '+':
5325 case ',':
5326 case '-':
5327 case '.':
5328 case '/':
5329 case ':':
5330 case ';':
5331 case '<':
5332 case '=':
5333 case '>':
5334 case '?':
5335 case '@':
5336 case '[':
5337 case ']':
5338 case '^':
5339 case '`':
5340 case '{':
5341 case '|':
5342 case '}':
5343 case '~':
5344 case 0x7F: goto yy419;
5345 case '\\': goto yy147;
5346 default: goto yy61;
5347 }
5348 yy419:
5349 #line 201 "src/parser_scan.re"
5350 { NEWTOKEN(PSI_T_UNDEF); goto start; }
5351 #line 5352 "src/parser_scan.c"
5352 yy420:
5353 yyaccept = 3;
5354 yych = *(mrk = ++cur);
5355 switch (yych) {
5356 case 'N':
5357 case 'n': goto yy483;
5358 default: goto yy62;
5359 }
5360 yy421:
5361 yyaccept = 34;
5362 yych = *(mrk = ++cur);
5363 switch (yych) {
5364 case 0x00:
5365 case 0x01:
5366 case 0x02:
5367 case 0x03:
5368 case 0x04:
5369 case 0x05:
5370 case 0x06:
5371 case 0x07:
5372 case 0x08:
5373 case '\t':
5374 case '\n':
5375 case '\v':
5376 case '\f':
5377 case '\r':
5378 case 0x0E:
5379 case 0x0F:
5380 case 0x10:
5381 case 0x11:
5382 case 0x12:
5383 case 0x13:
5384 case 0x14:
5385 case 0x15:
5386 case 0x16:
5387 case 0x17:
5388 case 0x18:
5389 case 0x19:
5390 case 0x1A:
5391 case 0x1B:
5392 case 0x1C:
5393 case 0x1D:
5394 case 0x1E:
5395 case 0x1F:
5396 case ' ':
5397 case '!':
5398 case '"':
5399 case '#':
5400 case '$':
5401 case '%':
5402 case '&':
5403 case '\'':
5404 case '(':
5405 case ')':
5406 case '*':
5407 case '+':
5408 case ',':
5409 case '-':
5410 case '.':
5411 case '/':
5412 case ':':
5413 case ';':
5414 case '<':
5415 case '=':
5416 case '>':
5417 case '?':
5418 case '@':
5419 case '[':
5420 case ']':
5421 case '^':
5422 case '`':
5423 case '{':
5424 case '|':
5425 case '}':
5426 case '~':
5427 case 0x7F: goto yy422;
5428 case '\\': goto yy147;
5429 case '_': goto yy484;
5430 default: goto yy61;
5431 }
5432 yy422:
5433 #line 174 "src/parser_scan.re"
5434 { NEWTOKEN(PSI_T_CPP_ASM); goto start; }
5435 #line 5436 "src/parser_scan.c"
5436 yy423:
5437 yyaccept = 3;
5438 yych = *(mrk = ++cur);
5439 switch (yych) {
5440 case 'r': goto yy485;
5441 default: goto yy62;
5442 }
5443 yy424:
5444 yyaccept = 3;
5445 yych = *(mrk = ++cur);
5446 switch (yych) {
5447 case 'e': goto yy486;
5448 default: goto yy62;
5449 }
5450 yy425:
5451 yyaccept = 3;
5452 yych = *(mrk = ++cur);
5453 switch (yych) {
5454 case 't': goto yy487;
5455 default: goto yy62;
5456 }
5457 yy426:
5458 yyaccept = 35;
5459 yych = *(mrk = ++cur);
5460 switch (yych) {
5461 case 0x00:
5462 case 0x01:
5463 case 0x02:
5464 case 0x03:
5465 case 0x04:
5466 case 0x05:
5467 case 0x06:
5468 case 0x07:
5469 case 0x08:
5470 case '\t':
5471 case '\n':
5472 case '\v':
5473 case '\f':
5474 case '\r':
5475 case 0x0E:
5476 case 0x0F:
5477 case 0x10:
5478 case 0x11:
5479 case 0x12:
5480 case 0x13:
5481 case 0x14:
5482 case 0x15:
5483 case 0x16:
5484 case 0x17:
5485 case 0x18:
5486 case 0x19:
5487 case 0x1A:
5488 case 0x1B:
5489 case 0x1C:
5490 case 0x1D:
5491 case 0x1E:
5492 case 0x1F:
5493 case ' ':
5494 case '!':
5495 case '"':
5496 case '#':
5497 case '$':
5498 case '%':
5499 case '&':
5500 case '\'':
5501 case '(':
5502 case ')':
5503 case '*':
5504 case '+':
5505 case ',':
5506 case '-':
5507 case '.':
5508 case '/':
5509 case ':':
5510 case ';':
5511 case '<':
5512 case '=':
5513 case '>':
5514 case '?':
5515 case '@':
5516 case '[':
5517 case ']':
5518 case '^':
5519 case '`':
5520 case '{':
5521 case '|':
5522 case '}':
5523 case '~':
5524 case 0x7F: goto yy427;
5525 case '\\': goto yy147;
5526 default: goto yy61;
5527 }
5528 yy427:
5529 #line 182 "src/parser_scan.re"
5530 { NEWTOKEN(PSI_T_CONST); goto start; }
5531 #line 5532 "src/parser_scan.c"
5532 yy428:
5533 yyaccept = 3;
5534 yych = *(mrk = ++cur);
5535 switch (yych) {
5536 case 'e': goto yy488;
5537 default: goto yy62;
5538 }
5539 yy429:
5540 yyaccept = 36;
5541 yych = *(mrk = ++cur);
5542 switch (yych) {
5543 case 0x00:
5544 case 0x01:
5545 case 0x02:
5546 case 0x03:
5547 case 0x04:
5548 case 0x05:
5549 case 0x06:
5550 case 0x07:
5551 case 0x08:
5552 case '\t':
5553 case '\n':
5554 case '\v':
5555 case '\f':
5556 case '\r':
5557 case 0x0E:
5558 case 0x0F:
5559 case 0x10:
5560 case 0x11:
5561 case 0x12:
5562 case 0x13:
5563 case 0x14:
5564 case 0x15:
5565 case 0x16:
5566 case 0x17:
5567 case 0x18:
5568 case 0x19:
5569 case 0x1A:
5570 case 0x1B:
5571 case 0x1C:
5572 case 0x1D:
5573 case 0x1E:
5574 case 0x1F:
5575 case ' ':
5576 case '!':
5577 case '"':
5578 case '#':
5579 case '$':
5580 case '%':
5581 case '&':
5582 case '\'':
5583 case '(':
5584 case ')':
5585 case '*':
5586 case '+':
5587 case ',':
5588 case '-':
5589 case '.':
5590 case '/':
5591 case ':':
5592 case ';':
5593 case '<':
5594 case '=':
5595 case '>':
5596 case '?':
5597 case '@':
5598 case '[':
5599 case ']':
5600 case '^':
5601 case '`':
5602 case '{':
5603 case '|':
5604 case '}':
5605 case '~':
5606 case 0x7F: goto yy430;
5607 case 'V':
5608 case 'v': goto yy452;
5609 case '\\': goto yy147;
5610 default: goto yy61;
5611 }
5612 yy430:
5613 #line 189 "src/parser_scan.re"
5614 { NEWTOKEN(PSI_T_FLOAT); goto start; }
5615 #line 5616 "src/parser_scan.c"
5616 yy431:
5617 yyaccept = 3;
5618 yych = *(mrk = ++cur);
5619 switch (yych) {
5620 case 'e': goto yy490;
5621 default: goto yy62;
5622 }
5623 yy432:
5624 yyaccept = 3;
5625 yych = *(mrk = ++cur);
5626 switch (yych) {
5627 case 'a': goto yy492;
5628 default: goto yy62;
5629 }
5630 yy433:
5631 yyaccept = 37;
5632 yych = *(mrk = ++cur);
5633 switch (yych) {
5634 case 0x00:
5635 case 0x01:
5636 case 0x02:
5637 case 0x03:
5638 case 0x04:
5639 case 0x05:
5640 case 0x06:
5641 case 0x07:
5642 case 0x08:
5643 case '\t':
5644 case '\n':
5645 case '\v':
5646 case '\f':
5647 case '\r':
5648 case 0x0E:
5649 case 0x0F:
5650 case 0x10:
5651 case 0x11:
5652 case 0x12:
5653 case 0x13:
5654 case 0x14:
5655 case 0x15:
5656 case 0x16:
5657 case 0x17:
5658 case 0x18:
5659 case 0x19:
5660 case 0x1A:
5661 case 0x1B:
5662 case 0x1C:
5663 case 0x1D:
5664 case 0x1E:
5665 case 0x1F:
5666 case ' ':
5667 case '!':
5668 case '"':
5669 case '#':
5670 case '$':
5671 case '%':
5672 case '&':
5673 case '\'':
5674 case '(':
5675 case ')':
5676 case '*':
5677 case '+':
5678 case ',':
5679 case '-':
5680 case '.':
5681 case '/':
5682 case ':':
5683 case ';':
5684 case '<':
5685 case '=':
5686 case '>':
5687 case '?':
5688 case '@':
5689 case '[':
5690 case ']':
5691 case '^':
5692 case '`':
5693 case '{':
5694 case '|':
5695 case '}':
5696 case '~':
5697 case 0x7F: goto yy434;
5698 case '\\': goto yy147;
5699 default: goto yy61;
5700 }
5701 yy434:
5702 #line 186 "src/parser_scan.re"
5703 { NEWTOKEN(PSI_T_SHORT); goto start; }
5704 #line 5705 "src/parser_scan.c"
5705 yy435:
5706 yyaccept = 3;
5707 yych = *(mrk = ++cur);
5708 switch (yych) {
5709 case 'd': goto yy494;
5710 default: goto yy62;
5711 }
5712 yy436:
5713 yyaccept = 3;
5714 yych = *(mrk = ++cur);
5715 switch (yych) {
5716 case 'f': goto yy496;
5717 default: goto yy62;
5718 }
5719 yy437:
5720 yyaccept = 3;
5721 yych = *(mrk = ++cur);
5722 switch (yych) {
5723 case 't': goto yy498;
5724 default: goto yy62;
5725 }
5726 yy438:
5727 yyaccept = 3;
5728 yych = *(mrk = ++cur);
5729 switch (yych) {
5730 case 'e': goto yy500;
5731 default: goto yy62;
5732 }
5733 yy439:
5734 yyaccept = 38;
5735 yych = *(mrk = ++cur);
5736 switch (yych) {
5737 case 0x00:
5738 case 0x01:
5739 case 0x02:
5740 case 0x03:
5741 case 0x04:
5742 case 0x05:
5743 case 0x06:
5744 case 0x07:
5745 case 0x08:
5746 case '\t':
5747 case '\n':
5748 case '\v':
5749 case '\f':
5750 case '\r':
5751 case 0x0E:
5752 case 0x0F:
5753 case 0x10:
5754 case 0x11:
5755 case 0x12:
5756 case 0x13:
5757 case 0x14:
5758 case 0x15:
5759 case 0x16:
5760 case 0x17:
5761 case 0x18:
5762 case 0x19:
5763 case 0x1A:
5764 case 0x1B:
5765 case 0x1C:
5766 case 0x1D:
5767 case 0x1E:
5768 case 0x1F:
5769 case ' ':
5770 case '!':
5771 case '"':
5772 case '#':
5773 case '$':
5774 case '%':
5775 case '&':
5776 case '\'':
5777 case '(':
5778 case ')':
5779 case '*':
5780 case '+':
5781 case ',':
5782 case '-':
5783 case '.':
5784 case '/':
5785 case ':':
5786 case ';':
5787 case '<':
5788 case '=':
5789 case '>':
5790 case '?':
5791 case '@':
5792 case '[':
5793 case ']':
5794 case '^':
5795 case '`':
5796 case '{':
5797 case '|':
5798 case '}':
5799 case '~':
5800 case 0x7F: goto yy440;
5801 case '\\': goto yy147;
5802 default: goto yy61;
5803 }
5804 yy440:
5805 #line 180 "src/parser_scan.re"
5806 { NEWTOKEN(PSI_T_UNION); goto start; }
5807 #line 5808 "src/parser_scan.c"
5808 yy441:
5809 yyaccept = 3;
5810 yych = *(mrk = ++cur);
5811 switch (yych) {
5812 case 'n': goto yy501;
5813 default: goto yy62;
5814 }
5815 yy442:
5816 yyaccept = 3;
5817 yych = *(mrk = ++cur);
5818 switch (yych) {
5819 case 'i': goto yy502;
5820 default: goto yy62;
5821 }
5822 yy443:
5823 yyaccept = 39;
5824 yych = *(mrk = ++cur);
5825 switch (yych) {
5826 case 0x00:
5827 case 0x01:
5828 case 0x02:
5829 case 0x03:
5830 case 0x04:
5831 case 0x05:
5832 case 0x06:
5833 case 0x07:
5834 case 0x08:
5835 case '\t':
5836 case '\n':
5837 case '\v':
5838 case '\f':
5839 case '\r':
5840 case 0x0E:
5841 case 0x0F:
5842 case 0x10:
5843 case 0x11:
5844 case 0x12:
5845 case 0x13:
5846 case 0x14:
5847 case 0x15:
5848 case 0x16:
5849 case 0x17:
5850 case 0x18:
5851 case 0x19:
5852 case 0x1A:
5853 case 0x1B:
5854 case 0x1C:
5855 case 0x1D:
5856 case 0x1E:
5857 case 0x1F:
5858 case ' ':
5859 case '!':
5860 case '"':
5861 case '#':
5862 case '$':
5863 case '%':
5864 case '&':
5865 case '\'':
5866 case '(':
5867 case ')':
5868 case '*':
5869 case '+':
5870 case ',':
5871 case '-':
5872 case '.':
5873 case '/':
5874 case ':':
5875 case ';':
5876 case '<':
5877 case '=':
5878 case '>':
5879 case '?':
5880 case '@':
5881 case '[':
5882 case ']':
5883 case '^':
5884 case '`':
5885 case '{':
5886 case '|':
5887 case '}':
5888 case '~':
5889 case 0x7F: goto yy444;
5890 case '\\': goto yy147;
5891 default: goto yy61;
5892 }
5893 yy444:
5894 #line 232 "src/parser_scan.re"
5895 { NEWTOKEN(PSI_T_ARRVAL); goto start; }
5896 #line 5897 "src/parser_scan.c"
5897 yy445:
5898 yyaccept = 3;
5899 yych = *(mrk = ++cur);
5900 switch (yych) {
5901 case 'L':
5902 case 'l': goto yy503;
5903 default: goto yy62;
5904 }
5905 yy446:
5906 yyaccept = 3;
5907 yych = *(mrk = ++cur);
5908 switch (yych) {
5909 case 'L':
5910 case 'l': goto yy505;
5911 default: goto yy62;
5912 }
5913 yy447:
5914 yyaccept = 3;
5915 yych = *(mrk = ++cur);
5916 switch (yych) {
5917 case 'C':
5918 case 'c': goto yy506;
5919 default: goto yy62;
5920 }
5921 yy448:
5922 yyaccept = 40;
5923 yych = *(mrk = ++cur);
5924 switch (yych) {
5925 case 0x00:
5926 case 0x01:
5927 case 0x02:
5928 case 0x03:
5929 case 0x04:
5930 case 0x05:
5931 case 0x06:
5932 case 0x07:
5933 case 0x08:
5934 case '\t':
5935 case '\n':
5936 case '\v':
5937 case '\f':
5938 case '\r':
5939 case 0x0E:
5940 case 0x0F:
5941 case 0x10:
5942 case 0x11:
5943 case 0x12:
5944 case 0x13:
5945 case 0x14:
5946 case 0x15:
5947 case 0x16:
5948 case 0x17:
5949 case 0x18:
5950 case 0x19:
5951 case 0x1A:
5952 case 0x1B:
5953 case 0x1C:
5954 case 0x1D:
5955 case 0x1E:
5956 case 0x1F:
5957 case ' ':
5958 case '!':
5959 case '"':
5960 case '#':
5961 case '$':
5962 case '%':
5963 case '&':
5964 case '\'':
5965 case '(':
5966 case ')':
5967 case '*':
5968 case '+':
5969 case ',':
5970 case '-':
5971 case '.':
5972 case '/':
5973 case ':':
5974 case ';':
5975 case '<':
5976 case '=':
5977 case '>':
5978 case '?':
5979 case '@':
5980 case '[':
5981 case ']':
5982 case '^':
5983 case '`':
5984 case '{':
5985 case '|':
5986 case '}':
5987 case '~':
5988 case 0x7F: goto yy449;
5989 case '\\': goto yy147;
5990 default: goto yy61;
5991 }
5992 yy449:
5993 #line 236 "src/parser_scan.re"
5994 { NEWTOKEN(PSI_T_CALLOC); goto start; }
5995 #line 5996 "src/parser_scan.c"
5996 yy450:
5997 yyaccept = 41;
5998 yych = *(mrk = ++cur);
5999 switch (yych) {
6000 case 0x00:
6001 case 0x01:
6002 case 0x02:
6003 case 0x03:
6004 case 0x04:
6005 case 0x05:
6006 case 0x06:
6007 case 0x07:
6008 case 0x08:
6009 case '\t':
6010 case '\n':
6011 case '\v':
6012 case '\f':
6013 case '\r':
6014 case 0x0E:
6015 case 0x0F:
6016 case 0x10:
6017 case 0x11:
6018 case 0x12:
6019 case 0x13:
6020 case 0x14:
6021 case 0x15:
6022 case 0x16:
6023 case 0x17:
6024 case 0x18:
6025 case 0x19:
6026 case 0x1A:
6027 case 0x1B:
6028 case 0x1C:
6029 case 0x1D:
6030 case 0x1E:
6031 case 0x1F:
6032 case ' ':
6033 case '!':
6034 case '"':
6035 case '#':
6036 case '$':
6037 case '%':
6038 case '&':
6039 case '\'':
6040 case '(':
6041 case ')':
6042 case '*':
6043 case '+':
6044 case ',':
6045 case '-':
6046 case '.':
6047 case '/':
6048 case ':':
6049 case ';':
6050 case '<':
6051 case '=':
6052 case '>':
6053 case '?':
6054 case '@':
6055 case '[':
6056 case ']':
6057 case '^':
6058 case '`':
6059 case '{':
6060 case '|':
6061 case '}':
6062 case '~':
6063 case 0x7F: goto yy451;
6064 case 'D':
6065 case 'd': goto yy507;
6066 case '\\': goto yy147;
6067 default: goto yy61;
6068 }
6069 yy451:
6070 #line 199 "src/parser_scan.re"
6071 { NEWTOKEN(PSI_T_DEFINE); goto start; }
6072 #line 6073 "src/parser_scan.c"
6073 yy452:
6074 yyaccept = 3;
6075 yych = *(mrk = ++cur);
6076 switch (yych) {
6077 case 'A':
6078 case 'a': goto yy509;
6079 default: goto yy62;
6080 }
6081 yy453:
6082 yyaccept = 3;
6083 yych = *(mrk = ++cur);
6084 switch (yych) {
6085 case 'O':
6086 case 'o': goto yy510;
6087 default: goto yy62;
6088 }
6089 yy454:
6090 yyaccept = 42;
6091 yych = *(mrk = ++cur);
6092 switch (yych) {
6093 case 0x00:
6094 case 0x01:
6095 case 0x02:
6096 case 0x03:
6097 case 0x04:
6098 case 0x05:
6099 case 0x06:
6100 case 0x07:
6101 case 0x08:
6102 case '\t':
6103 case '\n':
6104 case '\v':
6105 case '\f':
6106 case '\r':
6107 case 0x0E:
6108 case 0x0F:
6109 case 0x10:
6110 case 0x11:
6111 case 0x12:
6112 case 0x13:
6113 case 0x14:
6114 case 0x15:
6115 case 0x16:
6116 case 0x17:
6117 case 0x18:
6118 case 0x19:
6119 case 0x1A:
6120 case 0x1B:
6121 case 0x1C:
6122 case 0x1D:
6123 case 0x1E:
6124 case 0x1F:
6125 case ' ':
6126 case '!':
6127 case '"':
6128 case '#':
6129 case '$':
6130 case '%':
6131 case '&':
6132 case '\'':
6133 case '(':
6134 case ')':
6135 case '*':
6136 case '+':
6137 case ',':
6138 case '-':
6139 case '.':
6140 case '/':
6141 case ':':
6142 case ';':
6143 case '<':
6144 case '=':
6145 case '>':
6146 case '?':
6147 case '@':
6148 case '[':
6149 case ']':
6150 case '^':
6151 case '`':
6152 case '{':
6153 case '|':
6154 case '}':
6155 case '~':
6156 case 0x7F: goto yy455;
6157 case '\\': goto yy147;
6158 default: goto yy61;
6159 }
6160 yy455:
6161 #line 195 "src/parser_scan.re"
6162 { NEWTOKEN(PSI_T_IFNDEF); goto start; }
6163 #line 6164 "src/parser_scan.c"
6164 yy456:
6165 yyaccept = 3;
6166 yych = *(mrk = ++cur);
6167 switch (yych) {
6168 case 'E':
6169 case 'e': goto yy511;
6170 default: goto yy62;
6171 }
6172 yy457:
6173 yyaccept = 43;
6174 yych = *(mrk = ++cur);
6175 switch (yych) {
6176 case 0x00:
6177 case 0x01:
6178 case 0x02:
6179 case 0x03:
6180 case 0x04:
6181 case 0x05:
6182 case 0x06:
6183 case 0x07:
6184 case 0x08:
6185 case '\t':
6186 case '\n':
6187 case '\v':
6188 case '\f':
6189 case '\r':
6190 case 0x0E:
6191 case 0x0F:
6192 case 0x10:
6193 case 0x11:
6194 case 0x12:
6195 case 0x13:
6196 case 0x14:
6197 case 0x15:
6198 case 0x16:
6199 case 0x17:
6200 case 0x18:
6201 case 0x19:
6202 case 0x1A:
6203 case 0x1B:
6204 case 0x1C:
6205 case 0x1D:
6206 case 0x1E:
6207 case 0x1F:
6208 case ' ':
6209 case '!':
6210 case '"':
6211 case '#':
6212 case '$':
6213 case '%':
6214 case '&':
6215 case '\'':
6216 case '(':
6217 case ')':
6218 case '*':
6219 case '+':
6220 case ',':
6221 case '-':
6222 case '.':
6223 case '/':
6224 case ':':
6225 case ';':
6226 case '<':
6227 case '=':
6228 case '>':
6229 case '?':
6230 case '@':
6231 case '[':
6232 case ']':
6233 case '^':
6234 case '`':
6235 case '{':
6236 case '|':
6237 case '}':
6238 case '~':
6239 case 0x7F: goto yy458;
6240 case '\\': goto yy147;
6241 default: goto yy61;
6242 }
6243 yy458:
6244 #line 229 "src/parser_scan.re"
6245 { NEWTOKEN(PSI_T_INTVAL); goto start; }
6246 #line 6247 "src/parser_scan.c"
6247 yy459:
6248 yyaccept = 44;
6249 yych = *(mrk = ++cur);
6250 switch (yych) {
6251 case 0x00:
6252 case 0x01:
6253 case 0x02:
6254 case 0x03:
6255 case 0x04:
6256 case 0x05:
6257 case 0x06:
6258 case 0x07:
6259 case 0x08:
6260 case '\t':
6261 case '\n':
6262 case '\v':
6263 case '\f':
6264 case '\r':
6265 case 0x0E:
6266 case 0x0F:
6267 case 0x10:
6268 case 0x11:
6269 case 0x12:
6270 case 0x13:
6271 case 0x14:
6272 case 0x15:
6273 case 0x16:
6274 case 0x17:
6275 case 0x18:
6276 case 0x19:
6277 case 0x1A:
6278 case 0x1B:
6279 case 0x1C:
6280 case 0x1D:
6281 case 0x1E:
6282 case 0x1F:
6283 case ' ':
6284 case '!':
6285 case '"':
6286 case '#':
6287 case '$':
6288 case '%':
6289 case '&':
6290 case '\'':
6291 case '(':
6292 case ')':
6293 case '*':
6294 case '+':
6295 case ',':
6296 case '-':
6297 case '.':
6298 case '/':
6299 case ':':
6300 case ';':
6301 case '<':
6302 case '=':
6303 case '>':
6304 case '?':
6305 case '@':
6306 case '[':
6307 case ']':
6308 case '^':
6309 case '`':
6310 case '{':
6311 case '|':
6312 case '}':
6313 case '~':
6314 case 0x7F: goto yy460;
6315 case '\\': goto yy147;
6316 default: goto yy61;
6317 }
6318 yy460:
6319 #line 213 "src/parser_scan.re"
6320 { NEWTOKEN(PSI_T_OBJECT); goto start; }
6321 #line 6322 "src/parser_scan.c"
6322 yy461:
6323 yyaccept = 45;
6324 yych = *(mrk = ++cur);
6325 switch (yych) {
6326 case 0x00:
6327 case 0x01:
6328 case 0x02:
6329 case 0x03:
6330 case 0x04:
6331 case 0x05:
6332 case 0x06:
6333 case 0x07:
6334 case 0x08:
6335 case '\t':
6336 case '\n':
6337 case '\v':
6338 case '\f':
6339 case '\r':
6340 case 0x0E:
6341 case 0x0F:
6342 case 0x10:
6343 case 0x11:
6344 case 0x12:
6345 case 0x13:
6346 case 0x14:
6347 case 0x15:
6348 case 0x16:
6349 case 0x17:
6350 case 0x18:
6351 case 0x19:
6352 case 0x1A:
6353 case 0x1B:
6354 case 0x1C:
6355 case 0x1D:
6356 case 0x1E:
6357 case 0x1F:
6358 case ' ':
6359 case '!':
6360 case '"':
6361 case '#':
6362 case '$':
6363 case '%':
6364 case '&':
6365 case '\'':
6366 case '(':
6367 case ')':
6368 case '*':
6369 case '+':
6370 case ',':
6371 case '-':
6372 case '.':
6373 case '/':
6374 case ':':
6375 case ';':
6376 case '<':
6377 case '=':
6378 case '>':
6379 case '?':
6380 case '@':
6381 case '[':
6382 case ']':
6383 case '^':
6384 case '`':
6385 case '{':
6386 case '|':
6387 case '}':
6388 case '~':
6389 case 0x7F: goto yy462;
6390 case '\\': goto yy147;
6391 default: goto yy61;
6392 }
6393 yy462:
6394 #line 233 "src/parser_scan.re"
6395 { NEWTOKEN(PSI_T_OBJVAL); goto start; }
6396 #line 6397 "src/parser_scan.c"
6397 yy463:
6398 yyaccept = 3;
6399 yych = *(mrk = ++cur);
6400 switch (yych) {
6401 case 'L':
6402 case 'l': goto yy513;
6403 default: goto yy62;
6404 }
6405 yy464:
6406 yyaccept = 3;
6407 yych = *(mrk = ++cur);
6408 switch (yych) {
6409 case 'S':
6410 case 's': goto yy515;
6411 default: goto yy62;
6412 }
6413 yy465:
6414 yyaccept = 3;
6415 yych = *(mrk = ++cur);
6416 switch (yych) {
6417 case 'S':
6418 case 's': goto yy516;
6419 default: goto yy62;
6420 }
6421 yy466:
6422 yyaccept = 46;
6423 yych = *(mrk = ++cur);
6424 switch (yych) {
6425 case 0x00:
6426 case 0x01:
6427 case 0x02:
6428 case 0x03:
6429 case 0x04:
6430 case 0x05:
6431 case 0x06:
6432 case 0x07:
6433 case 0x08:
6434 case '\t':
6435 case '\n':
6436 case '\v':
6437 case '\f':
6438 case '\r':
6439 case 0x0E:
6440 case 0x0F:
6441 case 0x10:
6442 case 0x11:
6443 case 0x12:
6444 case 0x13:
6445 case 0x14:
6446 case 0x15:
6447 case 0x16:
6448 case 0x17:
6449 case 0x18:
6450 case 0x19:
6451 case 0x1A:
6452 case 0x1B:
6453 case 0x1C:
6454 case 0x1D:
6455 case 0x1E:
6456 case 0x1F:
6457 case ' ':
6458 case '!':
6459 case '"':
6460 case '#':
6461 case '$':
6462 case '%':
6463 case '&':
6464 case '\'':
6465 case '(':
6466 case ')':
6467 case '*':
6468 case '+':
6469 case ',':
6470 case '-':
6471 case '.':
6472 case '/':
6473 case ':':
6474 case ';':
6475 case '<':
6476 case '=':
6477 case '>':
6478 case '?':
6479 case '@':
6480 case '[':
6481 case ']':
6482 case '^':
6483 case '`':
6484 case '{':
6485 case '|':
6486 case '}':
6487 case '~':
6488 case 0x7F: goto yy467;
6489 case '\\': goto yy147;
6490 default: goto yy61;
6491 }
6492 yy467:
6493 #line 222 "src/parser_scan.re"
6494 { NEWTOKEN(PSI_T_RETURN); goto start; }
6495 #line 6496 "src/parser_scan.c"
6496 yy468:
6497 yyaccept = 47;
6498 yych = *(mrk = ++cur);
6499 switch (yych) {
6500 case 0x00:
6501 case 0x01:
6502 case 0x02:
6503 case 0x03:
6504 case 0x04:
6505 case 0x05:
6506 case 0x06:
6507 case 0x07:
6508 case 0x08:
6509 case '\t':
6510 case '\n':
6511 case '\v':
6512 case '\f':
6513 case '\r':
6514 case 0x0E:
6515 case 0x0F:
6516 case 0x10:
6517 case 0x11:
6518 case 0x12:
6519 case 0x13:
6520 case 0x14:
6521 case 0x15:
6522 case 0x16:
6523 case 0x17:
6524 case 0x18:
6525 case 0x19:
6526 case 0x1A:
6527 case 0x1B:
6528 case 0x1C:
6529 case 0x1D:
6530 case 0x1E:
6531 case 0x1F:
6532 case ' ':
6533 case '!':
6534 case '"':
6535 case '#':
6536 case '$':
6537 case '%':
6538 case '&':
6539 case '\'':
6540 case '(':
6541 case ')':
6542 case '*':
6543 case '+':
6544 case ',':
6545 case '-':
6546 case '.':
6547 case '/':
6548 case ':':
6549 case ';':
6550 case '<':
6551 case '=':
6552 case '>':
6553 case '?':
6554 case '@':
6555 case '[':
6556 case ']':
6557 case '^':
6558 case '`':
6559 case '{':
6560 case '|':
6561 case '}':
6562 case '~':
6563 case 0x7F: goto yy469;
6564 case '\\': goto yy147;
6565 default: goto yy61;
6566 }
6567 yy469:
6568 #line 215 "src/parser_scan.re"
6569 { NEWTOKEN(PSI_T_STATIC); goto start; }
6570 #line 6571 "src/parser_scan.c"
6571 yy470:
6572 yyaccept = 48;
6573 yych = *(mrk = ++cur);
6574 switch (yych) {
6575 case 0x00:
6576 case 0x01:
6577 case 0x02:
6578 case 0x03:
6579 case 0x04:
6580 case 0x05:
6581 case 0x06:
6582 case 0x07:
6583 case 0x08:
6584 case '\t':
6585 case '\n':
6586 case '\v':
6587 case '\f':
6588 case '\r':
6589 case 0x0E:
6590 case 0x0F:
6591 case 0x10:
6592 case 0x11:
6593 case 0x12:
6594 case 0x13:
6595 case 0x14:
6596 case 0x15:
6597 case 0x16:
6598 case 0x17:
6599 case 0x18:
6600 case 0x19:
6601 case 0x1A:
6602 case 0x1B:
6603 case 0x1C:
6604 case 0x1D:
6605 case 0x1E:
6606 case 0x1F:
6607 case ' ':
6608 case '!':
6609 case '"':
6610 case '#':
6611 case '$':
6612 case '%':
6613 case '&':
6614 case '\'':
6615 case '(':
6616 case ')':
6617 case '*':
6618 case '+':
6619 case ',':
6620 case '-':
6621 case '.':
6622 case '/':
6623 case ':':
6624 case ';':
6625 case '<':
6626 case '=':
6627 case '>':
6628 case '?':
6629 case '@':
6630 case '[':
6631 case ']':
6632 case '^':
6633 case '`':
6634 case '{':
6635 case '|':
6636 case '}':
6637 case '~':
6638 case 0x7F: goto yy471;
6639 case '\\': goto yy147;
6640 default: goto yy61;
6641 }
6642 yy471:
6643 #line 211 "src/parser_scan.re"
6644 { NEWTOKEN(PSI_T_STRING); goto start; }
6645 #line 6646 "src/parser_scan.c"
6646 yy472:
6647 yyaccept = 49;
6648 yych = *(mrk = ++cur);
6649 switch (yych) {
6650 case 0x00:
6651 case 0x01:
6652 case 0x02:
6653 case 0x03:
6654 case 0x04:
6655 case 0x05:
6656 case 0x06:
6657 case 0x07:
6658 case 0x08:
6659 case '\t':
6660 case '\n':
6661 case '\v':
6662 case '\f':
6663 case '\r':
6664 case 0x0E:
6665 case 0x0F:
6666 case 0x10:
6667 case 0x11:
6668 case 0x12:
6669 case 0x13:
6670 case 0x14:
6671 case 0x15:
6672 case 0x16:
6673 case 0x17:
6674 case 0x18:
6675 case 0x19:
6676 case 0x1A:
6677 case 0x1B:
6678 case 0x1C:
6679 case 0x1D:
6680 case 0x1E:
6681 case 0x1F:
6682 case ' ':
6683 case '!':
6684 case '"':
6685 case '#':
6686 case '$':
6687 case '%':
6688 case '&':
6689 case '\'':
6690 case '(':
6691 case ')':
6692 case '*':
6693 case '+':
6694 case ',':
6695 case '-':
6696 case '.':
6697 case '/':
6698 case ':':
6699 case ';':
6700 case '<':
6701 case '=':
6702 case '>':
6703 case '?':
6704 case '@':
6705 case '[':
6706 case ']':
6707 case '^':
6708 case '`':
6709 case '{':
6710 case '|':
6711 case '}':
6712 case '~':
6713 case 0x7F: goto yy473;
6714 case '\\': goto yy147;
6715 default: goto yy61;
6716 }
6717 yy473:
6718 #line 226 "src/parser_scan.re"
6719 { NEWTOKEN(PSI_T_STRLEN); goto start; }
6720 #line 6721 "src/parser_scan.c"
6721 yy474:
6722 yyaccept = 50;
6723 yych = *(mrk = ++cur);
6724 switch (yych) {
6725 case 0x00:
6726 case 0x01:
6727 case 0x02:
6728 case 0x03:
6729 case 0x04:
6730 case 0x05:
6731 case 0x06:
6732 case 0x07:
6733 case 0x08:
6734 case '\t':
6735 case '\n':
6736 case '\v':
6737 case '\f':
6738 case '\r':
6739 case 0x0E:
6740 case 0x0F:
6741 case 0x10:
6742 case 0x11:
6743 case 0x12:
6744 case 0x13:
6745 case 0x14:
6746 case 0x15:
6747 case 0x16:
6748 case 0x17:
6749 case 0x18:
6750 case 0x19:
6751 case 0x1A:
6752 case 0x1B:
6753 case 0x1C:
6754 case 0x1D:
6755 case 0x1E:
6756 case 0x1F:
6757 case ' ':
6758 case '!':
6759 case '"':
6760 case '#':
6761 case '$':
6762 case '%':
6763 case '&':
6764 case '\'':
6765 case '(':
6766 case ')':
6767 case '*':
6768 case '+':
6769 case ',':
6770 case '-':
6771 case '.':
6772 case '/':
6773 case ':':
6774 case ';':
6775 case '<':
6776 case '=':
6777 case '>':
6778 case '?':
6779 case '@':
6780 case '[':
6781 case ']':
6782 case '^':
6783 case '`':
6784 case '{':
6785 case '|':
6786 case '}':
6787 case '~':
6788 case 0x7F: goto yy475;
6789 case '\\': goto yy147;
6790 default: goto yy61;
6791 }
6792 yy475:
6793 #line 227 "src/parser_scan.re"
6794 { NEWTOKEN(PSI_T_STRVAL); goto start; }
6795 #line 6796 "src/parser_scan.c"
6796 yy476:
6797 yyaccept = 3;
6798 yych = *(mrk = ++cur);
6799 switch (yych) {
6800 case 'A':
6801 case 'a': goto yy517;
6802 default: goto yy62;
6803 }
6804 yy477:
6805 yyaccept = 3;
6806 yych = *(mrk = ++cur);
6807 switch (yych) {
6808 case 'L':
6809 case 'l': goto yy518;
6810 default: goto yy62;
6811 }
6812 yy478:
6813 yyaccept = 3;
6814 yych = *(mrk = ++cur);
6815 switch (yych) {
6816 case 'A':
6817 case 'a': goto yy520;
6818 default: goto yy62;
6819 }
6820 yy479:
6821 yyaccept = 51;
6822 yych = *(mrk = ++cur);
6823 switch (yych) {
6824 case 0x00:
6825 case 0x01:
6826 case 0x02:
6827 case 0x03:
6828 case 0x04:
6829 case 0x05:
6830 case 0x06:
6831 case 0x07:
6832 case 0x08:
6833 case '\t':
6834 case '\n':
6835 case '\v':
6836 case '\f':
6837 case '\r':
6838 case 0x0E:
6839 case 0x0F:
6840 case 0x10:
6841 case 0x11:
6842 case 0x12:
6843 case 0x13:
6844 case 0x14:
6845 case 0x15:
6846 case 0x16:
6847 case 0x17:
6848 case 0x18:
6849 case 0x19:
6850 case 0x1A:
6851 case 0x1B:
6852 case 0x1C:
6853 case 0x1D:
6854 case 0x1E:
6855 case 0x1F:
6856 case ' ':
6857 case '!':
6858 case '"':
6859 case '#':
6860 case '$':
6861 case '%':
6862 case '&':
6863 case '\'':
6864 case '(':
6865 case ')':
6866 case '*':
6867 case '+':
6868 case ',':
6869 case '-':
6870 case '.':
6871 case '/':
6872 case ':':
6873 case ';':
6874 case '<':
6875 case '=':
6876 case '>':
6877 case '?':
6878 case '@':
6879 case '[':
6880 case ']':
6881 case '^':
6882 case '`':
6883 case '{':
6884 case '|':
6885 case '}':
6886 case '~':
6887 case 0x7F: goto yy480;
6888 case '\\': goto yy147;
6889 default: goto yy61;
6890 }
6891 yy480:
6892 #line 240 "src/parser_scan.re"
6893 { NEWTOKEN(PSI_T_TO_INT); goto start; }
6894 #line 6895 "src/parser_scan.c"
6895 yy481:
6896 yyaccept = 3;
6897 yych = *(mrk = ++cur);
6898 switch (yych) {
6899 case 'E':
6900 case 'e': goto yy521;
6901 default: goto yy62;
6902 }
6903 yy482:
6904 yyaccept = 3;
6905 yych = *(mrk = ++cur);
6906 switch (yych) {
6907 case 'I':
6908 case 'i': goto yy522;
6909 default: goto yy62;
6910 }
6911 yy483:
6912 yyaccept = 3;
6913 yych = *(mrk = ++cur);
6914 switch (yych) {
6915 case 'G':
6916 case 'g': goto yy523;
6917 default: goto yy62;
6918 }
6919 yy484:
6920 yyaccept = 3;
6921 yych = *(mrk = ++cur);
6922 switch (yych) {
6923 case '_': goto yy525;
6924 default: goto yy62;
6925 }
6926 yy485:
6927 yyaccept = 3;
6928 yych = *(mrk = ++cur);
6929 switch (yych) {
6930 case 'i': goto yy526;
6931 default: goto yy62;
6932 }
6933 yy486:
6934 yyaccept = 3;
6935 yych = *(mrk = ++cur);
6936 switch (yych) {
6937 case 'n': goto yy527;
6938 default: goto yy62;
6939 }
6940 yy487:
6941 yyaccept = 3;
6942 yych = *(mrk = ++cur);
6943 switch (yych) {
6944 case 'r': goto yy528;
6945 default: goto yy62;
6946 }
6947 yy488:
6948 yyaccept = 52;
6949 yych = *(mrk = ++cur);
6950 switch (yych) {
6951 case 0x00:
6952 case 0x01:
6953 case 0x02:
6954 case 0x03:
6955 case 0x04:
6956 case 0x05:
6957 case 0x06:
6958 case 0x07:
6959 case 0x08:
6960 case '\t':
6961 case '\n':
6962 case '\v':
6963 case '\f':
6964 case '\r':
6965 case 0x0E:
6966 case 0x0F:
6967 case 0x10:
6968 case 0x11:
6969 case 0x12:
6970 case 0x13:
6971 case 0x14:
6972 case 0x15:
6973 case 0x16:
6974 case 0x17:
6975 case 0x18:
6976 case 0x19:
6977 case 0x1A:
6978 case 0x1B:
6979 case 0x1C:
6980 case 0x1D:
6981 case 0x1E:
6982 case 0x1F:
6983 case ' ':
6984 case '!':
6985 case '"':
6986 case '#':
6987 case '$':
6988 case '%':
6989 case '&':
6990 case '\'':
6991 case '(':
6992 case ')':
6993 case '*':
6994 case '+':
6995 case ',':
6996 case '-':
6997 case '.':
6998 case '/':
6999 case ':':
7000 case ';':
7001 case '<':
7002 case '=':
7003 case '>':
7004 case '?':
7005 case '@':
7006 case '[':
7007 case ']':
7008 case '^':
7009 case '`':
7010 case '{':
7011 case '|':
7012 case '}':
7013 case '~':
7014 case 0x7F: goto yy489;
7015 case '\\': goto yy147;
7016 default: goto yy61;
7017 }
7018 yy489:
7019 #line 190 "src/parser_scan.re"
7020 { NEWTOKEN(PSI_T_DOUBLE); goto start; }
7021 #line 7022 "src/parser_scan.c"
7022 yy490:
7023 yyaccept = 53;
7024 yych = *(mrk = ++cur);
7025 switch (yych) {
7026 case 0x00:
7027 case 0x01:
7028 case 0x02:
7029 case 0x03:
7030 case 0x04:
7031 case 0x05:
7032 case 0x06:
7033 case 0x07:
7034 case 0x08:
7035 case '\t':
7036 case '\n':
7037 case '\v':
7038 case '\f':
7039 case '\r':
7040 case 0x0E:
7041 case 0x0F:
7042 case 0x10:
7043 case 0x11:
7044 case 0x12:
7045 case 0x13:
7046 case 0x14:
7047 case 0x15:
7048 case 0x16:
7049 case 0x17:
7050 case 0x18:
7051 case 0x19:
7052 case 0x1A:
7053 case 0x1B:
7054 case 0x1C:
7055 case 0x1D:
7056 case 0x1E:
7057 case 0x1F:
7058 case ' ':
7059 case '!':
7060 case '"':
7061 case '#':
7062 case '$':
7063 case '%':
7064 case '&':
7065 case '\'':
7066 case '(':
7067 case ')':
7068 case '*':
7069 case '+':
7070 case ',':
7071 case '-':
7072 case '.':
7073 case '/':
7074 case ':':
7075 case ';':
7076 case '<':
7077 case '=':
7078 case '>':
7079 case '?':
7080 case '@':
7081 case '[':
7082 case ']':
7083 case '^':
7084 case '`':
7085 case '{':
7086 case '|':
7087 case '}':
7088 case '~':
7089 case 0x7F: goto yy491;
7090 case '\\': goto yy147;
7091 default: goto yy61;
7092 }
7093 yy491:
7094 #line 171 "src/parser_scan.re"
7095 { NEWTOKEN(PSI_T_CPP_INLINE); goto start; }
7096 #line 7097 "src/parser_scan.c"
7097 yy492:
7098 yyaccept = 54;
7099 yych = *(mrk = ++cur);
7100 switch (yych) {
7101 case 0x00:
7102 case 0x01:
7103 case 0x02:
7104 case 0x03:
7105 case 0x04:
7106 case 0x05:
7107 case 0x06:
7108 case 0x07:
7109 case 0x08:
7110 case '\t':
7111 case '\n':
7112 case '\v':
7113 case '\f':
7114 case '\r':
7115 case 0x0E:
7116 case 0x0F:
7117 case 0x10:
7118 case 0x11:
7119 case 0x12:
7120 case 0x13:
7121 case 0x14:
7122 case 0x15:
7123 case 0x16:
7124 case 0x17:
7125 case 0x18:
7126 case 0x19:
7127 case 0x1A:
7128 case 0x1B:
7129 case 0x1C:
7130 case 0x1D:
7131 case 0x1E:
7132 case 0x1F:
7133 case ' ':
7134 case '!':
7135 case '"':
7136 case '#':
7137 case '$':
7138 case '%':
7139 case '&':
7140 case '\'':
7141 case '(':
7142 case ')':
7143 case '*':
7144 case '+':
7145 case ',':
7146 case '-':
7147 case '.':
7148 case '/':
7149 case ':':
7150 case ';':
7151 case '<':
7152 case '=':
7153 case '>':
7154 case '?':
7155 case '@':
7156 case '[':
7157 case ']':
7158 case '^':
7159 case '`':
7160 case '{':
7161 case '|':
7162 case '}':
7163 case '~':
7164 case 0x7F: goto yy493;
7165 case '\\': goto yy147;
7166 default: goto yy529;
7167 }
7168 yy493:
7169 #line 169 "src/parser_scan.re"
7170 { NEWTOKEN(PSI_T_PRAGMA); goto start; }
7171 #line 7172 "src/parser_scan.c"
7172 yy494:
7173 yyaccept = 55;
7174 yych = *(mrk = ++cur);
7175 switch (yych) {
7176 case 0x00:
7177 case 0x01:
7178 case 0x02:
7179 case 0x03:
7180 case 0x04:
7181 case 0x05:
7182 case 0x06:
7183 case 0x07:
7184 case 0x08:
7185 case '\t':
7186 case '\n':
7187 case '\v':
7188 case '\f':
7189 case '\r':
7190 case 0x0E:
7191 case 0x0F:
7192 case 0x10:
7193 case 0x11:
7194 case 0x12:
7195 case 0x13:
7196 case 0x14:
7197 case 0x15:
7198 case 0x16:
7199 case 0x17:
7200 case 0x18:
7201 case 0x19:
7202 case 0x1A:
7203 case 0x1B:
7204 case 0x1C:
7205 case 0x1D:
7206 case 0x1E:
7207 case 0x1F:
7208 case ' ':
7209 case '!':
7210 case '"':
7211 case '#':
7212 case '$':
7213 case '%':
7214 case '&':
7215 case '\'':
7216 case '(':
7217 case ')':
7218 case '*':
7219 case '+':
7220 case ',':
7221 case '-':
7222 case '.':
7223 case '/':
7224 case ':':
7225 case ';':
7226 case '<':
7227 case '=':
7228 case '>':
7229 case '?':
7230 case '@':
7231 case '[':
7232 case ']':
7233 case '^':
7234 case '`':
7235 case '{':
7236 case '|':
7237 case '}':
7238 case '~':
7239 case 0x7F: goto yy495;
7240 case '\\': goto yy147;
7241 default: goto yy61;
7242 }
7243 yy495:
7244 #line 192 "src/parser_scan.re"
7245 { NEWTOKEN(PSI_T_SIGNED); goto start; }
7246 #line 7247 "src/parser_scan.c"
7247 yy496:
7248 yyaccept = 56;
7249 yych = *(mrk = ++cur);
7250 switch (yych) {
7251 case 0x00:
7252 case 0x01:
7253 case 0x02:
7254 case 0x03:
7255 case 0x04:
7256 case 0x05:
7257 case 0x06:
7258 case 0x07:
7259 case 0x08:
7260 case '\t':
7261 case '\n':
7262 case '\v':
7263 case '\f':
7264 case '\r':
7265 case 0x0E:
7266 case 0x0F:
7267 case 0x10:
7268 case 0x11:
7269 case 0x12:
7270 case 0x13:
7271 case 0x14:
7272 case 0x15:
7273 case 0x16:
7274 case 0x17:
7275 case 0x18:
7276 case 0x19:
7277 case 0x1A:
7278 case 0x1B:
7279 case 0x1C:
7280 case 0x1D:
7281 case 0x1E:
7282 case 0x1F:
7283 case ' ':
7284 case '!':
7285 case '"':
7286 case '#':
7287 case '$':
7288 case '%':
7289 case '&':
7290 case '\'':
7291 case '(':
7292 case ')':
7293 case '*':
7294 case '+':
7295 case ',':
7296 case '-':
7297 case '.':
7298 case '/':
7299 case ':':
7300 case ';':
7301 case '<':
7302 case '=':
7303 case '>':
7304 case '?':
7305 case '@':
7306 case '[':
7307 case ']':
7308 case '^':
7309 case '`':
7310 case '{':
7311 case '|':
7312 case '}':
7313 case '~':
7314 case 0x7F: goto yy497;
7315 case '\\': goto yy147;
7316 default: goto yy61;
7317 }
7318 yy497:
7319 #line 176 "src/parser_scan.re"
7320 { NEWTOKEN(PSI_T_SIZEOF); goto start; }
7321 #line 7322 "src/parser_scan.c"
7322 yy498:
7323 yyaccept = 57;
7324 yych = *(mrk = ++cur);
7325 switch (yych) {
7326 case 0x00:
7327 case 0x01:
7328 case 0x02:
7329 case 0x03:
7330 case 0x04:
7331 case 0x05:
7332 case 0x06:
7333 case 0x07:
7334 case 0x08:
7335 case '\t':
7336 case '\n':
7337 case '\v':
7338 case '\f':
7339 case '\r':
7340 case 0x0E:
7341 case 0x0F:
7342 case 0x10:
7343 case 0x11:
7344 case 0x12:
7345 case 0x13:
7346 case 0x14:
7347 case 0x15:
7348 case 0x16:
7349 case 0x17:
7350 case 0x18:
7351 case 0x19:
7352 case 0x1A:
7353 case 0x1B:
7354 case 0x1C:
7355 case 0x1D:
7356 case 0x1E:
7357 case 0x1F:
7358 case ' ':
7359 case '!':
7360 case '"':
7361 case '#':
7362 case '$':
7363 case '%':
7364 case '&':
7365 case '\'':
7366 case '(':
7367 case ')':
7368 case '*':
7369 case '+':
7370 case ',':
7371 case '-':
7372 case '.':
7373 case '/':
7374 case ':':
7375 case ';':
7376 case '<':
7377 case '=':
7378 case '>':
7379 case '?':
7380 case '@':
7381 case '[':
7382 case ']':
7383 case '^':
7384 case '`':
7385 case '{':
7386 case '|':
7387 case '}':
7388 case '~':
7389 case 0x7F: goto yy499;
7390 case '\\': goto yy147;
7391 default: goto yy61;
7392 }
7393 yy499:
7394 #line 179 "src/parser_scan.re"
7395 { NEWTOKEN(PSI_T_STRUCT); goto start; }
7396 #line 7397 "src/parser_scan.c"
7397 yy500:
7398 yyaccept = 3;
7399 yych = *(mrk = ++cur);
7400 switch (yych) {
7401 case 'f': goto yy531;
7402 default: goto yy62;
7403 }
7404 yy501:
7405 yyaccept = 3;
7406 yych = *(mrk = ++cur);
7407 switch (yych) {
7408 case 'e': goto yy533;
7409 default: goto yy62;
7410 }
7411 yy502:
7412 yyaccept = 3;
7413 yych = *(mrk = ++cur);
7414 switch (yych) {
7415 case 'l': goto yy534;
7416 default: goto yy62;
7417 }
7418 yy503:
7419 yyaccept = 58;
7420 yych = *(mrk = ++cur);
7421 switch (yych) {
7422 case 0x00:
7423 case 0x01:
7424 case 0x02:
7425 case 0x03:
7426 case 0x04:
7427 case 0x05:
7428 case 0x06:
7429 case 0x07:
7430 case 0x08:
7431 case '\t':
7432 case '\n':
7433 case '\v':
7434 case '\f':
7435 case '\r':
7436 case 0x0E:
7437 case 0x0F:
7438 case 0x10:
7439 case 0x11:
7440 case 0x12:
7441 case 0x13:
7442 case 0x14:
7443 case 0x15:
7444 case 0x16:
7445 case 0x17:
7446 case 0x18:
7447 case 0x19:
7448 case 0x1A:
7449 case 0x1B:
7450 case 0x1C:
7451 case 0x1D:
7452 case 0x1E:
7453 case 0x1F:
7454 case ' ':
7455 case '!':
7456 case '"':
7457 case '#':
7458 case '$':
7459 case '%':
7460 case '&':
7461 case '\'':
7462 case '(':
7463 case ')':
7464 case '*':
7465 case '+':
7466 case ',':
7467 case '-':
7468 case '.':
7469 case '/':
7470 case ':':
7471 case ';':
7472 case '<':
7473 case '=':
7474 case '>':
7475 case '?':
7476 case '@':
7477 case '[':
7478 case ']':
7479 case '^':
7480 case '`':
7481 case '{':
7482 case '|':
7483 case '}':
7484 case '~':
7485 case 0x7F: goto yy504;
7486 case '\\': goto yy147;
7487 default: goto yy61;
7488 }
7489 yy504:
7490 #line 231 "src/parser_scan.re"
7491 { NEWTOKEN(PSI_T_BOOLVAL); goto start; }
7492 #line 7493 "src/parser_scan.c"
7493 yy505:
7494 yyaccept = 3;
7495 yych = *(mrk = ++cur);
7496 switch (yych) {
7497 case 'E':
7498 case 'e': goto yy535;
7499 default: goto yy62;
7500 }
7501 yy506:
7502 yyaccept = 3;
7503 yych = *(mrk = ++cur);
7504 switch (yych) {
7505 case 'K':
7506 case 'k': goto yy537;
7507 default: goto yy62;
7508 }
7509 yy507:
7510 yyaccept = 59;
7511 yych = *(mrk = ++cur);
7512 switch (yych) {
7513 case 0x00:
7514 case 0x01:
7515 case 0x02:
7516 case 0x03:
7517 case 0x04:
7518 case 0x05:
7519 case 0x06:
7520 case 0x07:
7521 case 0x08:
7522 case '\t':
7523 case '\n':
7524 case '\v':
7525 case '\f':
7526 case '\r':
7527 case 0x0E:
7528 case 0x0F:
7529 case 0x10:
7530 case 0x11:
7531 case 0x12:
7532 case 0x13:
7533 case 0x14:
7534 case 0x15:
7535 case 0x16:
7536 case 0x17:
7537 case 0x18:
7538 case 0x19:
7539 case 0x1A:
7540 case 0x1B:
7541 case 0x1C:
7542 case 0x1D:
7543 case 0x1E:
7544 case 0x1F:
7545 case ' ':
7546 case '!':
7547 case '"':
7548 case '#':
7549 case '$':
7550 case '%':
7551 case '&':
7552 case '\'':
7553 case '(':
7554 case ')':
7555 case '*':
7556 case '+':
7557 case ',':
7558 case '-':
7559 case '.':
7560 case '/':
7561 case ':':
7562 case ';':
7563 case '<':
7564 case '=':
7565 case '>':
7566 case '?':
7567 case '@':
7568 case '[':
7569 case ']':
7570 case '^':
7571 case '`':
7572 case '{':
7573 case '|':
7574 case '}':
7575 case '~':
7576 case 0x7F: goto yy508;
7577 case '\\': goto yy147;
7578 default: goto yy61;
7579 }
7580 yy508:
7581 #line 200 "src/parser_scan.re"
7582 { NEWTOKEN(PSI_T_DEFINED); goto start; }
7583 #line 7584 "src/parser_scan.c"
7584 yy509:
7585 yyaccept = 3;
7586 yych = *(mrk = ++cur);
7587 switch (yych) {
7588 case 'L':
7589 case 'l': goto yy539;
7590 default: goto yy62;
7591 }
7592 yy510:
7593 yyaccept = 3;
7594 yych = *(mrk = ++cur);
7595 switch (yych) {
7596 case 'N':
7597 case 'n': goto yy541;
7598 default: goto yy62;
7599 }
7600 yy511:
7601 yyaccept = 60;
7602 yych = *(mrk = ++cur);
7603 switch (yych) {
7604 case 0x00:
7605 case 0x01:
7606 case 0x02:
7607 case 0x03:
7608 case 0x04:
7609 case 0x05:
7610 case 0x06:
7611 case 0x07:
7612 case 0x08:
7613 case '\t':
7614 case '\n':
7615 case '\v':
7616 case '\f':
7617 case '\r':
7618 case 0x0E:
7619 case 0x0F:
7620 case 0x10:
7621 case 0x11:
7622 case 0x12:
7623 case 0x13:
7624 case 0x14:
7625 case 0x15:
7626 case 0x16:
7627 case 0x17:
7628 case 0x18:
7629 case 0x19:
7630 case 0x1A:
7631 case 0x1B:
7632 case 0x1C:
7633 case 0x1D:
7634 case 0x1E:
7635 case 0x1F:
7636 case ' ':
7637 case '!':
7638 case '"':
7639 case '#':
7640 case '$':
7641 case '%':
7642 case '&':
7643 case '\'':
7644 case '(':
7645 case ')':
7646 case '*':
7647 case '+':
7648 case ',':
7649 case '-':
7650 case '.':
7651 case '/':
7652 case ':':
7653 case ';':
7654 case '<':
7655 case '=':
7656 case '>':
7657 case '?':
7658 case '@':
7659 case '[':
7660 case ']':
7661 case '^':
7662 case '`':
7663 case '{':
7664 case '|':
7665 case '}':
7666 case '~':
7667 case 0x7F: goto yy512;
7668 case '\\': goto yy147;
7669 case '_': goto yy543;
7670 default: goto yy61;
7671 }
7672 yy512:
7673 #line 204 "src/parser_scan.re"
7674 { NEWTOKEN(PSI_T_INCLUDE); goto start; }
7675 #line 7676 "src/parser_scan.c"
7676 yy513:
7677 yyaccept = 61;
7678 yych = *(mrk = ++cur);
7679 switch (yych) {
7680 case 0x00:
7681 case 0x01:
7682 case 0x02:
7683 case 0x03:
7684 case 0x04:
7685 case 0x05:
7686 case 0x06:
7687 case 0x07:
7688 case 0x08:
7689 case '\t':
7690 case '\n':
7691 case '\v':
7692 case '\f':
7693 case '\r':
7694 case 0x0E:
7695 case 0x0F:
7696 case 0x10:
7697 case 0x11:
7698 case 0x12:
7699 case 0x13:
7700 case 0x14:
7701 case 0x15:
7702 case 0x16:
7703 case 0x17:
7704 case 0x18:
7705 case 0x19:
7706 case 0x1A:
7707 case 0x1B:
7708 case 0x1C:
7709 case 0x1D:
7710 case 0x1E:
7711 case 0x1F:
7712 case ' ':
7713 case '!':
7714 case '"':
7715 case '#':
7716 case '$':
7717 case '%':
7718 case '&':
7719 case '\'':
7720 case '(':
7721 case ')':
7722 case '*':
7723 case '+':
7724 case ',':
7725 case '-':
7726 case '.':
7727 case '/':
7728 case ':':
7729 case ';':
7730 case '<':
7731 case '=':
7732 case '>':
7733 case '?':
7734 case '@':
7735 case '[':
7736 case ']':
7737 case '^':
7738 case '`':
7739 case '{':
7740 case '|':
7741 case '}':
7742 case '~':
7743 case 0x7F: goto yy514;
7744 case '\\': goto yy147;
7745 default: goto yy61;
7746 }
7747 yy514:
7748 #line 228 "src/parser_scan.re"
7749 { NEWTOKEN(PSI_T_PATHVAL); goto start; }
7750 #line 7751 "src/parser_scan.c"
7751 yy515:
7752 yyaccept = 3;
7753 yych = *(mrk = ++cur);
7754 switch (yych) {
7755 case 'S':
7756 case 's': goto yy544;
7757 default: goto yy62;
7758 }
7759 yy516:
7760 yyaccept = 3;
7761 yych = *(mrk = ++cur);
7762 switch (yych) {
7763 case 'E':
7764 case 'e': goto yy545;
7765 default: goto yy62;
7766 }
7767 yy517:
7768 yyaccept = 3;
7769 yych = *(mrk = ++cur);
7770 switch (yych) {
7771 case 'Y':
7772 case 'y': goto yy546;
7773 default: goto yy62;
7774 }
7775 yy518:
7776 yyaccept = 62;
7777 yych = *(mrk = ++cur);
7778 switch (yych) {
7779 case 0x00:
7780 case 0x01:
7781 case 0x02:
7782 case 0x03:
7783 case 0x04:
7784 case 0x05:
7785 case 0x06:
7786 case 0x07:
7787 case 0x08:
7788 case '\t':
7789 case '\n':
7790 case '\v':
7791 case '\f':
7792 case '\r':
7793 case 0x0E:
7794 case 0x0F:
7795 case 0x10:
7796 case 0x11:
7797 case 0x12:
7798 case 0x13:
7799 case 0x14:
7800 case 0x15:
7801 case 0x16:
7802 case 0x17:
7803 case 0x18:
7804 case 0x19:
7805 case 0x1A:
7806 case 0x1B:
7807 case 0x1C:
7808 case 0x1D:
7809 case 0x1E:
7810 case 0x1F:
7811 case ' ':
7812 case '!':
7813 case '"':
7814 case '#':
7815 case '$':
7816 case '%':
7817 case '&':
7818 case '\'':
7819 case '(':
7820 case ')':
7821 case '*':
7822 case '+':
7823 case ',':
7824 case '-':
7825 case '.':
7826 case '/':
7827 case ':':
7828 case ';':
7829 case '<':
7830 case '=':
7831 case '>':
7832 case '?':
7833 case '@':
7834 case '[':
7835 case ']':
7836 case '^':
7837 case '`':
7838 case '{':
7839 case '|':
7840 case '}':
7841 case '~':
7842 case 0x7F: goto yy519;
7843 case '\\': goto yy147;
7844 default: goto yy61;
7845 }
7846 yy519:
7847 #line 242 "src/parser_scan.re"
7848 { NEWTOKEN(PSI_T_TO_BOOL); goto start; }
7849 #line 7850 "src/parser_scan.c"
7850 yy520:
7851 yyaccept = 3;
7852 yych = *(mrk = ++cur);
7853 switch (yych) {
7854 case 'T':
7855 case 't': goto yy548;
7856 default: goto yy62;
7857 }
7858 yy521:
7859 yyaccept = 3;
7860 yych = *(mrk = ++cur);
7861 switch (yych) {
7862 case 'C':
7863 case 'c': goto yy550;
7864 default: goto yy62;
7865 }
7866 yy522:
7867 yyaccept = 3;
7868 yych = *(mrk = ++cur);
7869 switch (yych) {
7870 case 'N':
7871 case 'n': goto yy551;
7872 default: goto yy62;
7873 }
7874 yy523:
7875 yyaccept = 63;
7876 yych = *(mrk = ++cur);
7877 switch (yych) {
7878 case 0x00:
7879 case 0x01:
7880 case 0x02:
7881 case 0x03:
7882 case 0x04:
7883 case 0x05:
7884 case 0x06:
7885 case 0x07:
7886 case 0x08:
7887 case '\t':
7888 case '\n':
7889 case '\v':
7890 case '\f':
7891 case '\r':
7892 case 0x0E:
7893 case 0x0F:
7894 case 0x10:
7895 case 0x11:
7896 case 0x12:
7897 case 0x13:
7898 case 0x14:
7899 case 0x15:
7900 case 0x16:
7901 case 0x17:
7902 case 0x18:
7903 case 0x19:
7904 case 0x1A:
7905 case 0x1B:
7906 case 0x1C:
7907 case 0x1D:
7908 case 0x1E:
7909 case 0x1F:
7910 case ' ':
7911 case '!':
7912 case '"':
7913 case '#':
7914 case '$':
7915 case '%':
7916 case '&':
7917 case '\'':
7918 case '(':
7919 case ')':
7920 case '*':
7921 case '+':
7922 case ',':
7923 case '-':
7924 case '.':
7925 case '/':
7926 case ':':
7927 case ';':
7928 case '<':
7929 case '=':
7930 case '>':
7931 case '?':
7932 case '@':
7933 case '[':
7934 case ']':
7935 case '^':
7936 case '`':
7937 case '{':
7938 case '|':
7939 case '}':
7940 case '~':
7941 case 0x7F: goto yy524;
7942 case '\\': goto yy147;
7943 default: goto yy61;
7944 }
7945 yy524:
7946 #line 202 "src/parser_scan.re"
7947 { NEWTOKEN(PSI_T_WARNING); goto start; }
7948 #line 7949 "src/parser_scan.c"
7949 yy525:
7950 yyaccept = 34;
7951 yych = *(mrk = ++cur);
7952 switch (yych) {
7953 case 0x00:
7954 case 0x01:
7955 case 0x02:
7956 case 0x03:
7957 case 0x04:
7958 case 0x05:
7959 case 0x06:
7960 case 0x07:
7961 case 0x08:
7962 case '\t':
7963 case '\n':
7964 case '\v':
7965 case '\f':
7966 case '\r':
7967 case 0x0E:
7968 case 0x0F:
7969 case 0x10:
7970 case 0x11:
7971 case 0x12:
7972 case 0x13:
7973 case 0x14:
7974 case 0x15:
7975 case 0x16:
7976 case 0x17:
7977 case 0x18:
7978 case 0x19:
7979 case 0x1A:
7980 case 0x1B:
7981 case 0x1C:
7982 case 0x1D:
7983 case 0x1E:
7984 case 0x1F:
7985 case ' ':
7986 case '!':
7987 case '"':
7988 case '#':
7989 case '$':
7990 case '%':
7991 case '&':
7992 case '\'':
7993 case '(':
7994 case ')':
7995 case '*':
7996 case '+':
7997 case ',':
7998 case '-':
7999 case '.':
8000 case '/':
8001 case ':':
8002 case ';':
8003 case '<':
8004 case '=':
8005 case '>':
8006 case '?':
8007 case '@':
8008 case '[':
8009 case ']':
8010 case '^':
8011 case '`':
8012 case '{':
8013 case '|':
8014 case '}':
8015 case '~':
8016 case 0x7F: goto yy422;
8017 case '\\': goto yy147;
8018 default: goto yy61;
8019 }
8020 yy526:
8021 yyaccept = 3;
8022 yych = *(mrk = ++cur);
8023 switch (yych) {
8024 case 'b': goto yy552;
8025 default: goto yy62;
8026 }
8027 yy527:
8028 yyaccept = 3;
8029 yych = *(mrk = ++cur);
8030 switch (yych) {
8031 case 's': goto yy553;
8032 default: goto yy62;
8033 }
8034 yy528:
8035 yyaccept = 3;
8036 yych = *(mrk = ++cur);
8037 switch (yych) {
8038 case 'i': goto yy554;
8039 default: goto yy62;
8040 }
8041 yy529:
8042 yyaccept = 3;
8043 mrk = ++cur;
8044 if (lim <= cur) CHECKEOF();;
8045 yych = *cur;
8046 switch (yych) {
8047 case 0x00:
8048 case 0x01:
8049 case 0x02:
8050 case 0x03:
8051 case 0x04:
8052 case 0x05:
8053 case 0x06:
8054 case 0x07:
8055 case 0x08:
8056 case '\t':
8057 case '\n':
8058 case '\v':
8059 case '\f':
8060 case '\r':
8061 case 0x0E:
8062 case 0x0F:
8063 case 0x10:
8064 case 0x11:
8065 case 0x12:
8066 case 0x13:
8067 case 0x14:
8068 case 0x15:
8069 case 0x16:
8070 case 0x17:
8071 case 0x18:
8072 case 0x19:
8073 case 0x1A:
8074 case 0x1B:
8075 case 0x1C:
8076 case 0x1D:
8077 case 0x1E:
8078 case 0x1F:
8079 case ' ':
8080 case '!':
8081 case '"':
8082 case '#':
8083 case '$':
8084 case '%':
8085 case '&':
8086 case '\'':
8087 case '(':
8088 case ')':
8089 case '*':
8090 case '+':
8091 case ',':
8092 case '-':
8093 case '.':
8094 case '/':
8095 case ':':
8096 case ';':
8097 case '<':
8098 case '=':
8099 case '>':
8100 case '?':
8101 case '@':
8102 case '[':
8103 case ']':
8104 case '^':
8105 case '`':
8106 case '{':
8107 case '|':
8108 case '}':
8109 case '~':
8110 case 0x7F: goto yy55;
8111 case '\\': goto yy147;
8112 case 'o': goto yy555;
8113 default: goto yy529;
8114 }
8115 yy531:
8116 yyaccept = 64;
8117 yych = *(mrk = ++cur);
8118 switch (yych) {
8119 case 0x00:
8120 case 0x01:
8121 case 0x02:
8122 case 0x03:
8123 case 0x04:
8124 case 0x05:
8125 case 0x06:
8126 case 0x07:
8127 case 0x08:
8128 case '\t':
8129 case '\n':
8130 case '\v':
8131 case '\f':
8132 case '\r':
8133 case 0x0E:
8134 case 0x0F:
8135 case 0x10:
8136 case 0x11:
8137 case 0x12:
8138 case 0x13:
8139 case 0x14:
8140 case 0x15:
8141 case 0x16:
8142 case 0x17:
8143 case 0x18:
8144 case 0x19:
8145 case 0x1A:
8146 case 0x1B:
8147 case 0x1C:
8148 case 0x1D:
8149 case 0x1E:
8150 case 0x1F:
8151 case ' ':
8152 case '!':
8153 case '"':
8154 case '#':
8155 case '$':
8156 case '%':
8157 case '&':
8158 case '\'':
8159 case '(':
8160 case ')':
8161 case '*':
8162 case '+':
8163 case ',':
8164 case '-':
8165 case '.':
8166 case '/':
8167 case ':':
8168 case ';':
8169 case '<':
8170 case '=':
8171 case '>':
8172 case '?':
8173 case '@':
8174 case '[':
8175 case ']':
8176 case '^':
8177 case '`':
8178 case '{':
8179 case '|':
8180 case '}':
8181 case '~':
8182 case 0x7F: goto yy532;
8183 case '\\': goto yy147;
8184 default: goto yy61;
8185 }
8186 yy532:
8187 #line 178 "src/parser_scan.re"
8188 { NEWTOKEN(PSI_T_TYPEDEF); goto start; }
8189 #line 8190 "src/parser_scan.c"
8190 yy533:
8191 yyaccept = 3;
8192 yych = *(mrk = ++cur);
8193 switch (yych) {
8194 case 'd': goto yy557;
8195 default: goto yy62;
8196 }
8197 yy534:
8198 yyaccept = 3;
8199 yych = *(mrk = ++cur);
8200 switch (yych) {
8201 case 'e': goto yy559;
8202 default: goto yy62;
8203 }
8204 yy535:
8205 yyaccept = 65;
8206 yych = *(mrk = ++cur);
8207 switch (yych) {
8208 case 0x00:
8209 case 0x01:
8210 case 0x02:
8211 case 0x03:
8212 case 0x04:
8213 case 0x05:
8214 case 0x06:
8215 case 0x07:
8216 case 0x08:
8217 case '\t':
8218 case '\n':
8219 case '\v':
8220 case '\f':
8221 case '\r':
8222 case 0x0E:
8223 case 0x0F:
8224 case 0x10:
8225 case 0x11:
8226 case 0x12:
8227 case 0x13:
8228 case 0x14:
8229 case 0x15:
8230 case 0x16:
8231 case 0x17:
8232 case 0x18:
8233 case 0x19:
8234 case 0x1A:
8235 case 0x1B:
8236 case 0x1C:
8237 case 0x1D:
8238 case 0x1E:
8239 case 0x1F:
8240 case ' ':
8241 case '!':
8242 case '"':
8243 case '#':
8244 case '$':
8245 case '%':
8246 case '&':
8247 case '\'':
8248 case '(':
8249 case ')':
8250 case '*':
8251 case '+':
8252 case ',':
8253 case '-':
8254 case '.':
8255 case '/':
8256 case ':':
8257 case ';':
8258 case '<':
8259 case '=':
8260 case '>':
8261 case '?':
8262 case '@':
8263 case '[':
8264 case ']':
8265 case '^':
8266 case '`':
8267 case '{':
8268 case '|':
8269 case '}':
8270 case '~':
8271 case 0x7F: goto yy536;
8272 case '\\': goto yy147;
8273 default: goto yy61;
8274 }
8275 yy536:
8276 #line 210 "src/parser_scan.re"
8277 { NEWTOKEN(PSI_T_CALLABLE); goto start; }
8278 #line 8279 "src/parser_scan.c"
8279 yy537:
8280 yyaccept = 66;
8281 yych = *(mrk = ++cur);
8282 switch (yych) {
8283 case 0x00:
8284 case 0x01:
8285 case 0x02:
8286 case 0x03:
8287 case 0x04:
8288 case 0x05:
8289 case 0x06:
8290 case 0x07:
8291 case 0x08:
8292 case '\t':
8293 case '\n':
8294 case '\v':
8295 case '\f':
8296 case '\r':
8297 case 0x0E:
8298 case 0x0F:
8299 case 0x10:
8300 case 0x11:
8301 case 0x12:
8302 case 0x13:
8303 case 0x14:
8304 case 0x15:
8305 case 0x16:
8306 case 0x17:
8307 case 0x18:
8308 case 0x19:
8309 case 0x1A:
8310 case 0x1B:
8311 case 0x1C:
8312 case 0x1D:
8313 case 0x1E:
8314 case 0x1F:
8315 case ' ':
8316 case '!':
8317 case '"':
8318 case '#':
8319 case '$':
8320 case '%':
8321 case '&':
8322 case '\'':
8323 case '(':
8324 case ')':
8325 case '*':
8326 case '+':
8327 case ',':
8328 case '-':
8329 case '.':
8330 case '/':
8331 case ':':
8332 case ';':
8333 case '<':
8334 case '=':
8335 case '>':
8336 case '?':
8337 case '@':
8338 case '[':
8339 case ']':
8340 case '^':
8341 case '`':
8342 case '{':
8343 case '|':
8344 case '}':
8345 case '~':
8346 case 0x7F: goto yy538;
8347 case '\\': goto yy147;
8348 default: goto yy61;
8349 }
8350 yy538:
8351 #line 214 "src/parser_scan.re"
8352 { NEWTOKEN(PSI_T_CALLBACK); goto start; }
8353 #line 8354 "src/parser_scan.c"
8354 yy539:
8355 yyaccept = 67;
8356 yych = *(mrk = ++cur);
8357 switch (yych) {
8358 case 0x00:
8359 case 0x01:
8360 case 0x02:
8361 case 0x03:
8362 case 0x04:
8363 case 0x05:
8364 case 0x06:
8365 case 0x07:
8366 case 0x08:
8367 case '\t':
8368 case '\n':
8369 case '\v':
8370 case '\f':
8371 case '\r':
8372 case 0x0E:
8373 case 0x0F:
8374 case 0x10:
8375 case 0x11:
8376 case 0x12:
8377 case 0x13:
8378 case 0x14:
8379 case 0x15:
8380 case 0x16:
8381 case 0x17:
8382 case 0x18:
8383 case 0x19:
8384 case 0x1A:
8385 case 0x1B:
8386 case 0x1C:
8387 case 0x1D:
8388 case 0x1E:
8389 case 0x1F:
8390 case ' ':
8391 case '!':
8392 case '"':
8393 case '#':
8394 case '$':
8395 case '%':
8396 case '&':
8397 case '\'':
8398 case '(':
8399 case ')':
8400 case '*':
8401 case '+':
8402 case ',':
8403 case '-':
8404 case '.':
8405 case '/':
8406 case ':':
8407 case ';':
8408 case '<':
8409 case '=':
8410 case '>':
8411 case '?':
8412 case '@':
8413 case '[':
8414 case ']':
8415 case '^':
8416 case '`':
8417 case '{':
8418 case '|':
8419 case '}':
8420 case '~':
8421 case 0x7F: goto yy540;
8422 case '\\': goto yy147;
8423 default: goto yy61;
8424 }
8425 yy540:
8426 #line 230 "src/parser_scan.re"
8427 { NEWTOKEN(PSI_T_FLOATVAL); goto start; }
8428 #line 8429 "src/parser_scan.c"
8429 yy541:
8430 yyaccept = 68;
8431 yych = *(mrk = ++cur);
8432 switch (yych) {
8433 case 0x00:
8434 case 0x01:
8435 case 0x02:
8436 case 0x03:
8437 case 0x04:
8438 case 0x05:
8439 case 0x06:
8440 case 0x07:
8441 case 0x08:
8442 case '\t':
8443 case '\n':
8444 case '\v':
8445 case '\f':
8446 case '\r':
8447 case 0x0E:
8448 case 0x0F:
8449 case 0x10:
8450 case 0x11:
8451 case 0x12:
8452 case 0x13:
8453 case 0x14:
8454 case 0x15:
8455 case 0x16:
8456 case 0x17:
8457 case 0x18:
8458 case 0x19:
8459 case 0x1A:
8460 case 0x1B:
8461 case 0x1C:
8462 case 0x1D:
8463 case 0x1E:
8464 case 0x1F:
8465 case ' ':
8466 case '!':
8467 case '"':
8468 case '#':
8469 case '$':
8470 case '%':
8471 case '&':
8472 case '\'':
8473 case '(':
8474 case ')':
8475 case '*':
8476 case '+':
8477 case ',':
8478 case '-':
8479 case '.':
8480 case '/':
8481 case ':':
8482 case ';':
8483 case '<':
8484 case '=':
8485 case '>':
8486 case '?':
8487 case '@':
8488 case '[':
8489 case ']':
8490 case '^':
8491 case '`':
8492 case '{':
8493 case '|':
8494 case '}':
8495 case '~':
8496 case 0x7F: goto yy542;
8497 case '\\': goto yy147;
8498 default: goto yy61;
8499 }
8500 yy542:
8501 #line 216 "src/parser_scan.re"
8502 { NEWTOKEN(PSI_T_FUNCTION); goto start; }
8503 #line 8504 "src/parser_scan.c"
8504 yy543:
8505 yyaccept = 3;
8506 yych = *(mrk = ++cur);
8507 switch (yych) {
8508 case 'N':
8509 case 'n': goto yy561;
8510 default: goto yy62;
8511 }
8512 yy544:
8513 yyaccept = 3;
8514 yych = *(mrk = ++cur);
8515 switch (yych) {
8516 case 'E':
8517 case 'e': goto yy562;
8518 default: goto yy62;
8519 }
8520 yy545:
8521 yyaccept = 3;
8522 yych = *(mrk = ++cur);
8523 switch (yych) {
8524 case 'R':
8525 case 'r': goto yy563;
8526 default: goto yy62;
8527 }
8528 yy546:
8529 yyaccept = 69;
8530 yych = *(mrk = ++cur);
8531 switch (yych) {
8532 case 0x00:
8533 case 0x01:
8534 case 0x02:
8535 case 0x03:
8536 case 0x04:
8537 case 0x05:
8538 case 0x06:
8539 case 0x07:
8540 case 0x08:
8541 case '\t':
8542 case '\n':
8543 case '\v':
8544 case '\f':
8545 case '\r':
8546 case 0x0E:
8547 case 0x0F:
8548 case 0x10:
8549 case 0x11:
8550 case 0x12:
8551 case 0x13:
8552 case 0x14:
8553 case 0x15:
8554 case 0x16:
8555 case 0x17:
8556 case 0x18:
8557 case 0x19:
8558 case 0x1A:
8559 case 0x1B:
8560 case 0x1C:
8561 case 0x1D:
8562 case 0x1E:
8563 case 0x1F:
8564 case ' ':
8565 case '!':
8566 case '"':
8567 case '#':
8568 case '$':
8569 case '%':
8570 case '&':
8571 case '\'':
8572 case '(':
8573 case ')':
8574 case '*':
8575 case '+':
8576 case ',':
8577 case '-':
8578 case '.':
8579 case '/':
8580 case ':':
8581 case ';':
8582 case '<':
8583 case '=':
8584 case '>':
8585 case '?':
8586 case '@':
8587 case '[':
8588 case ']':
8589 case '^':
8590 case '`':
8591 case '{':
8592 case '|':
8593 case '}':
8594 case '~':
8595 case 0x7F: goto yy547;
8596 case '\\': goto yy147;
8597 default: goto yy61;
8598 }
8599 yy547:
8600 #line 238 "src/parser_scan.re"
8601 { NEWTOKEN(PSI_T_TO_ARRAY); goto start; }
8602 #line 8603 "src/parser_scan.c"
8603 yy548:
8604 yyaccept = 70;
8605 yych = *(mrk = ++cur);
8606 switch (yych) {
8607 case 0x00:
8608 case 0x01:
8609 case 0x02:
8610 case 0x03:
8611 case 0x04:
8612 case 0x05:
8613 case 0x06:
8614 case 0x07:
8615 case 0x08:
8616 case '\t':
8617 case '\n':
8618 case '\v':
8619 case '\f':
8620 case '\r':
8621 case 0x0E:
8622 case 0x0F:
8623 case 0x10:
8624 case 0x11:
8625 case 0x12:
8626 case 0x13:
8627 case 0x14:
8628 case 0x15:
8629 case 0x16:
8630 case 0x17:
8631 case 0x18:
8632 case 0x19:
8633 case 0x1A:
8634 case 0x1B:
8635 case 0x1C:
8636 case 0x1D:
8637 case 0x1E:
8638 case 0x1F:
8639 case ' ':
8640 case '!':
8641 case '"':
8642 case '#':
8643 case '$':
8644 case '%':
8645 case '&':
8646 case '\'':
8647 case '(':
8648 case ')':
8649 case '*':
8650 case '+':
8651 case ',':
8652 case '-':
8653 case '.':
8654 case '/':
8655 case ':':
8656 case ';':
8657 case '<':
8658 case '=':
8659 case '>':
8660 case '?':
8661 case '@':
8662 case '[':
8663 case ']':
8664 case '^':
8665 case '`':
8666 case '{':
8667 case '|':
8668 case '}':
8669 case '~':
8670 case 0x7F: goto yy549;
8671 case '\\': goto yy147;
8672 default: goto yy61;
8673 }
8674 yy549:
8675 #line 241 "src/parser_scan.re"
8676 { NEWTOKEN(PSI_T_TO_FLOAT); goto start; }
8677 #line 8678 "src/parser_scan.c"
8678 yy550:
8679 yyaccept = 3;
8680 yych = *(mrk = ++cur);
8681 switch (yych) {
8682 case 'T':
8683 case 't': goto yy564;
8684 default: goto yy62;
8685 }
8686 yy551:
8687 yyaccept = 3;
8688 yych = *(mrk = ++cur);
8689 switch (yych) {
8690 case 'G':
8691 case 'g': goto yy566;
8692 default: goto yy62;
8693 }
8694 yy552:
8695 yyaccept = 3;
8696 yych = *(mrk = ++cur);
8697 switch (yych) {
8698 case 'u': goto yy568;
8699 default: goto yy62;
8700 }
8701 yy553:
8702 yyaccept = 3;
8703 yych = *(mrk = ++cur);
8704 switch (yych) {
8705 case 'i': goto yy569;
8706 default: goto yy62;
8707 }
8708 yy554:
8709 yyaccept = 3;
8710 yych = *(mrk = ++cur);
8711 switch (yych) {
8712 case 'c': goto yy570;
8713 default: goto yy62;
8714 }
8715 yy555:
8716 yyaccept = 3;
8717 mrk = ++cur;
8718 if (lim <= cur) CHECKEOF();;
8719 yych = *cur;
8720 switch (yych) {
8721 case 0x00:
8722 case 0x01:
8723 case 0x02:
8724 case 0x03:
8725 case 0x04:
8726 case 0x05:
8727 case 0x06:
8728 case 0x07:
8729 case 0x08:
8730 case '\t':
8731 case '\n':
8732 case '\v':
8733 case '\f':
8734 case '\r':
8735 case 0x0E:
8736 case 0x0F:
8737 case 0x10:
8738 case 0x11:
8739 case 0x12:
8740 case 0x13:
8741 case 0x14:
8742 case 0x15:
8743 case 0x16:
8744 case 0x17:
8745 case 0x18:
8746 case 0x19:
8747 case 0x1A:
8748 case 0x1B:
8749 case 0x1C:
8750 case 0x1D:
8751 case 0x1E:
8752 case 0x1F:
8753 case ' ':
8754 case '!':
8755 case '"':
8756 case '#':
8757 case '$':
8758 case '%':
8759 case '&':
8760 case '\'':
8761 case '(':
8762 case ')':
8763 case '*':
8764 case '+':
8765 case ',':
8766 case '-':
8767 case '.':
8768 case '/':
8769 case ':':
8770 case ';':
8771 case '<':
8772 case '=':
8773 case '>':
8774 case '?':
8775 case '@':
8776 case '[':
8777 case ']':
8778 case '^':
8779 case '`':
8780 case '{':
8781 case '|':
8782 case '}':
8783 case '~':
8784 case 0x7F: goto yy55;
8785 case '\\': goto yy147;
8786 case 'n': goto yy571;
8787 case 'o': goto yy555;
8788 default: goto yy529;
8789 }
8790 yy557:
8791 yyaccept = 71;
8792 yych = *(mrk = ++cur);
8793 switch (yych) {
8794 case 0x00:
8795 case 0x01:
8796 case 0x02:
8797 case 0x03:
8798 case 0x04:
8799 case 0x05:
8800 case 0x06:
8801 case 0x07:
8802 case 0x08:
8803 case '\t':
8804 case '\n':
8805 case '\v':
8806 case '\f':
8807 case '\r':
8808 case 0x0E:
8809 case 0x0F:
8810 case 0x10:
8811 case 0x11:
8812 case 0x12:
8813 case 0x13:
8814 case 0x14:
8815 case 0x15:
8816 case 0x16:
8817 case 0x17:
8818 case 0x18:
8819 case 0x19:
8820 case 0x1A:
8821 case 0x1B:
8822 case 0x1C:
8823 case 0x1D:
8824 case 0x1E:
8825 case 0x1F:
8826 case ' ':
8827 case '!':
8828 case '"':
8829 case '#':
8830 case '$':
8831 case '%':
8832 case '&':
8833 case '\'':
8834 case '(':
8835 case ')':
8836 case '*':
8837 case '+':
8838 case ',':
8839 case '-':
8840 case '.':
8841 case '/':
8842 case ':':
8843 case ';':
8844 case '<':
8845 case '=':
8846 case '>':
8847 case '?':
8848 case '@':
8849 case '[':
8850 case ']':
8851 case '^':
8852 case '`':
8853 case '{':
8854 case '|':
8855 case '}':
8856 case '~':
8857 case 0x7F: goto yy558;
8858 case '\\': goto yy147;
8859 default: goto yy61;
8860 }
8861 yy558:
8862 #line 191 "src/parser_scan.re"
8863 { NEWTOKEN(PSI_T_UNSIGNED); goto start; }
8864 #line 8865 "src/parser_scan.c"
8865 yy559:
8866 yyaccept = 72;
8867 yych = *(mrk = ++cur);
8868 switch (yych) {
8869 case 0x00:
8870 case 0x01:
8871 case 0x02:
8872 case 0x03:
8873 case 0x04:
8874 case 0x05:
8875 case 0x06:
8876 case 0x07:
8877 case 0x08:
8878 case '\t':
8879 case '\n':
8880 case '\v':
8881 case '\f':
8882 case '\r':
8883 case 0x0E:
8884 case 0x0F:
8885 case 0x10:
8886 case 0x11:
8887 case 0x12:
8888 case 0x13:
8889 case 0x14:
8890 case 0x15:
8891 case 0x16:
8892 case 0x17:
8893 case 0x18:
8894 case 0x19:
8895 case 0x1A:
8896 case 0x1B:
8897 case 0x1C:
8898 case 0x1D:
8899 case 0x1E:
8900 case 0x1F:
8901 case ' ':
8902 case '!':
8903 case '"':
8904 case '#':
8905 case '$':
8906 case '%':
8907 case '&':
8908 case '\'':
8909 case '(':
8910 case ')':
8911 case '*':
8912 case '+':
8913 case ',':
8914 case '-':
8915 case '.':
8916 case '/':
8917 case ':':
8918 case ';':
8919 case '<':
8920 case '=':
8921 case '>':
8922 case '?':
8923 case '@':
8924 case '[':
8925 case ']':
8926 case '^':
8927 case '`':
8928 case '{':
8929 case '|':
8930 case '}':
8931 case '~':
8932 case 0x7F: goto yy560;
8933 case '\\': goto yy147;
8934 default: goto yy61;
8935 }
8936 yy560:
8937 #line 175 "src/parser_scan.re"
8938 { NEWTOKEN(PSI_T_VOLATILE); goto start; }
8939 #line 8940 "src/parser_scan.c"
8940 yy561:
8941 yyaccept = 3;
8942 yych = *(mrk = ++cur);
8943 switch (yych) {
8944 case 'E':
8945 case 'e': goto yy572;
8946 default: goto yy62;
8947 }
8948 yy562:
8949 yyaccept = 3;
8950 yych = *(mrk = ++cur);
8951 switch (yych) {
8952 case 'R':
8953 case 'r': goto yy573;
8954 default: goto yy62;
8955 }
8956 yy563:
8957 yyaccept = 3;
8958 yych = *(mrk = ++cur);
8959 switch (yych) {
8960 case 'T':
8961 case 't': goto yy574;
8962 default: goto yy62;
8963 }
8964 yy564:
8965 yyaccept = 73;
8966 yych = *(mrk = ++cur);
8967 switch (yych) {
8968 case 0x00:
8969 case 0x01:
8970 case 0x02:
8971 case 0x03:
8972 case 0x04:
8973 case 0x05:
8974 case 0x06:
8975 case 0x07:
8976 case 0x08:
8977 case '\t':
8978 case '\n':
8979 case '\v':
8980 case '\f':
8981 case '\r':
8982 case 0x0E:
8983 case 0x0F:
8984 case 0x10:
8985 case 0x11:
8986 case 0x12:
8987 case 0x13:
8988 case 0x14:
8989 case 0x15:
8990 case 0x16:
8991 case 0x17:
8992 case 0x18:
8993 case 0x19:
8994 case 0x1A:
8995 case 0x1B:
8996 case 0x1C:
8997 case 0x1D:
8998 case 0x1E:
8999 case 0x1F:
9000 case ' ':
9001 case '!':
9002 case '"':
9003 case '#':
9004 case '$':
9005 case '%':
9006 case '&':
9007 case '\'':
9008 case '(':
9009 case ')':
9010 case '*':
9011 case '+':
9012 case ',':
9013 case '-':
9014 case '.':
9015 case '/':
9016 case ':':
9017 case ';':
9018 case '<':
9019 case '=':
9020 case '>':
9021 case '?':
9022 case '@':
9023 case '[':
9024 case ']':
9025 case '^':
9026 case '`':
9027 case '{':
9028 case '|':
9029 case '}':
9030 case '~':
9031 case 0x7F: goto yy565;
9032 case '\\': goto yy147;
9033 default: goto yy61;
9034 }
9035 yy565:
9036 #line 237 "src/parser_scan.re"
9037 { NEWTOKEN(PSI_T_TO_OBJECT); goto start; }
9038 #line 9039 "src/parser_scan.c"
9039 yy566:
9040 yyaccept = 74;
9041 yych = *(mrk = ++cur);
9042 switch (yych) {
9043 case 0x00:
9044 case 0x01:
9045 case 0x02:
9046 case 0x03:
9047 case 0x04:
9048 case 0x05:
9049 case 0x06:
9050 case 0x07:
9051 case 0x08:
9052 case '\t':
9053 case '\n':
9054 case '\v':
9055 case '\f':
9056 case '\r':
9057 case 0x0E:
9058 case 0x0F:
9059 case 0x10:
9060 case 0x11:
9061 case 0x12:
9062 case 0x13:
9063 case 0x14:
9064 case 0x15:
9065 case 0x16:
9066 case 0x17:
9067 case 0x18:
9068 case 0x19:
9069 case 0x1A:
9070 case 0x1B:
9071 case 0x1C:
9072 case 0x1D:
9073 case 0x1E:
9074 case 0x1F:
9075 case ' ':
9076 case '!':
9077 case '"':
9078 case '#':
9079 case '$':
9080 case '%':
9081 case '&':
9082 case '\'':
9083 case '(':
9084 case ')':
9085 case '*':
9086 case '+':
9087 case ',':
9088 case '-':
9089 case '.':
9090 case '/':
9091 case ':':
9092 case ';':
9093 case '<':
9094 case '=':
9095 case '>':
9096 case '?':
9097 case '@':
9098 case '[':
9099 case ']':
9100 case '^':
9101 case '`':
9102 case '{':
9103 case '|':
9104 case '}':
9105 case '~':
9106 case 0x7F: goto yy567;
9107 case '\\': goto yy147;
9108 default: goto yy61;
9109 }
9110 yy567:
9111 #line 239 "src/parser_scan.re"
9112 { NEWTOKEN(PSI_T_TO_STRING); goto start; }
9113 #line 9114 "src/parser_scan.c"
9114 yy568:
9115 yyaccept = 3;
9116 yych = *(mrk = ++cur);
9117 switch (yych) {
9118 case 't': goto yy576;
9119 default: goto yy62;
9120 }
9121 yy569:
9122 yyaccept = 3;
9123 yych = *(mrk = ++cur);
9124 switch (yych) {
9125 case 'o': goto yy577;
9126 default: goto yy62;
9127 }
9128 yy570:
9129 yyaccept = 3;
9130 yych = *(mrk = ++cur);
9131 switch (yych) {
9132 case 't': goto yy578;
9133 default: goto yy62;
9134 }
9135 yy571:
9136 yyaccept = 3;
9137 mrk = ++cur;
9138 if (lim <= cur) CHECKEOF();;
9139 yych = *cur;
9140 switch (yych) {
9141 case 0x00:
9142 case 0x01:
9143 case 0x02:
9144 case 0x03:
9145 case 0x04:
9146 case 0x05:
9147 case 0x06:
9148 case 0x07:
9149 case 0x08:
9150 case '\t':
9151 case '\n':
9152 case '\v':
9153 case '\f':
9154 case '\r':
9155 case 0x0E:
9156 case 0x0F:
9157 case 0x10:
9158 case 0x11:
9159 case 0x12:
9160 case 0x13:
9161 case 0x14:
9162 case 0x15:
9163 case 0x16:
9164 case 0x17:
9165 case 0x18:
9166 case 0x19:
9167 case 0x1A:
9168 case 0x1B:
9169 case 0x1C:
9170 case 0x1D:
9171 case 0x1E:
9172 case 0x1F:
9173 case ' ':
9174 case '!':
9175 case '"':
9176 case '#':
9177 case '$':
9178 case '%':
9179 case '&':
9180 case '\'':
9181 case '(':
9182 case ')':
9183 case '*':
9184 case '+':
9185 case ',':
9186 case '-':
9187 case '.':
9188 case '/':
9189 case ':':
9190 case ';':
9191 case '<':
9192 case '=':
9193 case '>':
9194 case '?':
9195 case '@':
9196 case '[':
9197 case ']':
9198 case '^':
9199 case '`':
9200 case '{':
9201 case '|':
9202 case '}':
9203 case '~':
9204 case 0x7F: goto yy55;
9205 case '\\': goto yy147;
9206 case 'c': goto yy580;
9207 case 'o': goto yy555;
9208 default: goto yy529;
9209 }
9210 yy572:
9211 yyaccept = 3;
9212 yych = *(mrk = ++cur);
9213 switch (yych) {
9214 case 'X':
9215 case 'x': goto yy581;
9216 default: goto yy62;
9217 }
9218 yy573:
9219 yyaccept = 3;
9220 yych = *(mrk = ++cur);
9221 switch (yych) {
9222 case 'T':
9223 case 't': goto yy582;
9224 default: goto yy62;
9225 }
9226 yy574:
9227 yyaccept = 75;
9228 yych = *(mrk = ++cur);
9229 switch (yych) {
9230 case 0x00:
9231 case 0x01:
9232 case 0x02:
9233 case 0x03:
9234 case 0x04:
9235 case 0x05:
9236 case 0x06:
9237 case 0x07:
9238 case 0x08:
9239 case '\t':
9240 case '\n':
9241 case '\v':
9242 case '\f':
9243 case '\r':
9244 case 0x0E:
9245 case 0x0F:
9246 case 0x10:
9247 case 0x11:
9248 case 0x12:
9249 case 0x13:
9250 case 0x14:
9251 case 0x15:
9252 case 0x16:
9253 case 0x17:
9254 case 0x18:
9255 case 0x19:
9256 case 0x1A:
9257 case 0x1B:
9258 case 0x1C:
9259 case 0x1D:
9260 case 0x1E:
9261 case 0x1F:
9262 case ' ':
9263 case '!':
9264 case '"':
9265 case '#':
9266 case '$':
9267 case '%':
9268 case '&':
9269 case '\'':
9270 case '(':
9271 case ')':
9272 case '*':
9273 case '+':
9274 case ',':
9275 case '-':
9276 case '.':
9277 case '/':
9278 case ':':
9279 case ';':
9280 case '<':
9281 case '=':
9282 case '>':
9283 case '?':
9284 case '@':
9285 case '[':
9286 case ']':
9287 case '^':
9288 case '`':
9289 case '{':
9290 case '|':
9291 case '}':
9292 case '~':
9293 case 0x7F: goto yy575;
9294 case '\\': goto yy147;
9295 default: goto yy61;
9296 }
9297 yy575:
9298 #line 220 "src/parser_scan.re"
9299 { NEWTOKEN(PSI_T_PRE_ASSERT); goto start; }
9300 #line 9301 "src/parser_scan.c"
9301 yy576:
9302 yyaccept = 3;
9303 yych = *(mrk = ++cur);
9304 switch (yych) {
9305 case 'e': goto yy584;
9306 default: goto yy62;
9307 }
9308 yy577:
9309 yyaccept = 3;
9310 yych = *(mrk = ++cur);
9311 switch (yych) {
9312 case 'n': goto yy585;
9313 default: goto yy62;
9314 }
9315 yy578:
9316 yyaccept = 76;
9317 yych = *(mrk = ++cur);
9318 switch (yych) {
9319 case 0x00:
9320 case 0x01:
9321 case 0x02:
9322 case 0x03:
9323 case 0x04:
9324 case 0x05:
9325 case 0x06:
9326 case 0x07:
9327 case 0x08:
9328 case '\t':
9329 case '\n':
9330 case '\v':
9331 case '\f':
9332 case '\r':
9333 case 0x0E:
9334 case 0x0F:
9335 case 0x10:
9336 case 0x11:
9337 case 0x12:
9338 case 0x13:
9339 case 0x14:
9340 case 0x15:
9341 case 0x16:
9342 case 0x17:
9343 case 0x18:
9344 case 0x19:
9345 case 0x1A:
9346 case 0x1B:
9347 case 0x1C:
9348 case 0x1D:
9349 case 0x1E:
9350 case 0x1F:
9351 case ' ':
9352 case '!':
9353 case '"':
9354 case '#':
9355 case '$':
9356 case '%':
9357 case '&':
9358 case '\'':
9359 case '(':
9360 case ')':
9361 case '*':
9362 case '+':
9363 case ',':
9364 case '-':
9365 case '.':
9366 case '/':
9367 case ':':
9368 case ';':
9369 case '<':
9370 case '=':
9371 case '>':
9372 case '?':
9373 case '@':
9374 case '[':
9375 case ']':
9376 case '^':
9377 case '`':
9378 case '{':
9379 case '|':
9380 case '}':
9381 case '~':
9382 case 0x7F: goto yy579;
9383 case '\\': goto yy147;
9384 default: goto yy61;
9385 }
9386 yy579:
9387 #line 172 "src/parser_scan.re"
9388 { NEWTOKEN(PSI_T_CPP_RESTRICT); goto start; }
9389 #line 9390 "src/parser_scan.c"
9390 yy580:
9391 yyaccept = 3;
9392 mrk = ++cur;
9393 if (lim <= cur) CHECKEOF();;
9394 yych = *cur;
9395 switch (yych) {
9396 case 0x00:
9397 case 0x01:
9398 case 0x02:
9399 case 0x03:
9400 case 0x04:
9401 case 0x05:
9402 case 0x06:
9403 case 0x07:
9404 case 0x08:
9405 case '\t':
9406 case '\n':
9407 case '\v':
9408 case '\f':
9409 case '\r':
9410 case 0x0E:
9411 case 0x0F:
9412 case 0x10:
9413 case 0x11:
9414 case 0x12:
9415 case 0x13:
9416 case 0x14:
9417 case 0x15:
9418 case 0x16:
9419 case 0x17:
9420 case 0x18:
9421 case 0x19:
9422 case 0x1A:
9423 case 0x1B:
9424 case 0x1C:
9425 case 0x1D:
9426 case 0x1E:
9427 case 0x1F:
9428 case ' ':
9429 case '!':
9430 case '"':
9431 case '#':
9432 case '$':
9433 case '%':
9434 case '&':
9435 case '\'':
9436 case '(':
9437 case ')':
9438 case '*':
9439 case '+':
9440 case ',':
9441 case '-':
9442 case '.':
9443 case '/':
9444 case ':':
9445 case ';':
9446 case '<':
9447 case '=':
9448 case '>':
9449 case '?':
9450 case '@':
9451 case '[':
9452 case ']':
9453 case '^':
9454 case '`':
9455 case '{':
9456 case '|':
9457 case '}':
9458 case '~':
9459 case 0x7F: goto yy55;
9460 case '\\': goto yy147;
9461 case 'e': goto yy586;
9462 case 'o': goto yy555;
9463 default: goto yy529;
9464 }
9465 yy581:
9466 yyaccept = 3;
9467 yych = *(mrk = ++cur);
9468 switch (yych) {
9469 case 'T':
9470 case 't': goto yy588;
9471 default: goto yy62;
9472 }
9473 yy582:
9474 yyaccept = 77;
9475 yych = *(mrk = ++cur);
9476 switch (yych) {
9477 case 0x00:
9478 case 0x01:
9479 case 0x02:
9480 case 0x03:
9481 case 0x04:
9482 case 0x05:
9483 case 0x06:
9484 case 0x07:
9485 case 0x08:
9486 case '\t':
9487 case '\n':
9488 case '\v':
9489 case '\f':
9490 case '\r':
9491 case 0x0E:
9492 case 0x0F:
9493 case 0x10:
9494 case 0x11:
9495 case 0x12:
9496 case 0x13:
9497 case 0x14:
9498 case 0x15:
9499 case 0x16:
9500 case 0x17:
9501 case 0x18:
9502 case 0x19:
9503 case 0x1A:
9504 case 0x1B:
9505 case 0x1C:
9506 case 0x1D:
9507 case 0x1E:
9508 case 0x1F:
9509 case ' ':
9510 case '!':
9511 case '"':
9512 case '#':
9513 case '$':
9514 case '%':
9515 case '&':
9516 case '\'':
9517 case '(':
9518 case ')':
9519 case '*':
9520 case '+':
9521 case ',':
9522 case '-':
9523 case '.':
9524 case '/':
9525 case ':':
9526 case ';':
9527 case '<':
9528 case '=':
9529 case '>':
9530 case '?':
9531 case '@':
9532 case '[':
9533 case ']':
9534 case '^':
9535 case '`':
9536 case '{':
9537 case '|':
9538 case '}':
9539 case '~':
9540 case 0x7F: goto yy583;
9541 case '\\': goto yy147;
9542 default: goto yy61;
9543 }
9544 yy583:
9545 #line 221 "src/parser_scan.re"
9546 { NEWTOKEN(PSI_T_POST_ASSERT); goto start; }
9547 #line 9548 "src/parser_scan.c"
9548 yy584:
9549 yyaccept = 3;
9550 yych = *(mrk = ++cur);
9551 switch (yych) {
9552 case '_': goto yy590;
9553 default: goto yy62;
9554 }
9555 yy585:
9556 yyaccept = 3;
9557 yych = *(mrk = ++cur);
9558 switch (yych) {
9559 case '_': goto yy591;
9560 default: goto yy62;
9561 }
9562 yy586:
9563 yyaccept = 78;
9564 mrk = ++cur;
9565 if (lim <= cur) CHECKEOF();;
9566 yych = *cur;
9567 switch (yych) {
9568 case 0x00:
9569 case 0x01:
9570 case 0x02:
9571 case 0x03:
9572 case 0x04:
9573 case 0x05:
9574 case 0x06:
9575 case 0x07:
9576 case 0x08:
9577 case '\t':
9578 case '\n':
9579 case '\v':
9580 case '\f':
9581 case '\r':
9582 case 0x0E:
9583 case 0x0F:
9584 case 0x10:
9585 case 0x11:
9586 case 0x12:
9587 case 0x13:
9588 case 0x14:
9589 case 0x15:
9590 case 0x16:
9591 case 0x17:
9592 case 0x18:
9593 case 0x19:
9594 case 0x1A:
9595 case 0x1B:
9596 case 0x1C:
9597 case 0x1D:
9598 case 0x1E:
9599 case 0x1F:
9600 case ' ':
9601 case '!':
9602 case '"':
9603 case '#':
9604 case '$':
9605 case '%':
9606 case '&':
9607 case '\'':
9608 case '(':
9609 case ')':
9610 case '*':
9611 case '+':
9612 case ',':
9613 case '-':
9614 case '.':
9615 case '/':
9616 case ':':
9617 case ';':
9618 case '<':
9619 case '=':
9620 case '>':
9621 case '?':
9622 case '@':
9623 case '[':
9624 case ']':
9625 case '^':
9626 case '`':
9627 case '{':
9628 case '|':
9629 case '}':
9630 case '~':
9631 case 0x7F: goto yy587;
9632 case '\\': goto yy147;
9633 case 'o': goto yy555;
9634 default: goto yy529;
9635 }
9636 yy587:
9637 #line 170 "src/parser_scan.re"
9638 { NEWTOKEN(PSI_T_PRAGMA_ONCE); goto start; }
9639 #line 9640 "src/parser_scan.c"
9640 yy588:
9641 yyaccept = 79;
9642 yych = *(mrk = ++cur);
9643 switch (yych) {
9644 case 0x00:
9645 case 0x01:
9646 case 0x02:
9647 case 0x03:
9648 case 0x04:
9649 case 0x05:
9650 case 0x06:
9651 case 0x07:
9652 case 0x08:
9653 case '\t':
9654 case '\n':
9655 case '\v':
9656 case '\f':
9657 case '\r':
9658 case 0x0E:
9659 case 0x0F:
9660 case 0x10:
9661 case 0x11:
9662 case 0x12:
9663 case 0x13:
9664 case 0x14:
9665 case 0x15:
9666 case 0x16:
9667 case 0x17:
9668 case 0x18:
9669 case 0x19:
9670 case 0x1A:
9671 case 0x1B:
9672 case 0x1C:
9673 case 0x1D:
9674 case 0x1E:
9675 case 0x1F:
9676 case ' ':
9677 case '!':
9678 case '"':
9679 case '#':
9680 case '$':
9681 case '%':
9682 case '&':
9683 case '\'':
9684 case '(':
9685 case ')':
9686 case '*':
9687 case '+':
9688 case ',':
9689 case '-':
9690 case '.':
9691 case '/':
9692 case ':':
9693 case ';':
9694 case '<':
9695 case '=':
9696 case '>':
9697 case '?':
9698 case '@':
9699 case '[':
9700 case ']':
9701 case '^':
9702 case '`':
9703 case '{':
9704 case '|':
9705 case '}':
9706 case '~':
9707 case 0x7F: goto yy589;
9708 case '\\': goto yy147;
9709 default: goto yy61;
9710 }
9711 yy589:
9712 #line 205 "src/parser_scan.re"
9713 { NEWTOKEN(PSI_T_INCLUDE_NEXT); goto start; }
9714 #line 9715 "src/parser_scan.c"
9715 yy590:
9716 yyaccept = 3;
9717 yych = *(mrk = ++cur);
9718 switch (yych) {
9719 case '_': goto yy592;
9720 default: goto yy62;
9721 }
9722 yy591:
9723 yyaccept = 3;
9724 yych = *(mrk = ++cur);
9725 switch (yych) {
9726 case '_': goto yy593;
9727 default: goto yy62;
9728 }
9729 yy592:
9730 yyaccept = 3;
9731 yych = *(mrk = ++cur);
9732 switch (yych) {
9733 case '\t':
9734 case '\f':
9735 case ' ': goto yy595;
9736 case '(': goto yy597;
9737 default: goto yy62;
9738 }
9739 yy593:
9740 yyaccept = 80;
9741 yych = *(mrk = ++cur);
9742 switch (yych) {
9743 case 0x00:
9744 case 0x01:
9745 case 0x02:
9746 case 0x03:
9747 case 0x04:
9748 case 0x05:
9749 case 0x06:
9750 case 0x07:
9751 case 0x08:
9752 case '\t':
9753 case '\n':
9754 case '\v':
9755 case '\f':
9756 case '\r':
9757 case 0x0E:
9758 case 0x0F:
9759 case 0x10:
9760 case 0x11:
9761 case 0x12:
9762 case 0x13:
9763 case 0x14:
9764 case 0x15:
9765 case 0x16:
9766 case 0x17:
9767 case 0x18:
9768 case 0x19:
9769 case 0x1A:
9770 case 0x1B:
9771 case 0x1C:
9772 case 0x1D:
9773 case 0x1E:
9774 case 0x1F:
9775 case ' ':
9776 case '!':
9777 case '"':
9778 case '#':
9779 case '$':
9780 case '%':
9781 case '&':
9782 case '\'':
9783 case '(':
9784 case ')':
9785 case '*':
9786 case '+':
9787 case ',':
9788 case '-':
9789 case '.':
9790 case '/':
9791 case ':':
9792 case ';':
9793 case '<':
9794 case '=':
9795 case '>':
9796 case '?':
9797 case '@':
9798 case '[':
9799 case ']':
9800 case '^':
9801 case '`':
9802 case '{':
9803 case '|':
9804 case '}':
9805 case '~':
9806 case 0x7F: goto yy594;
9807 case '\\': goto yy147;
9808 default: goto yy61;
9809 }
9810 yy594:
9811 #line 173 "src/parser_scan.re"
9812 { NEWTOKEN(PSI_T_CPP_EXTENSION); goto start; }
9813 #line 9814 "src/parser_scan.c"
9814 yy595:
9815 ++cur;
9816 if ((lim - cur) < 2) CHECKEOF();;
9817 yych = *cur;
9818 switch (yych) {
9819 case '\t':
9820 case '\f':
9821 case ' ': goto yy595;
9822 case '(': goto yy597;
9823 default: goto yy114;
9824 }
9825 yy597:
9826 yych = *++cur;
9827 switch (yych) {
9828 case '(': goto yy598;
9829 default: goto yy114;
9830 }
9831 yy598:
9832 ++cur;
9833 #line 247 "src/parser_scan.re"
9834 { parens = 2; goto cpp_attribute; }
9835 #line 9836 "src/parser_scan.c"
9836 }
9837 #line 253 "src/parser_scan.re"
9838
9839
9840 character: ;
9841
9842 #line 9843 "src/parser_scan.c"
9843 {
9844 unsigned char yych;
9845 if (lim <= cur) CHECKEOF();;
9846 yych = *cur;
9847 switch (yych) {
9848 case '\n':
9849 case '\r': goto yy604;
9850 case '\'': goto yy606;
9851 case '\\': goto yy608;
9852 default: goto yy602;
9853 }
9854 yy602:
9855 ++cur;
9856 #line 271 "src/parser_scan.re"
9857 { escaped = false; goto character; }
9858 #line 9859 "src/parser_scan.c"
9859 yy604:
9860 ++cur;
9861 #line 258 "src/parser_scan.re"
9862 { NEWLINE(); goto character; }
9863 #line 9864 "src/parser_scan.c"
9864 yy606:
9865 ++cur;
9866 #line 260 "src/parser_scan.re"
9867 {
9868 if (escaped) {
9869 escaped = false;
9870 goto character;
9871 }
9872 cur -= 1;
9873 NEWTOKEN(PSI_T_QUOTED_CHAR);
9874 cur += 1;
9875 token->flags = char_width;
9876 goto start;
9877 }
9878 #line 9879 "src/parser_scan.c"
9879 yy608:
9880 ++cur;
9881 #line 259 "src/parser_scan.re"
9882 { escaped = !escaped; goto character; }
9883 #line 9884 "src/parser_scan.c"
9884 }
9885 #line 273 "src/parser_scan.re"
9886
9887
9888 string: ;
9889
9890 #line 9891 "src/parser_scan.c"
9891 {
9892 unsigned char yych;
9893 if (lim <= cur) CHECKEOF();;
9894 yych = *cur;
9895 switch (yych) {
9896 case '\n':
9897 case '\r': goto yy614;
9898 case '"': goto yy616;
9899 case '\\': goto yy618;
9900 default: goto yy612;
9901 }
9902 yy612:
9903 ++cur;
9904 #line 291 "src/parser_scan.re"
9905 { escaped = false; goto string; }
9906 #line 9907 "src/parser_scan.c"
9907 yy614:
9908 ++cur;
9909 #line 278 "src/parser_scan.re"
9910 { NEWLINE(); goto string; }
9911 #line 9912 "src/parser_scan.c"
9912 yy616:
9913 ++cur;
9914 #line 280 "src/parser_scan.re"
9915 {
9916 if (escaped) {
9917 escaped = false;
9918 goto string;
9919 }
9920 cur -= 1;
9921 NEWTOKEN(PSI_T_QUOTED_STRING);
9922 cur += 1;
9923 token->flags = char_width;
9924 goto start;
9925 }
9926 #line 9927 "src/parser_scan.c"
9927 yy618:
9928 ++cur;
9929 #line 279 "src/parser_scan.re"
9930 { escaped = !escaped; goto string; }
9931 #line 9932 "src/parser_scan.c"
9932 }
9933 #line 293 "src/parser_scan.re"
9934
9935
9936 comment: ;
9937
9938 #line 9939 "src/parser_scan.c"
9939 {
9940 unsigned char yych;
9941 if ((lim - cur) < 2) CHECKEOF();;
9942 yych = *cur;
9943 switch (yych) {
9944 case '\n':
9945 case '\r': goto yy624;
9946 case '*': goto yy626;
9947 default: goto yy622;
9948 }
9949 yy622:
9950 ++cur;
9951 yy623:
9952 #line 300 "src/parser_scan.re"
9953 { goto comment; }
9954 #line 9955 "src/parser_scan.c"
9955 yy624:
9956 ++cur;
9957 #line 298 "src/parser_scan.re"
9958 { NEWLINE(); goto comment; }
9959 #line 9960 "src/parser_scan.c"
9960 yy626:
9961 yych = *++cur;
9962 switch (yych) {
9963 case '/': goto yy627;
9964 default: goto yy623;
9965 }
9966 yy627:
9967 ++cur;
9968 #line 299 "src/parser_scan.re"
9969 { NEWTOKEN(PSI_T_COMMENT); goto start; }
9970 #line 9971 "src/parser_scan.c"
9971 }
9972 #line 302 "src/parser_scan.re"
9973
9974
9975 comment_sl: ;
9976
9977 #line 9978 "src/parser_scan.c"
9978 {
9979 unsigned char yych;
9980 if (lim <= cur) CHECKEOF();;
9981 yych = *cur;
9982 switch (yych) {
9983 case '\n':
9984 case '\r': goto yy633;
9985 default: goto yy631;
9986 }
9987 yy631:
9988 ++cur;
9989 #line 308 "src/parser_scan.re"
9990 { goto comment_sl; }
9991 #line 9992 "src/parser_scan.c"
9992 yy633:
9993 ++cur;
9994 #line 307 "src/parser_scan.re"
9995 { NEWTOKEN(PSI_T_COMMENT); tok = cur - 1; NEWTOKEN(PSI_T_EOL); NEWLINE(); goto start; }
9996 #line 9997 "src/parser_scan.c"
9997 }
9998 #line 310 "src/parser_scan.re"
9999
10000
10001 cpp_attribute: ;
10002
10003
10004 #line 10005 "src/parser_scan.c"
10005 {
10006 unsigned char yych;
10007 if (lim <= cur) CHECKEOF();;
10008 yych = *cur;
10009 switch (yych) {
10010 case '\n':
10011 case '\r': goto yy639;
10012 case '(': goto yy641;
10013 case ')': goto yy643;
10014 default: goto yy637;
10015 }
10016 yy637:
10017 ++cur;
10018 #line 319 "src/parser_scan.re"
10019 { goto cpp_attribute; }
10020 #line 10021 "src/parser_scan.c"
10021 yy639:
10022 ++cur;
10023 #line 318 "src/parser_scan.re"
10024 { NEWLINE(); goto cpp_attribute; }
10025 #line 10026 "src/parser_scan.c"
10026 yy641:
10027 ++cur;
10028 #line 316 "src/parser_scan.re"
10029 { ++parens; goto cpp_attribute; }
10030 #line 10031 "src/parser_scan.c"
10031 yy643:
10032 ++cur;
10033 #line 317 "src/parser_scan.re"
10034 { if (parens == 1) { NEWTOKEN(PSI_T_CPP_ATTRIBUTE); goto start; } else { --parens; goto cpp_attribute; } }
10035 #line 10036 "src/parser_scan.c"
10036 }
10037 #line 321 "src/parser_scan.re"
10038
10039 error: ;
10040
10041 P->error(PSI_DATA(P), token, PSI_WARNING, "PSI syntax error: unexpected input (%d) '%.*s' at col %tu",
10042 token->type, token->text->len, token->text->val, tok - eol + 1);
10043 psi_plist_free(tokens);
10044 return NULL;
10045
10046 done: ;
10047
10048 PSI_DEBUG_PRINT(P, "PSI: EOF cur=%p lim=%p\n", cur, lim);
10049
10050 return tokens;
10051 }