9cafa4eb9d7d4ca92da840a1bf4c774605534650
[m6w6/ext-psi] / src / parser.c
1 /* Generated by re2c 0.16 on Tue Feb 21 15:25:35 2017 */
2 #line 1 "src/parser.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 #include <sys/mman.h>
30 #include <assert.h>
31
32 #include "parser.h"
33
34 void *psi_parser_proc_init(void);
35 void psi_parser_proc_free(void **parser_proc);
36 void psi_parser_proc_parse(void *parser_proc, token_t r, struct psi_token *token, struct psi_parser *parser);
37 void psi_parser_proc_trace(FILE *out, char *prefix);
38
39 struct psi_parser *psi_parser_init(struct psi_parser *P, psi_error_cb error, unsigned flags)
40 {
41 if (!P) {
42 P = malloc(sizeof(*P));
43 }
44 memset(P, 0, sizeof(*P));
45
46 psi_data_ctor_with_dtors(PSI_DATA(P), error, flags);
47
48 P->col = 1;
49 P->line = 1;
50 P->proc = psi_parser_proc_init();
51
52 if (flags & PSI_DEBUG) {
53 psi_parser_proc_trace(stderr, "PSI> ");
54 }
55
56 return P;
57 }
58
59 bool psi_parser_open_file(struct psi_parser *P, const char *filename)
60 {
61 FILE *fp = fopen(filename, "r");
62
63 if (!fp) {
64 P->error(PSI_DATA(P), NULL, PSI_WARNING,
65 "Could not open '%s' for reading: %s",
66 filename, strerror(errno));
67 return false;
68 }
69
70 P->input.type = PSI_PARSE_FILE;
71 P->input.data.file.handle = fp;
72
73 #if HAVE_MMAP
74 struct stat sb;
75 int fd = fileno(fp);
76
77 if (fstat(fd, &sb)) {
78 P->error(PSI_DATA(P), NULL, PSI_WARNING,
79 "Could not stat '%s': %s",
80 filename, strerror(errno));
81 return false;
82 }
83
84 P->input.data.file.buffer = mmap(NULL, sb.st_size, PROT_READ, MAP_SHARED, fd, 0);
85 if (MAP_FAILED == P->input.data.file.buffer) {
86 P->error(PSI_DATA(P), NULL, PSI_WARNING,
87 "Could not map '%s' for reading: %s",
88 filename, strerror(errno));
89 return false;
90 }
91 P->input.data.file.length = sb.st_size;
92 #else
93 P->input.data.file.buffer = malloc(BSIZE);
94 #endif
95
96 P->file.fn = strdup(filename);
97
98 return true;
99 }
100
101 bool psi_parser_open_string(struct psi_parser *P, const char *string, size_t length)
102 {
103 P->input.type = PSI_PARSE_STRING;
104 P->input.data.string.length = length;
105 if (!(P->input.data.string.buffer = strndup(string, length))) {
106 return false;
107 }
108
109 P->file.fn = strdup("<input>");
110
111 return true;
112 }
113
114 static ssize_t psi_parser_fill(struct psi_parser *P, size_t n)
115 {
116 PSI_DEBUG_PRINT(P, "PSI< Fill: n=%zu (input.type=%d)\n", n, P->input.type);
117
118 /* init if n==0 */
119 if (!n) {
120 switch (P->input.type) {
121 case PSI_PARSE_FILE:
122 P->cur = P->tok = P->mrk = P->input.data.file.buffer;
123 #if HAVE_MMAP
124 P->eof = P->input.data.file.buffer + P->input.data.file.length;
125 P->lim = P->eof;
126 #else
127 P->eof = NULL;
128 P->lim = P->input.data.file.buffer;
129 #endif
130 break;
131
132 case PSI_PARSE_STRING:
133 P->cur = P->tok = P->mrk = P->input.data.string.buffer;
134 P->eof = P->input.data.string.buffer + P->input.data.string.length;
135 P->lim = P->eof;
136 break;
137 }
138
139 PSI_DEBUG_PRINT(P, "PSI< Fill: cur=%p lim=%p eof=%p\n", P->cur, P->lim, P->eof);
140 }
141
142 switch (P->input.type) {
143 case PSI_PARSE_STRING:
144 break;
145
146 case PSI_PARSE_FILE:
147 #if !HAVE_MMAP
148 if (!P->eof) {
149 size_t consumed = P->tok - P->buf;
150 size_t reserved = P->lim - P->tok;
151 size_t available = BSIZE - reserved;
152 size_t didread;
153
154 if (consumed) {
155 memmove(P->buf, P->tok, reserved);
156 P->tok -= consumed;
157 P->cur -= consumed;
158 P->lim -= consumed;
159 P->mrk -= consumed;
160 }
161
162 didread = fread(P->lim, 1, available, P->fp);
163 P->lim += didread;
164 if (didread < available) {
165 P->eof = P->lim;
166 }
167 PSI_DEBUG_PRINT(P, "PSI< Fill: consumed=%zu reserved=%zu available=%zu didread=%zu\n",
168 consumed, reserved, available, didread);
169 }
170 #endif
171 break;
172 }
173
174 PSI_DEBUG_PRINT(P, "PSI< Fill: avail=%td\n", P->lim - P->cur);
175
176 return P->lim - P->cur;
177 }
178
179 void psi_parser_parse(struct psi_parser *P, struct psi_token *T)
180 {
181 if (T) {
182 psi_parser_proc_parse(P->proc, T->type, T, P);
183 } else {
184 psi_parser_proc_parse(P->proc, 0, NULL, P);
185 }
186 }
187
188 void psi_parser_dtor(struct psi_parser *P)
189 {
190 psi_parser_proc_free(&P->proc);
191
192 switch (P->input.type) {
193 case PSI_PARSE_FILE:
194 if (P->input.data.file.buffer) {
195 #if HAVE_MMAP
196 munmap(P->input.data.file.buffer, P->input.data.file.length);
197 #else
198 free(P->input.data.file.buffer);
199 #endif
200 }
201 if (P->input.data.file.handle) {
202 fclose(P->input.data.file.handle);
203 }
204 break;
205
206 case PSI_PARSE_STRING:
207 if (P->input.data.string.buffer) {
208 free(P->input.data.string.buffer);
209 }
210 break;
211 }
212
213 psi_data_dtor(PSI_DATA(P));
214
215 memset(P, 0, sizeof(*P));
216 }
217
218 void psi_parser_free(struct psi_parser **P)
219 {
220 if (*P) {
221 psi_parser_dtor(*P);
222 free(*P);
223 *P = NULL;
224 }
225 }
226
227 #define YYMAXFILL 12
228 #if BSIZE < YYMAXFILL
229 # error BSIZE must be greater than YYMAXFILL
230 #endif
231
232 #define RETURN(t) do { \
233 P->num = t; \
234 PSI_DEBUG_PRINT(P, "PSI< TOKEN: %d %.*s (EOF=%d %s:%u:%u)\n", \
235 P->num, (int) (P->cur-P->tok), P->tok, P->num == PSI_T_EOF, \
236 P->file.fn, P->line, P->col); \
237 return t; \
238 } while(1)
239
240 #define ADDCOLS \
241 P->col += P->cur - P->tok
242
243 #define NEWLINE(label) \
244 P->col = 1; \
245 ++P->line; \
246 goto label
247
248 token_t psi_parser_scan(struct psi_parser *P)
249 {
250 if (!P->cur) {
251 psi_parser_fill(P, 0);
252 }
253 for (;;) {
254 ADDCOLS;
255 nextline:
256 P->tok = P->cur;
257
258 #line 259 "src/parser.c"
259 {
260 unsigned char yych;
261 unsigned int yyaccept = 0;
262 if ((P->lim - P->cur) < 12) { if (!psi_parser_fill(P,12)) RETURN(PSI_T_EOF); };
263 yych = *P->cur;
264 switch (yych) {
265 case '\t':
266 case ' ': goto yy4;
267 case '\n':
268 case '\r': goto yy7;
269 case '!': goto yy9;
270 case '"': goto yy11;
271 case '#': goto yy12;
272 case '$': goto yy13;
273 case '%': goto yy14;
274 case '&': goto yy16;
275 case '(': goto yy18;
276 case ')': goto yy20;
277 case '*': goto yy22;
278 case '+': goto yy24;
279 case ',': goto yy26;
280 case '-': goto yy28;
281 case '.': goto yy30;
282 case '/': goto yy31;
283 case '0':
284 case '1':
285 case '2':
286 case '3':
287 case '4':
288 case '5':
289 case '6':
290 case '7':
291 case '8':
292 case '9': goto yy33;
293 case ':': goto yy36;
294 case ';': goto yy38;
295 case '<': goto yy40;
296 case '=': goto yy42;
297 case '>': goto yy44;
298 case 'A':
299 case 'a': goto yy46;
300 case 'B':
301 case 'b': goto yy48;
302 case 'C':
303 case 'c': goto yy49;
304 case 'D':
305 case 'd': goto yy50;
306 case 'E':
307 case 'e': goto yy51;
308 case 'F':
309 case 'f': goto yy52;
310 case 'G':
311 case 'H':
312 case 'J':
313 case 'K':
314 case 'Q':
315 case 'W':
316 case 'X':
317 case 'Y':
318 case '_':
319 case 'g':
320 case 'h':
321 case 'j':
322 case 'k':
323 case 'q':
324 case 'w':
325 case 'x':
326 case 'y': goto yy53;
327 case 'I':
328 case 'i': goto yy55;
329 case 'L':
330 case 'l': goto yy56;
331 case 'M':
332 case 'm': goto yy57;
333 case 'N':
334 case 'n': goto yy58;
335 case 'O':
336 case 'o': goto yy59;
337 case 'P':
338 case 'p': goto yy60;
339 case 'R':
340 case 'r': goto yy61;
341 case 'S':
342 case 's': goto yy62;
343 case 'T':
344 case 't': goto yy63;
345 case 'U':
346 case 'u': goto yy64;
347 case 'V':
348 case 'v': goto yy65;
349 case 'Z':
350 case 'z': goto yy66;
351 case '[': goto yy67;
352 case '\\': goto yy69;
353 case ']': goto yy70;
354 case '^': goto yy72;
355 case '{': goto yy74;
356 case '|': goto yy76;
357 case '}': goto yy78;
358 case '~': goto yy80;
359 default: goto yy2;
360 }
361 yy2:
362 ++P->cur;
363 yy3:
364 #line 371 "src/parser.re"
365 {break;}
366 #line 367 "src/parser.c"
367 yy4:
368 ++P->cur;
369 if (P->lim <= P->cur) { if (!psi_parser_fill(P,1)) RETURN(PSI_T_EOF); };
370 yych = *P->cur;
371 switch (yych) {
372 case '\t':
373 case ' ': goto yy4;
374 default: goto yy6;
375 }
376 yy6:
377 #line 306 "src/parser.re"
378 { continue; }
379 #line 380 "src/parser.c"
380 yy7:
381 ++P->cur;
382 #line 305 "src/parser.re"
383 { NEWLINE(nextline); }
384 #line 385 "src/parser.c"
385 yy9:
386 ++P->cur;
387 switch ((yych = *P->cur)) {
388 case '=': goto yy82;
389 default: goto yy10;
390 }
391 yy10:
392 #line 290 "src/parser.re"
393 {RETURN(PSI_T_NOT);}
394 #line 395 "src/parser.c"
395 yy11:
396 yyaccept = 0;
397 yych = *(P->mrk = ++P->cur);
398 switch (yych) {
399 case '"': goto yy3;
400 default: goto yy84;
401 }
402 yy12:
403 yyaccept = 0;
404 yych = *(P->mrk = ++P->cur);
405 goto yy87;
406 yy13:
407 yych = *++P->cur;
408 switch (yych) {
409 case '0':
410 case '1':
411 case '2':
412 case '3':
413 case '4':
414 case '5':
415 case '6':
416 case '7':
417 case '8':
418 case '9':
419 case 'A':
420 case 'B':
421 case 'C':
422 case 'D':
423 case 'E':
424 case 'F':
425 case 'G':
426 case 'H':
427 case 'I':
428 case 'J':
429 case 'K':
430 case 'L':
431 case 'M':
432 case 'N':
433 case 'O':
434 case 'P':
435 case 'Q':
436 case 'R':
437 case 'S':
438 case 'T':
439 case 'U':
440 case 'V':
441 case 'W':
442 case 'X':
443 case 'Y':
444 case 'Z':
445 case '_':
446 case 'a':
447 case 'b':
448 case 'c':
449 case 'd':
450 case 'e':
451 case 'f':
452 case 'g':
453 case 'h':
454 case 'i':
455 case 'j':
456 case 'k':
457 case 'l':
458 case 'm':
459 case 'n':
460 case 'o':
461 case 'p':
462 case 'q':
463 case 'r':
464 case 's':
465 case 't':
466 case 'u':
467 case 'v':
468 case 'w':
469 case 'x':
470 case 'y':
471 case 'z': goto yy90;
472 default: goto yy3;
473 }
474 yy14:
475 ++P->cur;
476 #line 291 "src/parser.re"
477 {RETURN(PSI_T_MODULO);}
478 #line 479 "src/parser.c"
479 yy16:
480 ++P->cur;
481 switch ((yych = *P->cur)) {
482 case '&': goto yy93;
483 default: goto yy17;
484 }
485 yy17:
486 #line 292 "src/parser.re"
487 {RETURN(PSI_T_AMPERSAND);}
488 #line 489 "src/parser.c"
489 yy18:
490 ++P->cur;
491 #line 274 "src/parser.re"
492 {RETURN(PSI_T_LPAREN);}
493 #line 494 "src/parser.c"
494 yy20:
495 ++P->cur;
496 #line 275 "src/parser.re"
497 {RETURN(PSI_T_RPAREN);}
498 #line 499 "src/parser.c"
499 yy22:
500 ++P->cur;
501 #line 288 "src/parser.re"
502 {RETURN(PSI_T_ASTERISK);}
503 #line 504 "src/parser.c"
504 yy24:
505 yyaccept = 1;
506 yych = *(P->mrk = ++P->cur);
507 switch (yych) {
508 case '.': goto yy95;
509 case '0':
510 case '1':
511 case '2':
512 case '3':
513 case '4':
514 case '5':
515 case '6':
516 case '7':
517 case '8':
518 case '9': goto yy33;
519 default: goto yy25;
520 }
521 yy25:
522 #line 293 "src/parser.re"
523 {RETURN(PSI_T_PLUS);}
524 #line 525 "src/parser.c"
525 yy26:
526 ++P->cur;
527 #line 277 "src/parser.re"
528 {RETURN(PSI_T_COMMA);}
529 #line 530 "src/parser.c"
530 yy28:
531 yyaccept = 2;
532 yych = *(P->mrk = ++P->cur);
533 switch (yych) {
534 case '.': goto yy95;
535 case '0':
536 case '1':
537 case '2':
538 case '3':
539 case '4':
540 case '5':
541 case '6':
542 case '7':
543 case '8':
544 case '9': goto yy33;
545 default: goto yy29;
546 }
547 yy29:
548 #line 294 "src/parser.re"
549 {RETURN(PSI_T_MINUS);}
550 #line 551 "src/parser.c"
551 yy30:
552 yyaccept = 0;
553 yych = *(P->mrk = ++P->cur);
554 switch (yych) {
555 case '.': goto yy97;
556 case '0':
557 case '1':
558 case '2':
559 case '3':
560 case '4':
561 case '5':
562 case '6':
563 case '7':
564 case '8':
565 case '9': goto yy98;
566 default: goto yy3;
567 }
568 yy31:
569 yyaccept = 3;
570 yych = *(P->mrk = ++P->cur);
571 switch (yych) {
572 case '*': goto yy100;
573 case '/': goto yy86;
574 default: goto yy32;
575 }
576 yy32:
577 #line 295 "src/parser.re"
578 {RETURN(PSI_T_SLASH);}
579 #line 580 "src/parser.c"
580 yy33:
581 yyaccept = 4;
582 P->mrk = ++P->cur;
583 if ((P->lim - P->cur) < 3) { if (!psi_parser_fill(P,3)) RETURN(PSI_T_EOF); };
584 yych = *P->cur;
585 switch (yych) {
586 case '.': goto yy95;
587 case '0':
588 case '1':
589 case '2':
590 case '3':
591 case '4':
592 case '5':
593 case '6':
594 case '7':
595 case '8':
596 case '9': goto yy33;
597 case 'E':
598 case 'e': goto yy102;
599 default: goto yy35;
600 }
601 yy35:
602 #line 366 "src/parser.re"
603 {RETURN(PSI_T_NUMBER);}
604 #line 605 "src/parser.c"
605 yy36:
606 ++P->cur;
607 #line 278 "src/parser.re"
608 {RETURN(PSI_T_COLON);}
609 #line 610 "src/parser.c"
610 yy38:
611 ++P->cur;
612 #line 276 "src/parser.re"
613 {RETURN(PSI_T_EOS);}
614 #line 615 "src/parser.c"
615 yy40:
616 ++P->cur;
617 switch ((yych = *P->cur)) {
618 case '<': goto yy103;
619 case '=': goto yy105;
620 default: goto yy41;
621 }
622 yy41:
623 #line 302 "src/parser.re"
624 {RETURN(PSI_T_LCHEVR);}
625 #line 626 "src/parser.c"
626 yy42:
627 ++P->cur;
628 switch ((yych = *P->cur)) {
629 case '=': goto yy107;
630 default: goto yy43;
631 }
632 yy43:
633 #line 287 "src/parser.re"
634 {RETURN(PSI_T_EQUALS);}
635 #line 636 "src/parser.c"
636 yy44:
637 ++P->cur;
638 switch ((yych = *P->cur)) {
639 case '=': goto yy109;
640 case '>': goto yy111;
641 default: goto yy45;
642 }
643 yy45:
644 #line 303 "src/parser.re"
645 {RETURN(PSI_T_RCHEVR);}
646 #line 647 "src/parser.c"
647 yy46:
648 yyaccept = 5;
649 yych = *(P->mrk = ++P->cur);
650 switch (yych) {
651 case 'R':
652 case 'r': goto yy113;
653 default: goto yy54;
654 }
655 yy47:
656 #line 367 "src/parser.re"
657 {RETURN(PSI_T_NAME);}
658 #line 659 "src/parser.c"
659 yy48:
660 yyaccept = 5;
661 yych = *(P->mrk = ++P->cur);
662 switch (yych) {
663 case 'O':
664 case 'o': goto yy115;
665 default: goto yy54;
666 }
667 yy49:
668 yyaccept = 5;
669 yych = *(P->mrk = ++P->cur);
670 switch (yych) {
671 case 'A':
672 case 'a': goto yy116;
673 case 'H':
674 case 'h': goto yy117;
675 case 'O':
676 case 'o': goto yy118;
677 default: goto yy54;
678 }
679 yy50:
680 yyaccept = 5;
681 yych = *(P->mrk = ++P->cur);
682 switch (yych) {
683 case 'O':
684 case 'o': goto yy119;
685 default: goto yy54;
686 }
687 yy51:
688 yyaccept = 5;
689 yych = *(P->mrk = ++P->cur);
690 switch (yych) {
691 case 'N':
692 case 'n': goto yy120;
693 default: goto yy54;
694 }
695 yy52:
696 yyaccept = 5;
697 yych = *(P->mrk = ++P->cur);
698 switch (yych) {
699 case 'A':
700 case 'a': goto yy121;
701 case 'L':
702 case 'l': goto yy122;
703 case 'R':
704 case 'r': goto yy123;
705 case 'U':
706 case 'u': goto yy124;
707 default: goto yy54;
708 }
709 yy53:
710 yyaccept = 5;
711 P->mrk = ++P->cur;
712 if (P->lim <= P->cur) { if (!psi_parser_fill(P,1)) RETURN(PSI_T_EOF); };
713 yych = *P->cur;
714 yy54:
715 switch (yych) {
716 case '0':
717 case '1':
718 case '2':
719 case '3':
720 case '4':
721 case '5':
722 case '6':
723 case '7':
724 case '8':
725 case '9':
726 case 'A':
727 case 'B':
728 case 'C':
729 case 'D':
730 case 'E':
731 case 'F':
732 case 'G':
733 case 'H':
734 case 'I':
735 case 'J':
736 case 'K':
737 case 'L':
738 case 'M':
739 case 'N':
740 case 'O':
741 case 'P':
742 case 'Q':
743 case 'R':
744 case 'S':
745 case 'T':
746 case 'U':
747 case 'V':
748 case 'W':
749 case 'X':
750 case 'Y':
751 case 'Z':
752 case '_':
753 case 'a':
754 case 'b':
755 case 'c':
756 case 'd':
757 case 'e':
758 case 'f':
759 case 'g':
760 case 'h':
761 case 'i':
762 case 'j':
763 case 'k':
764 case 'l':
765 case 'm':
766 case 'n':
767 case 'o':
768 case 'p':
769 case 'q':
770 case 'r':
771 case 's':
772 case 't':
773 case 'u':
774 case 'v':
775 case 'w':
776 case 'x':
777 case 'y':
778 case 'z': goto yy53;
779 case '\\': goto yy114;
780 default: goto yy47;
781 }
782 yy55:
783 yyaccept = 5;
784 yych = *(P->mrk = ++P->cur);
785 switch (yych) {
786 case 'N':
787 case 'n': goto yy125;
788 default: goto yy54;
789 }
790 yy56:
791 yyaccept = 5;
792 yych = *(P->mrk = ++P->cur);
793 switch (yych) {
794 case 'E':
795 case 'e': goto yy126;
796 case 'I':
797 case 'i': goto yy127;
798 case 'O':
799 case 'o': goto yy128;
800 default: goto yy54;
801 }
802 yy57:
803 yyaccept = 5;
804 yych = *(P->mrk = ++P->cur);
805 switch (yych) {
806 case 'I':
807 case 'i': goto yy129;
808 default: goto yy54;
809 }
810 yy58:
811 yyaccept = 5;
812 yych = *(P->mrk = ++P->cur);
813 switch (yych) {
814 case 'U':
815 case 'u': goto yy130;
816 default: goto yy54;
817 }
818 yy59:
819 yyaccept = 5;
820 yych = *(P->mrk = ++P->cur);
821 switch (yych) {
822 case 'B':
823 case 'b': goto yy131;
824 default: goto yy54;
825 }
826 yy60:
827 yyaccept = 5;
828 yych = *(P->mrk = ++P->cur);
829 switch (yych) {
830 case 'A':
831 case 'a': goto yy132;
832 case 'O':
833 case 'o': goto yy133;
834 case 'R':
835 case 'r': goto yy134;
836 default: goto yy54;
837 }
838 yy61:
839 yyaccept = 5;
840 yych = *(P->mrk = ++P->cur);
841 switch (yych) {
842 case 'E':
843 case 'e': goto yy135;
844 default: goto yy54;
845 }
846 yy62:
847 yyaccept = 5;
848 yych = *(P->mrk = ++P->cur);
849 switch (yych) {
850 case 'E':
851 case 'e': goto yy136;
852 case 'H':
853 case 'h': goto yy137;
854 case 'I':
855 case 'i': goto yy138;
856 case 'T':
857 case 't': goto yy139;
858 default: goto yy54;
859 }
860 yy63:
861 yyaccept = 5;
862 yych = *(P->mrk = ++P->cur);
863 switch (yych) {
864 case 'E':
865 case 'e': goto yy140;
866 case 'O':
867 case 'o': goto yy141;
868 case 'R':
869 case 'r': goto yy142;
870 case 'Y':
871 case 'y': goto yy143;
872 default: goto yy54;
873 }
874 yy64:
875 yyaccept = 5;
876 yych = *(P->mrk = ++P->cur);
877 switch (yych) {
878 case 'I':
879 case 'i': goto yy144;
880 case 'N':
881 case 'n': goto yy145;
882 default: goto yy54;
883 }
884 yy65:
885 yyaccept = 5;
886 yych = *(P->mrk = ++P->cur);
887 switch (yych) {
888 case 'O':
889 case 'o': goto yy146;
890 default: goto yy54;
891 }
892 yy66:
893 yyaccept = 5;
894 yych = *(P->mrk = ++P->cur);
895 switch (yych) {
896 case 'V':
897 case 'v': goto yy147;
898 default: goto yy54;
899 }
900 yy67:
901 ++P->cur;
902 #line 281 "src/parser.re"
903 {RETURN(PSI_T_LBRACKET);}
904 #line 905 "src/parser.c"
905 yy69:
906 yych = *++P->cur;
907 switch (yych) {
908 case 'A':
909 case 'B':
910 case 'C':
911 case 'D':
912 case 'E':
913 case 'F':
914 case 'G':
915 case 'H':
916 case 'I':
917 case 'J':
918 case 'K':
919 case 'L':
920 case 'M':
921 case 'N':
922 case 'O':
923 case 'P':
924 case 'Q':
925 case 'R':
926 case 'S':
927 case 'T':
928 case 'U':
929 case 'V':
930 case 'W':
931 case 'X':
932 case 'Y':
933 case 'Z':
934 case '_':
935 case 'a':
936 case 'b':
937 case 'c':
938 case 'd':
939 case 'e':
940 case 'f':
941 case 'g':
942 case 'h':
943 case 'i':
944 case 'j':
945 case 'k':
946 case 'l':
947 case 'm':
948 case 'n':
949 case 'o':
950 case 'p':
951 case 'q':
952 case 'r':
953 case 's':
954 case 't':
955 case 'u':
956 case 'v':
957 case 'w':
958 case 'x':
959 case 'y':
960 case 'z': goto yy148;
961 default: goto yy3;
962 }
963 yy70:
964 ++P->cur;
965 #line 282 "src/parser.re"
966 {RETURN(PSI_T_RBRACKET);}
967 #line 968 "src/parser.c"
968 yy72:
969 ++P->cur;
970 #line 297 "src/parser.re"
971 {RETURN(PSI_T_CARET);}
972 #line 973 "src/parser.c"
973 yy74:
974 ++P->cur;
975 #line 279 "src/parser.re"
976 {RETURN(PSI_T_LBRACE);}
977 #line 978 "src/parser.c"
978 yy76:
979 ++P->cur;
980 switch ((yych = *P->cur)) {
981 case '|': goto yy151;
982 default: goto yy77;
983 }
984 yy77:
985 #line 296 "src/parser.re"
986 {RETURN(PSI_T_PIPE);}
987 #line 988 "src/parser.c"
988 yy78:
989 ++P->cur;
990 #line 280 "src/parser.re"
991 {RETURN(PSI_T_RBRACE);}
992 #line 993 "src/parser.c"
993 yy80:
994 ++P->cur;
995 #line 289 "src/parser.re"
996 {RETURN(PSI_T_TILDE);}
997 #line 998 "src/parser.c"
998 yy82:
999 ++P->cur;
1000 #line 283 "src/parser.re"
1001 {RETURN(PSI_T_CMP_NE);}
1002 #line 1003 "src/parser.c"
1003 yy84:
1004 ++P->cur;
1005 if (P->lim <= P->cur) { if (!psi_parser_fill(P,1)) RETURN(PSI_T_EOF); };
1006 yych = *P->cur;
1007 switch (yych) {
1008 case '"': goto yy153;
1009 default: goto yy84;
1010 }
1011 yy86:
1012 ++P->cur;
1013 if (P->lim <= P->cur) { if (!psi_parser_fill(P,1)) RETURN(PSI_T_EOF); };
1014 yych = *P->cur;
1015 yy87:
1016 switch (yych) {
1017 case '\n': goto yy88;
1018 default: goto yy86;
1019 }
1020 yy88:
1021 ++P->cur;
1022 #line 273 "src/parser.re"
1023 { NEWLINE(nextline); }
1024 #line 1025 "src/parser.c"
1025 yy90:
1026 ++P->cur;
1027 if (P->lim <= P->cur) { if (!psi_parser_fill(P,1)) RETURN(PSI_T_EOF); };
1028 yych = *P->cur;
1029 switch (yych) {
1030 case '0':
1031 case '1':
1032 case '2':
1033 case '3':
1034 case '4':
1035 case '5':
1036 case '6':
1037 case '7':
1038 case '8':
1039 case '9':
1040 case 'A':
1041 case 'B':
1042 case 'C':
1043 case 'D':
1044 case 'E':
1045 case 'F':
1046 case 'G':
1047 case 'H':
1048 case 'I':
1049 case 'J':
1050 case 'K':
1051 case 'L':
1052 case 'M':
1053 case 'N':
1054 case 'O':
1055 case 'P':
1056 case 'Q':
1057 case 'R':
1058 case 'S':
1059 case 'T':
1060 case 'U':
1061 case 'V':
1062 case 'W':
1063 case 'X':
1064 case 'Y':
1065 case 'Z':
1066 case '_':
1067 case 'a':
1068 case 'b':
1069 case 'c':
1070 case 'd':
1071 case 'e':
1072 case 'f':
1073 case 'g':
1074 case 'h':
1075 case 'i':
1076 case 'j':
1077 case 'k':
1078 case 'l':
1079 case 'm':
1080 case 'n':
1081 case 'o':
1082 case 'p':
1083 case 'q':
1084 case 'r':
1085 case 's':
1086 case 't':
1087 case 'u':
1088 case 'v':
1089 case 'w':
1090 case 'x':
1091 case 'y':
1092 case 'z': goto yy90;
1093 default: goto yy92;
1094 }
1095 yy92:
1096 #line 369 "src/parser.re"
1097 {RETURN(PSI_T_DOLLAR_NAME);}
1098 #line 1099 "src/parser.c"
1099 yy93:
1100 ++P->cur;
1101 #line 285 "src/parser.re"
1102 {RETURN(PSI_T_AND);}
1103 #line 1104 "src/parser.c"
1104 yy95:
1105 yych = *++P->cur;
1106 switch (yych) {
1107 case '0':
1108 case '1':
1109 case '2':
1110 case '3':
1111 case '4':
1112 case '5':
1113 case '6':
1114 case '7':
1115 case '8':
1116 case '9': goto yy98;
1117 default: goto yy96;
1118 }
1119 yy96:
1120 P->cur = P->mrk;
1121 switch (yyaccept) {
1122 case 0: goto yy3;
1123 case 1: goto yy25;
1124 case 2: goto yy29;
1125 case 3: goto yy32;
1126 case 4: goto yy35;
1127 case 5: goto yy47;
1128 case 6: goto yy150;
1129 case 7: goto yy173;
1130 case 8: goto yy175;
1131 case 9: goto yy177;
1132 case 10: goto yy187;
1133 case 11: goto yy204;
1134 case 12: goto yy207;
1135 case 13: goto yy212;
1136 case 14: goto yy216;
1137 case 15: goto yy224;
1138 case 16: goto yy227;
1139 case 17: goto yy242;
1140 case 18: goto yy250;
1141 case 19: goto yy256;
1142 case 20: goto yy258;
1143 case 21: goto yy260;
1144 case 22: goto yy267;
1145 case 23: goto yy269;
1146 case 24: goto yy272;
1147 case 25: goto yy274;
1148 case 26: goto yy282;
1149 case 27: goto yy290;
1150 case 28: goto yy309;
1151 case 29: goto yy312;
1152 case 30: goto yy317;
1153 case 31: goto yy319;
1154 case 32: goto yy326;
1155 case 33: goto yy328;
1156 case 34: goto yy330;
1157 case 35: goto yy332;
1158 case 36: goto yy337;
1159 case 37: goto yy339;
1160 case 38: goto yy341;
1161 case 39: goto yy343;
1162 case 40: goto yy345;
1163 case 41: goto yy347;
1164 case 42: goto yy349;
1165 case 43: goto yy354;
1166 case 44: goto yy364;
1167 case 45: goto yy370;
1168 case 46: goto yy372;
1169 case 47: goto yy374;
1170 case 48: goto yy376;
1171 case 49: goto yy381;
1172 case 50: goto yy386;
1173 case 51: goto yy391;
1174 case 52: goto yy394;
1175 case 53: goto yy396;
1176 case 54: goto yy398;
1177 case 55: goto yy400;
1178 case 56: goto yy404;
1179 case 57: goto yy406;
1180 case 58: goto yy410;
1181 case 59: goto yy412;
1182 case 60: goto yy414;
1183 case 61: goto yy416;
1184 case 62: goto yy420;
1185 case 63: goto yy422;
1186 case 64: goto yy425;
1187 default: goto yy427;
1188 }
1189 yy97:
1190 yych = *++P->cur;
1191 switch (yych) {
1192 case '.': goto yy155;
1193 default: goto yy96;
1194 }
1195 yy98:
1196 yyaccept = 4;
1197 P->mrk = ++P->cur;
1198 if ((P->lim - P->cur) < 3) { if (!psi_parser_fill(P,3)) RETURN(PSI_T_EOF); };
1199 yych = *P->cur;
1200 switch (yych) {
1201 case '0':
1202 case '1':
1203 case '2':
1204 case '3':
1205 case '4':
1206 case '5':
1207 case '6':
1208 case '7':
1209 case '8':
1210 case '9': goto yy98;
1211 case 'E':
1212 case 'e': goto yy102;
1213 default: goto yy35;
1214 }
1215 yy100:
1216 ++P->cur;
1217 #line 272 "src/parser.re"
1218 { goto comment; }
1219 #line 1220 "src/parser.c"
1220 yy102:
1221 yych = *++P->cur;
1222 switch (yych) {
1223 case '+':
1224 case '-': goto yy157;
1225 case '0':
1226 case '1':
1227 case '2':
1228 case '3':
1229 case '4':
1230 case '5':
1231 case '6':
1232 case '7':
1233 case '8':
1234 case '9': goto yy158;
1235 default: goto yy96;
1236 }
1237 yy103:
1238 ++P->cur;
1239 #line 298 "src/parser.re"
1240 {RETURN(PSI_T_LSHIFT);}
1241 #line 1242 "src/parser.c"
1242 yy105:
1243 ++P->cur;
1244 #line 300 "src/parser.re"
1245 {RETURN(PSI_T_CMP_LE);}
1246 #line 1247 "src/parser.c"
1247 yy107:
1248 ++P->cur;
1249 #line 284 "src/parser.re"
1250 {RETURN(PSI_T_CMP_EQ);}
1251 #line 1252 "src/parser.c"
1252 yy109:
1253 ++P->cur;
1254 #line 301 "src/parser.re"
1255 {RETURN(PSI_T_CMP_GE);}
1256 #line 1257 "src/parser.c"
1257 yy111:
1258 ++P->cur;
1259 #line 299 "src/parser.re"
1260 {RETURN(PSI_T_RSHIFT);}
1261 #line 1262 "src/parser.c"
1262 yy113:
1263 yyaccept = 5;
1264 yych = *(P->mrk = ++P->cur);
1265 switch (yych) {
1266 case 'R':
1267 case 'r': goto yy160;
1268 default: goto yy54;
1269 }
1270 yy114:
1271 ++P->cur;
1272 if (P->lim <= P->cur) { if (!psi_parser_fill(P,1)) RETURN(PSI_T_EOF); };
1273 yych = *P->cur;
1274 switch (yych) {
1275 case 'A':
1276 case 'B':
1277 case 'C':
1278 case 'D':
1279 case 'E':
1280 case 'F':
1281 case 'G':
1282 case 'H':
1283 case 'I':
1284 case 'J':
1285 case 'K':
1286 case 'L':
1287 case 'M':
1288 case 'N':
1289 case 'O':
1290 case 'P':
1291 case 'Q':
1292 case 'R':
1293 case 'S':
1294 case 'T':
1295 case 'U':
1296 case 'V':
1297 case 'W':
1298 case 'X':
1299 case 'Y':
1300 case 'Z':
1301 case '_':
1302 case 'a':
1303 case 'b':
1304 case 'c':
1305 case 'd':
1306 case 'e':
1307 case 'f':
1308 case 'g':
1309 case 'h':
1310 case 'i':
1311 case 'j':
1312 case 'k':
1313 case 'l':
1314 case 'm':
1315 case 'n':
1316 case 'o':
1317 case 'p':
1318 case 'q':
1319 case 'r':
1320 case 's':
1321 case 't':
1322 case 'u':
1323 case 'v':
1324 case 'w':
1325 case 'x':
1326 case 'y':
1327 case 'z': goto yy148;
1328 default: goto yy96;
1329 }
1330 yy115:
1331 yyaccept = 5;
1332 yych = *(P->mrk = ++P->cur);
1333 switch (yych) {
1334 case 'O':
1335 case 'o': goto yy161;
1336 default: goto yy54;
1337 }
1338 yy116:
1339 yyaccept = 5;
1340 yych = *(P->mrk = ++P->cur);
1341 switch (yych) {
1342 case 'L':
1343 case 'l': goto yy162;
1344 default: goto yy54;
1345 }
1346 yy117:
1347 yyaccept = 5;
1348 yych = *(P->mrk = ++P->cur);
1349 switch (yych) {
1350 case 'A':
1351 case 'a': goto yy163;
1352 default: goto yy54;
1353 }
1354 yy118:
1355 yyaccept = 5;
1356 yych = *(P->mrk = ++P->cur);
1357 switch (yych) {
1358 case 'N':
1359 case 'n': goto yy164;
1360 case 'U':
1361 case 'u': goto yy165;
1362 default: goto yy54;
1363 }
1364 yy119:
1365 yyaccept = 5;
1366 yych = *(P->mrk = ++P->cur);
1367 switch (yych) {
1368 case 'U':
1369 case 'u': goto yy166;
1370 default: goto yy54;
1371 }
1372 yy120:
1373 yyaccept = 5;
1374 yych = *(P->mrk = ++P->cur);
1375 switch (yych) {
1376 case 'U':
1377 case 'u': goto yy167;
1378 default: goto yy54;
1379 }
1380 yy121:
1381 yyaccept = 5;
1382 yych = *(P->mrk = ++P->cur);
1383 switch (yych) {
1384 case 'L':
1385 case 'l': goto yy168;
1386 default: goto yy54;
1387 }
1388 yy122:
1389 yyaccept = 5;
1390 yych = *(P->mrk = ++P->cur);
1391 switch (yych) {
1392 case 'O':
1393 case 'o': goto yy169;
1394 default: goto yy54;
1395 }
1396 yy123:
1397 yyaccept = 5;
1398 yych = *(P->mrk = ++P->cur);
1399 switch (yych) {
1400 case 'E':
1401 case 'e': goto yy170;
1402 default: goto yy54;
1403 }
1404 yy124:
1405 yyaccept = 5;
1406 yych = *(P->mrk = ++P->cur);
1407 switch (yych) {
1408 case 'N':
1409 case 'n': goto yy171;
1410 default: goto yy54;
1411 }
1412 yy125:
1413 yyaccept = 5;
1414 yych = *(P->mrk = ++P->cur);
1415 switch (yych) {
1416 case 'T':
1417 case 't': goto yy172;
1418 default: goto yy54;
1419 }
1420 yy126:
1421 yyaccept = 5;
1422 yych = *(P->mrk = ++P->cur);
1423 switch (yych) {
1424 case 'T':
1425 case 't': goto yy174;
1426 default: goto yy54;
1427 }
1428 yy127:
1429 yyaccept = 5;
1430 yych = *(P->mrk = ++P->cur);
1431 switch (yych) {
1432 case 'B':
1433 case 'b': goto yy176;
1434 default: goto yy54;
1435 }
1436 yy128:
1437 yyaccept = 5;
1438 yych = *(P->mrk = ++P->cur);
1439 switch (yych) {
1440 case 'N':
1441 case 'n': goto yy178;
1442 default: goto yy54;
1443 }
1444 yy129:
1445 yyaccept = 5;
1446 yych = *(P->mrk = ++P->cur);
1447 switch (yych) {
1448 case 'X':
1449 case 'x': goto yy179;
1450 default: goto yy54;
1451 }
1452 yy130:
1453 yyaccept = 5;
1454 yych = *(P->mrk = ++P->cur);
1455 switch (yych) {
1456 case 'L':
1457 case 'l': goto yy180;
1458 default: goto yy54;
1459 }
1460 yy131:
1461 yyaccept = 5;
1462 yych = *(P->mrk = ++P->cur);
1463 switch (yych) {
1464 case 'J':
1465 case 'j': goto yy181;
1466 default: goto yy54;
1467 }
1468 yy132:
1469 yyaccept = 5;
1470 yych = *(P->mrk = ++P->cur);
1471 switch (yych) {
1472 case 'T':
1473 case 't': goto yy182;
1474 default: goto yy54;
1475 }
1476 yy133:
1477 yyaccept = 5;
1478 yych = *(P->mrk = ++P->cur);
1479 switch (yych) {
1480 case 'S':
1481 case 's': goto yy183;
1482 default: goto yy54;
1483 }
1484 yy134:
1485 yyaccept = 5;
1486 yych = *(P->mrk = ++P->cur);
1487 switch (yych) {
1488 case 'E':
1489 case 'e': goto yy184;
1490 default: goto yy54;
1491 }
1492 yy135:
1493 yyaccept = 5;
1494 yych = *(P->mrk = ++P->cur);
1495 switch (yych) {
1496 case 'T':
1497 case 't': goto yy185;
1498 default: goto yy54;
1499 }
1500 yy136:
1501 yyaccept = 5;
1502 yych = *(P->mrk = ++P->cur);
1503 switch (yych) {
1504 case 'T':
1505 case 't': goto yy186;
1506 default: goto yy54;
1507 }
1508 yy137:
1509 yyaccept = 5;
1510 yych = *(P->mrk = ++P->cur);
1511 switch (yych) {
1512 case 'O':
1513 case 'o': goto yy188;
1514 default: goto yy54;
1515 }
1516 yy138:
1517 yyaccept = 5;
1518 yych = *(P->mrk = ++P->cur);
1519 switch (yych) {
1520 case 'G':
1521 case 'g': goto yy189;
1522 default: goto yy54;
1523 }
1524 yy139:
1525 yyaccept = 5;
1526 yych = *(P->mrk = ++P->cur);
1527 switch (yych) {
1528 case 'A':
1529 case 'a': goto yy190;
1530 case 'R':
1531 case 'r': goto yy191;
1532 default: goto yy54;
1533 }
1534 yy140:
1535 yyaccept = 5;
1536 yych = *(P->mrk = ++P->cur);
1537 switch (yych) {
1538 case 'M':
1539 case 'm': goto yy192;
1540 default: goto yy54;
1541 }
1542 yy141:
1543 yyaccept = 5;
1544 yych = *(P->mrk = ++P->cur);
1545 switch (yych) {
1546 case '_': goto yy193;
1547 default: goto yy54;
1548 }
1549 yy142:
1550 yyaccept = 5;
1551 yych = *(P->mrk = ++P->cur);
1552 switch (yych) {
1553 case 'U':
1554 case 'u': goto yy194;
1555 default: goto yy54;
1556 }
1557 yy143:
1558 yyaccept = 5;
1559 yych = *(P->mrk = ++P->cur);
1560 switch (yych) {
1561 case 'P':
1562 case 'p': goto yy195;
1563 default: goto yy54;
1564 }
1565 yy144:
1566 yyaccept = 5;
1567 yych = *(P->mrk = ++P->cur);
1568 switch (yych) {
1569 case 'N':
1570 case 'n': goto yy196;
1571 default: goto yy54;
1572 }
1573 yy145:
1574 yyaccept = 5;
1575 yych = *(P->mrk = ++P->cur);
1576 switch (yych) {
1577 case 'I':
1578 case 'i': goto yy197;
1579 case 'S':
1580 case 's': goto yy198;
1581 default: goto yy54;
1582 }
1583 yy146:
1584 yyaccept = 5;
1585 yych = *(P->mrk = ++P->cur);
1586 switch (yych) {
1587 case 'I':
1588 case 'i': goto yy199;
1589 default: goto yy54;
1590 }
1591 yy147:
1592 yyaccept = 5;
1593 yych = *(P->mrk = ++P->cur);
1594 switch (yych) {
1595 case 'A':
1596 case 'a': goto yy200;
1597 default: goto yy54;
1598 }
1599 yy148:
1600 yyaccept = 6;
1601 P->mrk = ++P->cur;
1602 if (P->lim <= P->cur) { if (!psi_parser_fill(P,1)) RETURN(PSI_T_EOF); };
1603 yych = *P->cur;
1604 switch (yych) {
1605 case '0':
1606 case '1':
1607 case '2':
1608 case '3':
1609 case '4':
1610 case '5':
1611 case '6':
1612 case '7':
1613 case '8':
1614 case '9':
1615 case 'A':
1616 case 'B':
1617 case 'C':
1618 case 'D':
1619 case 'E':
1620 case 'F':
1621 case 'G':
1622 case 'H':
1623 case 'I':
1624 case 'J':
1625 case 'K':
1626 case 'L':
1627 case 'M':
1628 case 'N':
1629 case 'O':
1630 case 'P':
1631 case 'Q':
1632 case 'R':
1633 case 'S':
1634 case 'T':
1635 case 'U':
1636 case 'V':
1637 case 'W':
1638 case 'X':
1639 case 'Y':
1640 case 'Z':
1641 case '_':
1642 case 'a':
1643 case 'b':
1644 case 'c':
1645 case 'd':
1646 case 'e':
1647 case 'f':
1648 case 'g':
1649 case 'h':
1650 case 'i':
1651 case 'j':
1652 case 'k':
1653 case 'l':
1654 case 'm':
1655 case 'n':
1656 case 'o':
1657 case 'p':
1658 case 'q':
1659 case 'r':
1660 case 's':
1661 case 't':
1662 case 'u':
1663 case 'v':
1664 case 'w':
1665 case 'x':
1666 case 'y':
1667 case 'z': goto yy148;
1668 case '\\': goto yy114;
1669 default: goto yy150;
1670 }
1671 yy150:
1672 #line 368 "src/parser.re"
1673 {RETURN(PSI_T_NSNAME);}
1674 #line 1675 "src/parser.c"
1675 yy151:
1676 ++P->cur;
1677 #line 286 "src/parser.re"
1678 {RETURN(PSI_T_OR);}
1679 #line 1680 "src/parser.c"
1680 yy153:
1681 ++P->cur;
1682 #line 370 "src/parser.re"
1683 {RETURN(PSI_T_QUOTED_STRING);}
1684 #line 1685 "src/parser.c"
1685 yy155:
1686 ++P->cur;
1687 #line 304 "src/parser.re"
1688 {RETURN(PSI_T_ELLIPSIS);}
1689 #line 1690 "src/parser.c"
1690 yy157:
1691 yych = *++P->cur;
1692 switch (yych) {
1693 case '0':
1694 case '1':
1695 case '2':
1696 case '3':
1697 case '4':
1698 case '5':
1699 case '6':
1700 case '7':
1701 case '8':
1702 case '9': goto yy158;
1703 default: goto yy96;
1704 }
1705 yy158:
1706 ++P->cur;
1707 if (P->lim <= P->cur) { if (!psi_parser_fill(P,1)) RETURN(PSI_T_EOF); };
1708 yych = *P->cur;
1709 switch (yych) {
1710 case '0':
1711 case '1':
1712 case '2':
1713 case '3':
1714 case '4':
1715 case '5':
1716 case '6':
1717 case '7':
1718 case '8':
1719 case '9': goto yy158;
1720 default: goto yy35;
1721 }
1722 yy160:
1723 yyaccept = 5;
1724 yych = *(P->mrk = ++P->cur);
1725 switch (yych) {
1726 case 'A':
1727 case 'a': goto yy201;
1728 case 'V':
1729 case 'v': goto yy202;
1730 default: goto yy54;
1731 }
1732 yy161:
1733 yyaccept = 5;
1734 yych = *(P->mrk = ++P->cur);
1735 switch (yych) {
1736 case 'L':
1737 case 'l': goto yy203;
1738 default: goto yy54;
1739 }
1740 yy162:
1741 yyaccept = 5;
1742 yych = *(P->mrk = ++P->cur);
1743 switch (yych) {
1744 case 'L':
1745 case 'l': goto yy205;
1746 default: goto yy54;
1747 }
1748 yy163:
1749 yyaccept = 5;
1750 yych = *(P->mrk = ++P->cur);
1751 switch (yych) {
1752 case 'R':
1753 case 'r': goto yy206;
1754 default: goto yy54;
1755 }
1756 yy164:
1757 yyaccept = 5;
1758 yych = *(P->mrk = ++P->cur);
1759 switch (yych) {
1760 case 'S':
1761 case 's': goto yy208;
1762 default: goto yy54;
1763 }
1764 yy165:
1765 yyaccept = 5;
1766 yych = *(P->mrk = ++P->cur);
1767 switch (yych) {
1768 case 'N':
1769 case 'n': goto yy209;
1770 default: goto yy54;
1771 }
1772 yy166:
1773 yyaccept = 5;
1774 yych = *(P->mrk = ++P->cur);
1775 switch (yych) {
1776 case 'B':
1777 case 'b': goto yy210;
1778 default: goto yy54;
1779 }
1780 yy167:
1781 yyaccept = 5;
1782 yych = *(P->mrk = ++P->cur);
1783 switch (yych) {
1784 case 'M':
1785 case 'm': goto yy211;
1786 default: goto yy54;
1787 }
1788 yy168:
1789 yyaccept = 5;
1790 yych = *(P->mrk = ++P->cur);
1791 switch (yych) {
1792 case 'S':
1793 case 's': goto yy213;
1794 default: goto yy54;
1795 }
1796 yy169:
1797 yyaccept = 5;
1798 yych = *(P->mrk = ++P->cur);
1799 switch (yych) {
1800 case 'A':
1801 case 'a': goto yy214;
1802 default: goto yy54;
1803 }
1804 yy170:
1805 yyaccept = 5;
1806 yych = *(P->mrk = ++P->cur);
1807 switch (yych) {
1808 case 'E':
1809 case 'e': goto yy215;
1810 default: goto yy54;
1811 }
1812 yy171:
1813 yyaccept = 5;
1814 yych = *(P->mrk = ++P->cur);
1815 switch (yych) {
1816 case 'C':
1817 case 'c': goto yy217;
1818 default: goto yy54;
1819 }
1820 yy172:
1821 yyaccept = 7;
1822 yych = *(P->mrk = ++P->cur);
1823 switch (yych) {
1824 case '0':
1825 case '2':
1826 case '4':
1827 case '5':
1828 case '7':
1829 case '9':
1830 case 'A':
1831 case 'B':
1832 case 'C':
1833 case 'D':
1834 case 'E':
1835 case 'F':
1836 case 'G':
1837 case 'H':
1838 case 'I':
1839 case 'J':
1840 case 'K':
1841 case 'L':
1842 case 'M':
1843 case 'N':
1844 case 'O':
1845 case 'P':
1846 case 'Q':
1847 case 'R':
1848 case 'S':
1849 case 'T':
1850 case 'U':
1851 case 'W':
1852 case 'X':
1853 case 'Y':
1854 case 'Z':
1855 case '_':
1856 case 'a':
1857 case 'b':
1858 case 'c':
1859 case 'd':
1860 case 'e':
1861 case 'f':
1862 case 'g':
1863 case 'h':
1864 case 'i':
1865 case 'j':
1866 case 'k':
1867 case 'l':
1868 case 'm':
1869 case 'n':
1870 case 'o':
1871 case 'p':
1872 case 'q':
1873 case 'r':
1874 case 's':
1875 case 't':
1876 case 'u':
1877 case 'w':
1878 case 'x':
1879 case 'y':
1880 case 'z': goto yy53;
1881 case '1': goto yy218;
1882 case '3': goto yy219;
1883 case '6': goto yy220;
1884 case '8': goto yy221;
1885 case 'V':
1886 case 'v': goto yy222;
1887 case '\\': goto yy114;
1888 default: goto yy173;
1889 }
1890 yy173:
1891 #line 316 "src/parser.re"
1892 {RETURN(PSI_T_INT);}
1893 #line 1894 "src/parser.c"
1894 yy174:
1895 yyaccept = 8;
1896 yych = *(P->mrk = ++P->cur);
1897 switch (yych) {
1898 case '0':
1899 case '1':
1900 case '2':
1901 case '3':
1902 case '4':
1903 case '5':
1904 case '6':
1905 case '7':
1906 case '8':
1907 case '9':
1908 case 'A':
1909 case 'B':
1910 case 'C':
1911 case 'D':
1912 case 'E':
1913 case 'F':
1914 case 'G':
1915 case 'H':
1916 case 'I':
1917 case 'J':
1918 case 'K':
1919 case 'L':
1920 case 'M':
1921 case 'N':
1922 case 'O':
1923 case 'P':
1924 case 'Q':
1925 case 'R':
1926 case 'S':
1927 case 'T':
1928 case 'U':
1929 case 'V':
1930 case 'W':
1931 case 'X':
1932 case 'Y':
1933 case 'Z':
1934 case '_':
1935 case 'a':
1936 case 'b':
1937 case 'c':
1938 case 'd':
1939 case 'e':
1940 case 'f':
1941 case 'g':
1942 case 'h':
1943 case 'i':
1944 case 'j':
1945 case 'k':
1946 case 'l':
1947 case 'm':
1948 case 'n':
1949 case 'o':
1950 case 'p':
1951 case 'q':
1952 case 'r':
1953 case 's':
1954 case 't':
1955 case 'u':
1956 case 'v':
1957 case 'w':
1958 case 'x':
1959 case 'y':
1960 case 'z': goto yy53;
1961 case '\\': goto yy114;
1962 default: goto yy175;
1963 }
1964 yy175:
1965 #line 342 "src/parser.re"
1966 {RETURN(PSI_T_LET);}
1967 #line 1968 "src/parser.c"
1968 yy176:
1969 yyaccept = 9;
1970 yych = *(P->mrk = ++P->cur);
1971 switch (yych) {
1972 case '0':
1973 case '1':
1974 case '2':
1975 case '3':
1976 case '4':
1977 case '5':
1978 case '6':
1979 case '7':
1980 case '8':
1981 case '9':
1982 case 'A':
1983 case 'B':
1984 case 'C':
1985 case 'D':
1986 case 'E':
1987 case 'F':
1988 case 'G':
1989 case 'H':
1990 case 'I':
1991 case 'J':
1992 case 'K':
1993 case 'L':
1994 case 'M':
1995 case 'N':
1996 case 'O':
1997 case 'P':
1998 case 'Q':
1999 case 'R':
2000 case 'S':
2001 case 'T':
2002 case 'U':
2003 case 'V':
2004 case 'W':
2005 case 'X':
2006 case 'Y':
2007 case 'Z':
2008 case '_':
2009 case 'a':
2010 case 'b':
2011 case 'c':
2012 case 'd':
2013 case 'e':
2014 case 'f':
2015 case 'g':
2016 case 'h':
2017 case 'i':
2018 case 'j':
2019 case 'k':
2020 case 'l':
2021 case 'm':
2022 case 'n':
2023 case 'o':
2024 case 'p':
2025 case 'q':
2026 case 'r':
2027 case 's':
2028 case 't':
2029 case 'u':
2030 case 'v':
2031 case 'w':
2032 case 'x':
2033 case 'y':
2034 case 'z': goto yy53;
2035 case '\\': goto yy114;
2036 default: goto yy177;
2037 }
2038 yy177:
2039 #line 341 "src/parser.re"
2040 {RETURN(PSI_T_LIB);}
2041 #line 2042 "src/parser.c"
2042 yy178:
2043 yyaccept = 5;
2044 yych = *(P->mrk = ++P->cur);
2045 switch (yych) {
2046 case 'G':
2047 case 'g': goto yy223;
2048 default: goto yy54;
2049 }
2050 yy179:
2051 yyaccept = 5;
2052 yych = *(P->mrk = ++P->cur);
2053 switch (yych) {
2054 case 'E':
2055 case 'e': goto yy225;
2056 default: goto yy54;
2057 }
2058 yy180:
2059 yyaccept = 5;
2060 yych = *(P->mrk = ++P->cur);
2061 switch (yych) {
2062 case 'L':
2063 case 'l': goto yy226;
2064 default: goto yy54;
2065 }
2066 yy181:
2067 yyaccept = 5;
2068 yych = *(P->mrk = ++P->cur);
2069 switch (yych) {
2070 case 'E':
2071 case 'e': goto yy228;
2072 case 'V':
2073 case 'v': goto yy229;
2074 default: goto yy54;
2075 }
2076 yy182:
2077 yyaccept = 5;
2078 yych = *(P->mrk = ++P->cur);
2079 switch (yych) {
2080 case 'H':
2081 case 'h': goto yy230;
2082 default: goto yy54;
2083 }
2084 yy183:
2085 yyaccept = 5;
2086 yych = *(P->mrk = ++P->cur);
2087 switch (yych) {
2088 case 'T':
2089 case 't': goto yy231;
2090 default: goto yy54;
2091 }
2092 yy184:
2093 yyaccept = 5;
2094 yych = *(P->mrk = ++P->cur);
2095 switch (yych) {
2096 case '_': goto yy232;
2097 default: goto yy54;
2098 }
2099 yy185:
2100 yyaccept = 5;
2101 yych = *(P->mrk = ++P->cur);
2102 switch (yych) {
2103 case 'U':
2104 case 'u': goto yy233;
2105 default: goto yy54;
2106 }
2107 yy186:
2108 yyaccept = 10;
2109 yych = *(P->mrk = ++P->cur);
2110 switch (yych) {
2111 case '0':
2112 case '1':
2113 case '2':
2114 case '3':
2115 case '4':
2116 case '5':
2117 case '6':
2118 case '7':
2119 case '8':
2120 case '9':
2121 case 'A':
2122 case 'B':
2123 case 'C':
2124 case 'D':
2125 case 'E':
2126 case 'F':
2127 case 'G':
2128 case 'H':
2129 case 'I':
2130 case 'J':
2131 case 'K':
2132 case 'L':
2133 case 'M':
2134 case 'N':
2135 case 'O':
2136 case 'P':
2137 case 'Q':
2138 case 'R':
2139 case 'S':
2140 case 'T':
2141 case 'U':
2142 case 'V':
2143 case 'W':
2144 case 'X':
2145 case 'Y':
2146 case 'Z':
2147 case '_':
2148 case 'a':
2149 case 'b':
2150 case 'c':
2151 case 'd':
2152 case 'e':
2153 case 'f':
2154 case 'g':
2155 case 'h':
2156 case 'i':
2157 case 'j':
2158 case 'k':
2159 case 'l':
2160 case 'm':
2161 case 'n':
2162 case 'o':
2163 case 'p':
2164 case 'q':
2165 case 'r':
2166 case 's':
2167 case 't':
2168 case 'u':
2169 case 'v':
2170 case 'w':
2171 case 'x':
2172 case 'y':
2173 case 'z': goto yy53;
2174 case '\\': goto yy114;
2175 default: goto yy187;
2176 }
2177 yy187:
2178 #line 343 "src/parser.re"
2179 {RETURN(PSI_T_SET);}
2180 #line 2181 "src/parser.c"
2181 yy188:
2182 yyaccept = 5;
2183 yych = *(P->mrk = ++P->cur);
2184 switch (yych) {
2185 case 'R':
2186 case 'r': goto yy234;
2187 default: goto yy54;
2188 }
2189 yy189:
2190 yyaccept = 5;
2191 yych = *(P->mrk = ++P->cur);
2192 switch (yych) {
2193 case 'N':
2194 case 'n': goto yy235;
2195 default: goto yy54;
2196 }
2197 yy190:
2198 yyaccept = 5;
2199 yych = *(P->mrk = ++P->cur);
2200 switch (yych) {
2201 case 'T':
2202 case 't': goto yy236;
2203 default: goto yy54;
2204 }
2205 yy191:
2206 yyaccept = 5;
2207 yych = *(P->mrk = ++P->cur);
2208 switch (yych) {
2209 case 'I':
2210 case 'i': goto yy237;
2211 case 'L':
2212 case 'l': goto yy238;
2213 case 'U':
2214 case 'u': goto yy239;
2215 case 'V':
2216 case 'v': goto yy240;
2217 default: goto yy54;
2218 }
2219 yy192:
2220 yyaccept = 5;
2221 yych = *(P->mrk = ++P->cur);
2222 switch (yych) {
2223 case 'P':
2224 case 'p': goto yy241;
2225 default: goto yy54;
2226 }
2227 yy193:
2228 yyaccept = 5;
2229 yych = *(P->mrk = ++P->cur);
2230 switch (yych) {
2231 case 'A':
2232 case 'a': goto yy243;
2233 case 'B':
2234 case 'b': goto yy244;
2235 case 'F':
2236 case 'f': goto yy245;
2237 case 'I':
2238 case 'i': goto yy246;
2239 case 'O':
2240 case 'o': goto yy247;
2241 case 'S':
2242 case 's': goto yy248;
2243 default: goto yy54;
2244 }
2245 yy194:
2246 yyaccept = 5;
2247 yych = *(P->mrk = ++P->cur);
2248 switch (yych) {
2249 case 'E':
2250 case 'e': goto yy249;
2251 default: goto yy54;
2252 }
2253 yy195:
2254 yyaccept = 5;
2255 yych = *(P->mrk = ++P->cur);
2256 switch (yych) {
2257 case 'E':
2258 case 'e': goto yy251;
2259 default: goto yy54;
2260 }
2261 yy196:
2262 yyaccept = 5;
2263 yych = *(P->mrk = ++P->cur);
2264 switch (yych) {
2265 case 'T':
2266 case 't': goto yy252;
2267 default: goto yy54;
2268 }
2269 yy197:
2270 yyaccept = 5;
2271 yych = *(P->mrk = ++P->cur);
2272 switch (yych) {
2273 case 'O':
2274 case 'o': goto yy253;
2275 default: goto yy54;
2276 }
2277 yy198:
2278 yyaccept = 5;
2279 yych = *(P->mrk = ++P->cur);
2280 switch (yych) {
2281 case 'I':
2282 case 'i': goto yy254;
2283 default: goto yy54;
2284 }
2285 yy199:
2286 yyaccept = 5;
2287 yych = *(P->mrk = ++P->cur);
2288 switch (yych) {
2289 case 'D':
2290 case 'd': goto yy255;
2291 default: goto yy54;
2292 }
2293 yy200:
2294 yyaccept = 5;
2295 yych = *(P->mrk = ++P->cur);
2296 switch (yych) {
2297 case 'L':
2298 case 'l': goto yy257;
2299 default: goto yy54;
2300 }
2301 yy201:
2302 yyaccept = 5;
2303 yych = *(P->mrk = ++P->cur);
2304 switch (yych) {
2305 case 'Y':
2306 case 'y': goto yy259;
2307 default: goto yy54;
2308 }
2309 yy202:
2310 yyaccept = 5;
2311 yych = *(P->mrk = ++P->cur);
2312 switch (yych) {
2313 case 'A':
2314 case 'a': goto yy261;
2315 default: goto yy54;
2316 }
2317 yy203:
2318 yyaccept = 11;
2319 yych = *(P->mrk = ++P->cur);
2320 switch (yych) {
2321 case '0':
2322 case '1':
2323 case '2':
2324 case '3':
2325 case '4':
2326 case '5':
2327 case '6':
2328 case '7':
2329 case '8':
2330 case '9':
2331 case 'A':
2332 case 'B':
2333 case 'C':
2334 case 'D':
2335 case 'E':
2336 case 'F':
2337 case 'G':
2338 case 'H':
2339 case 'I':
2340 case 'J':
2341 case 'K':
2342 case 'L':
2343 case 'M':
2344 case 'N':
2345 case 'O':
2346 case 'P':
2347 case 'Q':
2348 case 'R':
2349 case 'S':
2350 case 'T':
2351 case 'U':
2352 case 'W':
2353 case 'X':
2354 case 'Y':
2355 case 'Z':
2356 case '_':
2357 case 'a':
2358 case 'b':
2359 case 'c':
2360 case 'd':
2361 case 'e':
2362 case 'f':
2363 case 'g':
2364 case 'h':
2365 case 'i':
2366 case 'j':
2367 case 'k':
2368 case 'l':
2369 case 'm':
2370 case 'n':
2371 case 'o':
2372 case 'p':
2373 case 'q':
2374 case 'r':
2375 case 's':
2376 case 't':
2377 case 'u':
2378 case 'w':
2379 case 'x':
2380 case 'y':
2381 case 'z': goto yy53;
2382 case 'V':
2383 case 'v': goto yy262;
2384 case '\\': goto yy114;
2385 default: goto yy204;
2386 }
2387 yy204:
2388 #line 313 "src/parser.re"
2389 {RETURN(PSI_T_BOOL);}
2390 #line 2391 "src/parser.c"
2391 yy205:
2392 yyaccept = 5;
2393 yych = *(P->mrk = ++P->cur);
2394 switch (yych) {
2395 case 'A':
2396 case 'a': goto yy263;
2397 case 'B':
2398 case 'b': goto yy264;
2399 case 'O':
2400 case 'o': goto yy265;
2401 default: goto yy54;
2402 }
2403 yy206:
2404 yyaccept = 12;
2405 yych = *(P->mrk = ++P->cur);
2406 switch (yych) {
2407 case '0':
2408 case '1':
2409 case '2':
2410 case '3':
2411 case '4':
2412 case '5':
2413 case '6':
2414 case '7':
2415 case '8':
2416 case '9':
2417 case 'A':
2418 case 'B':
2419 case 'C':
2420 case 'D':
2421 case 'E':
2422 case 'F':
2423 case 'G':
2424 case 'H':
2425 case 'I':
2426 case 'J':
2427 case 'K':
2428 case 'L':
2429 case 'M':
2430 case 'N':
2431 case 'O':
2432 case 'P':
2433 case 'Q':
2434 case 'R':
2435 case 'S':
2436 case 'T':
2437 case 'U':
2438 case 'V':
2439 case 'W':
2440 case 'X':
2441 case 'Y':
2442 case 'Z':
2443 case '_':
2444 case 'a':
2445 case 'b':
2446 case 'c':
2447 case 'd':
2448 case 'e':
2449 case 'f':
2450 case 'g':
2451 case 'h':
2452 case 'i':
2453 case 'j':
2454 case 'k':
2455 case 'l':
2456 case 'm':
2457 case 'n':
2458 case 'o':
2459 case 'p':
2460 case 'q':
2461 case 'r':
2462 case 's':
2463 case 't':
2464 case 'u':
2465 case 'v':
2466 case 'w':
2467 case 'x':
2468 case 'y':
2469 case 'z': goto yy53;
2470 case '\\': goto yy114;
2471 default: goto yy207;
2472 }
2473 yy207:
2474 #line 314 "src/parser.re"
2475 {RETURN(PSI_T_CHAR);}
2476 #line 2477 "src/parser.c"
2477 yy208:
2478 yyaccept = 5;
2479 yych = *(P->mrk = ++P->cur);
2480 switch (yych) {
2481 case 'T':
2482 case 't': goto yy266;
2483 default: goto yy54;
2484 }
2485 yy209:
2486 yyaccept = 5;
2487 yych = *(P->mrk = ++P->cur);
2488 switch (yych) {
2489 case 'T':
2490 case 't': goto yy268;
2491 default: goto yy54;
2492 }
2493 yy210:
2494 yyaccept = 5;
2495 yych = *(P->mrk = ++P->cur);
2496 switch (yych) {
2497 case 'L':
2498 case 'l': goto yy270;
2499 default: goto yy54;
2500 }
2501 yy211:
2502 yyaccept = 13;
2503 yych = *(P->mrk = ++P->cur);
2504 switch (yych) {
2505 case '0':
2506 case '1':
2507 case '2':
2508 case '3':
2509 case '4':
2510 case '5':
2511 case '6':
2512 case '7':
2513 case '8':
2514 case '9':
2515 case 'A':
2516 case 'B':
2517 case 'C':
2518 case 'D':
2519 case 'E':
2520 case 'F':
2521 case 'G':
2522 case 'H':
2523 case 'I':
2524 case 'J':
2525 case 'K':
2526 case 'L':
2527 case 'M':
2528 case 'N':
2529 case 'O':
2530 case 'P':
2531 case 'Q':
2532 case 'R':
2533 case 'S':
2534 case 'T':
2535 case 'U':
2536 case 'V':
2537 case 'W':
2538 case 'X':
2539 case 'Y':
2540 case 'Z':
2541 case '_':
2542 case 'a':
2543 case 'b':
2544 case 'c':
2545 case 'd':
2546 case 'e':
2547 case 'f':
2548 case 'g':
2549 case 'h':
2550 case 'i':
2551 case 'j':
2552 case 'k':
2553 case 'l':
2554 case 'm':
2555 case 'n':
2556 case 'o':
2557 case 'p':
2558 case 'q':
2559 case 'r':
2560 case 's':
2561 case 't':
2562 case 'u':
2563 case 'v':
2564 case 'w':
2565 case 'x':
2566 case 'y':
2567 case 'z': goto yy53;
2568 case '\\': goto yy114;
2569 default: goto yy212;
2570 }
2571 yy212:
2572 #line 339 "src/parser.re"
2573 {RETURN(PSI_T_ENUM);}
2574 #line 2575 "src/parser.c"
2575 yy213:
2576 yyaccept = 5;
2577 yych = *(P->mrk = ++P->cur);
2578 switch (yych) {
2579 case 'E':
2580 case 'e': goto yy271;
2581 default: goto yy54;
2582 }
2583 yy214:
2584 yyaccept = 5;
2585 yych = *(P->mrk = ++P->cur);
2586 switch (yych) {
2587 case 'T':
2588 case 't': goto yy273;
2589 default: goto yy54;
2590 }
2591 yy215:
2592 yyaccept = 14;
2593 yych = *(P->mrk = ++P->cur);
2594 switch (yych) {
2595 case '0':
2596 case '1':
2597 case '2':
2598 case '3':
2599 case '4':
2600 case '5':
2601 case '6':
2602 case '7':
2603 case '8':
2604 case '9':
2605 case 'A':
2606 case 'B':
2607 case 'C':
2608 case 'D':
2609 case 'E':
2610 case 'F':
2611 case 'G':
2612 case 'H':
2613 case 'I':
2614 case 'J':
2615 case 'K':
2616 case 'L':
2617 case 'M':
2618 case 'N':
2619 case 'O':
2620 case 'P':
2621 case 'Q':
2622 case 'R':
2623 case 'S':
2624 case 'T':
2625 case 'U':
2626 case 'V':
2627 case 'W':
2628 case 'X':
2629 case 'Y':
2630 case 'Z':
2631 case '_':
2632 case 'a':
2633 case 'b':
2634 case 'c':
2635 case 'd':
2636 case 'e':
2637 case 'f':
2638 case 'g':
2639 case 'h':
2640 case 'i':
2641 case 'j':
2642 case 'k':
2643 case 'l':
2644 case 'm':
2645 case 'n':
2646 case 'o':
2647 case 'p':
2648 case 'q':
2649 case 'r':
2650 case 's':
2651 case 't':
2652 case 'u':
2653 case 'v':
2654 case 'w':
2655 case 'x':
2656 case 'y':
2657 case 'z': goto yy53;
2658 case '\\': goto yy114;
2659 default: goto yy216;
2660 }
2661 yy216:
2662 #line 347 "src/parser.re"
2663 {RETURN(PSI_T_FREE);}
2664 #line 2665 "src/parser.c"
2665 yy217:
2666 yyaccept = 5;
2667 yych = *(P->mrk = ++P->cur);
2668 switch (yych) {
2669 case 'T':
2670 case 't': goto yy275;
2671 default: goto yy54;
2672 }
2673 yy218:
2674 yyaccept = 5;
2675 yych = *(P->mrk = ++P->cur);
2676 switch (yych) {
2677 case '6': goto yy276;
2678 default: goto yy54;
2679 }
2680 yy219:
2681 yyaccept = 5;
2682 yych = *(P->mrk = ++P->cur);
2683 switch (yych) {
2684 case '2': goto yy277;
2685 default: goto yy54;
2686 }
2687 yy220:
2688 yyaccept = 5;
2689 yych = *(P->mrk = ++P->cur);
2690 switch (yych) {
2691 case '4': goto yy278;
2692 default: goto yy54;
2693 }
2694 yy221:
2695 yyaccept = 5;
2696 yych = *(P->mrk = ++P->cur);
2697 switch (yych) {
2698 case '_': goto yy279;
2699 default: goto yy54;
2700 }
2701 yy222:
2702 yyaccept = 5;
2703 yych = *(P->mrk = ++P->cur);
2704 switch (yych) {
2705 case 'A':
2706 case 'a': goto yy280;
2707 default: goto yy54;
2708 }
2709 yy223:
2710 yyaccept = 15;
2711 yych = *(P->mrk = ++P->cur);
2712 switch (yych) {
2713 case '0':
2714 case '1':
2715 case '2':
2716 case '3':
2717 case '4':
2718 case '5':
2719 case '6':
2720 case '7':
2721 case '8':
2722 case '9':
2723 case 'A':
2724 case 'B':
2725 case 'C':
2726 case 'D':
2727 case 'E':
2728 case 'F':
2729 case 'G':
2730 case 'H':
2731 case 'I':
2732 case 'J':
2733 case 'K':
2734 case 'L':
2735 case 'M':
2736 case 'N':
2737 case 'O':
2738 case 'P':
2739 case 'Q':
2740 case 'R':
2741 case 'S':
2742 case 'T':
2743 case 'U':
2744 case 'V':
2745 case 'W':
2746 case 'X':
2747 case 'Y':
2748 case 'Z':
2749 case '_':
2750 case 'a':
2751 case 'b':
2752 case 'c':
2753 case 'd':
2754 case 'e':
2755 case 'f':
2756 case 'g':
2757 case 'h':
2758 case 'i':
2759 case 'j':
2760 case 'k':
2761 case 'l':
2762 case 'm':
2763 case 'n':
2764 case 'o':
2765 case 'p':
2766 case 'q':
2767 case 'r':
2768 case 's':
2769 case 't':
2770 case 'u':
2771 case 'v':
2772 case 'w':
2773 case 'x':
2774 case 'y':
2775 case 'z': goto yy53;
2776 case '\\': goto yy114;
2777 default: goto yy224;
2778 }
2779 yy224:
2780 #line 317 "src/parser.re"
2781 {RETURN(PSI_T_LONG);}
2782 #line 2783 "src/parser.c"
2783 yy225:
2784 yyaccept = 5;
2785 yych = *(P->mrk = ++P->cur);
2786 switch (yych) {
2787 case 'D':
2788 case 'd': goto yy281;
2789 default: goto yy54;
2790 }
2791 yy226:
2792 yyaccept = 16;
2793 yych = *(P->mrk = ++P->cur);
2794 switch (yych) {
2795 case '0':
2796 case '1':
2797 case '2':
2798 case '3':
2799 case '4':
2800 case '5':
2801 case '6':
2802 case '7':
2803 case '8':
2804 case '9':
2805 case 'A':
2806 case 'B':
2807 case 'C':
2808 case 'D':
2809 case 'E':
2810 case 'F':
2811 case 'G':
2812 case 'H':
2813 case 'I':
2814 case 'J':
2815 case 'K':
2816 case 'L':
2817 case 'M':
2818 case 'N':
2819 case 'O':
2820 case 'P':
2821 case 'Q':
2822 case 'R':
2823 case 'S':
2824 case 'T':
2825 case 'U':
2826 case 'V':
2827 case 'W':
2828 case 'X':
2829 case 'Y':
2830 case 'Z':
2831 case '_':
2832 case 'a':
2833 case 'b':
2834 case 'c':
2835 case 'd':
2836 case 'e':
2837 case 'f':
2838 case 'g':
2839 case 'h':
2840 case 'i':
2841 case 'j':
2842 case 'k':
2843 case 'l':
2844 case 'm':
2845 case 'n':
2846 case 'o':
2847 case 'p':
2848 case 'q':
2849 case 'r':
2850 case 's':
2851 case 't':
2852 case 'u':
2853 case 'v':
2854 case 'w':
2855 case 'x':
2856 case 'y':
2857 case 'z': goto yy53;
2858 case '\\': goto yy114;
2859 default: goto yy227;
2860 }
2861 yy227:
2862 #line 309 "src/parser.re"
2863 {RETURN(PSI_T_NULL);}
2864 #line 2865 "src/parser.c"
2865 yy228:
2866 yyaccept = 5;
2867 yych = *(P->mrk = ++P->cur);
2868 switch (yych) {
2869 case 'C':
2870 case 'c': goto yy283;
2871 default: goto yy54;
2872 }
2873 yy229:
2874 yyaccept = 5;
2875 yych = *(P->mrk = ++P->cur);
2876 switch (yych) {
2877 case 'A':
2878 case 'a': goto yy284;
2879 default: goto yy54;
2880 }
2881 yy230:
2882 yyaccept = 5;
2883 yych = *(P->mrk = ++P->cur);
2884 switch (yych) {
2885 case 'V':
2886 case 'v': goto yy285;
2887 default: goto yy54;
2888 }
2889 yy231:
2890 yyaccept = 5;
2891 yych = *(P->mrk = ++P->cur);
2892 switch (yych) {
2893 case '_': goto yy286;
2894 default: goto yy54;
2895 }
2896 yy232:
2897 yyaccept = 5;
2898 yych = *(P->mrk = ++P->cur);
2899 switch (yych) {
2900 case 'A':
2901 case 'a': goto yy287;
2902 default: goto yy54;
2903 }
2904 yy233:
2905 yyaccept = 5;
2906 yych = *(P->mrk = ++P->cur);
2907 switch (yych) {
2908 case 'R':
2909 case 'r': goto yy288;
2910 default: goto yy54;
2911 }
2912 yy234:
2913 yyaccept = 5;
2914 yych = *(P->mrk = ++P->cur);
2915 switch (yych) {
2916 case 'T':
2917 case 't': goto yy289;
2918 default: goto yy54;
2919 }
2920 yy235:
2921 yyaccept = 5;
2922 yych = *(P->mrk = ++P->cur);
2923 switch (yych) {
2924 case 'E':
2925 case 'e': goto yy291;
2926 default: goto yy54;
2927 }
2928 yy236:
2929 yyaccept = 5;
2930 yych = *(P->mrk = ++P->cur);
2931 switch (yych) {
2932 case 'I':
2933 case 'i': goto yy292;
2934 default: goto yy54;
2935 }
2936 yy237:
2937 yyaccept = 5;
2938 yych = *(P->mrk = ++P->cur);
2939 switch (yych) {
2940 case 'N':
2941 case 'n': goto yy293;
2942 default: goto yy54;
2943 }
2944 yy238:
2945 yyaccept = 5;
2946 yych = *(P->mrk = ++P->cur);
2947 switch (yych) {
2948 case 'E':
2949 case 'e': goto yy294;
2950 default: goto yy54;
2951 }
2952 yy239:
2953 yyaccept = 5;
2954 yych = *(P->mrk = ++P->cur);
2955 switch (yych) {
2956 case 'C':
2957 case 'c': goto yy295;
2958 default: goto yy54;
2959 }
2960 yy240:
2961 yyaccept = 5;
2962 yych = *(P->mrk = ++P->cur);
2963 switch (yych) {
2964 case 'A':
2965 case 'a': goto yy296;
2966 default: goto yy54;
2967 }
2968 yy241:
2969 yyaccept = 17;
2970 yych = *(P->mrk = ++P->cur);
2971 switch (yych) {
2972 case '0':
2973 case '1':
2974 case '2':
2975 case '3':
2976 case '4':
2977 case '5':
2978 case '6':
2979 case '7':
2980 case '8':
2981 case '9':
2982 case 'A':
2983 case 'B':
2984 case 'C':
2985 case 'D':
2986 case 'E':
2987 case 'F':
2988 case 'G':
2989 case 'H':
2990 case 'I':
2991 case 'J':
2992 case 'K':
2993 case 'L':
2994 case 'M':
2995 case 'N':
2996 case 'O':
2997 case 'P':
2998 case 'Q':
2999 case 'R':
3000 case 'S':
3001 case 'T':
3002 case 'U':
3003 case 'V':
3004 case 'W':
3005 case 'X':
3006 case 'Y':
3007 case 'Z':
3008 case '_':
3009 case 'a':
3010 case 'b':
3011 case 'c':
3012 case 'd':
3013 case 'e':
3014 case 'f':
3015 case 'g':
3016 case 'h':
3017 case 'i':
3018 case 'j':
3019 case 'k':
3020 case 'l':
3021 case 'm':
3022 case 'n':
3023 case 'o':
3024 case 'p':
3025 case 'q':
3026 case 'r':
3027 case 's':
3028 case 't':
3029 case 'u':
3030 case 'v':
3031 case 'w':
3032 case 'x':
3033 case 'y':
3034 case 'z': goto yy53;
3035 case '\\': goto yy114;
3036 default: goto yy242;
3037 }
3038 yy242:
3039 #line 348 "src/parser.re"
3040 {RETURN(PSI_T_TEMP);}
3041 #line 3042 "src/parser.c"
3042 yy243:
3043 yyaccept = 5;
3044 yych = *(P->mrk = ++P->cur);
3045 switch (yych) {
3046 case 'R':
3047 case 'r': goto yy297;
3048 default: goto yy54;
3049 }
3050 yy244:
3051 yyaccept = 5;
3052 yych = *(P->mrk = ++P->cur);
3053 switch (yych) {
3054 case 'O':
3055 case 'o': goto yy298;
3056 default: goto yy54;
3057 }
3058 yy245:
3059 yyaccept = 5;
3060 yych = *(P->mrk = ++P->cur);
3061 switch (yych) {
3062 case 'L':
3063 case 'l': goto yy299;
3064 default: goto yy54;
3065 }
3066 yy246:
3067 yyaccept = 5;
3068 yych = *(P->mrk = ++P->cur);
3069 switch (yych) {
3070 case 'N':
3071 case 'n': goto yy300;
3072 default: goto yy54;
3073 }
3074 yy247:
3075 yyaccept = 5;
3076 yych = *(P->mrk = ++P->cur);
3077 switch (yych) {
3078 case 'B':
3079 case 'b': goto yy301;
3080 default: goto yy54;
3081 }
3082 yy248:
3083 yyaccept = 5;
3084 yych = *(P->mrk = ++P->cur);
3085 switch (yych) {
3086 case 'T':
3087 case 't': goto yy302;
3088 default: goto yy54;
3089 }
3090 yy249:
3091 yyaccept = 18;
3092 yych = *(P->mrk = ++P->cur);
3093 switch (yych) {
3094 case '0':
3095 case '1':
3096 case '2':
3097 case '3':
3098 case '4':
3099 case '5':
3100 case '6':
3101 case '7':
3102 case '8':
3103 case '9':
3104 case 'A':
3105 case 'B':
3106 case 'C':
3107 case 'D':
3108 case 'E':
3109 case 'F':
3110 case 'G':
3111 case 'H':
3112 case 'I':
3113 case 'J':
3114 case 'K':
3115 case 'L':
3116 case 'M':
3117 case 'N':
3118 case 'O':
3119 case 'P':
3120 case 'Q':
3121 case 'R':
3122 case 'S':
3123 case 'T':
3124 case 'U':
3125 case 'V':
3126 case 'W':
3127 case 'X':
3128 case 'Y':
3129 case 'Z':
3130 case '_':
3131 case 'a':
3132 case 'b':
3133 case 'c':
3134 case 'd':
3135 case 'e':
3136 case 'f':
3137 case 'g':
3138 case 'h':
3139 case 'i':
3140 case 'j':
3141 case 'k':
3142 case 'l':
3143 case 'm':
3144 case 'n':
3145 case 'o':
3146 case 'p':
3147 case 'q':
3148 case 'r':
3149 case 's':
3150 case 't':
3151 case 'u':
3152 case 'v':
3153 case 'w':
3154 case 'x':
3155 case 'y':
3156 case 'z': goto yy53;
3157 case '\\': goto yy114;
3158 default: goto yy250;
3159 }
3160 yy250:
3161 #line 307 "src/parser.re"
3162 {RETURN(PSI_T_TRUE);}
3163 #line 3164 "src/parser.c"
3164 yy251:
3165 yyaccept = 5;
3166 yych = *(P->mrk = ++P->cur);
3167 switch (yych) {
3168 case 'D':
3169 case 'd': goto yy303;
3170 default: goto yy54;
3171 }
3172 yy252:
3173 yyaccept = 5;
3174 yych = *(P->mrk = ++P->cur);
3175 switch (yych) {
3176 case '1': goto yy304;
3177 case '3': goto yy305;
3178 case '6': goto yy306;
3179 case '8': goto yy307;
3180 default: goto yy54;
3181 }
3182 yy253:
3183 yyaccept = 5;
3184 yych = *(P->mrk = ++P->cur);
3185 switch (yych) {
3186 case 'N':
3187 case 'n': goto yy308;
3188 default: goto yy54;
3189 }
3190 yy254:
3191 yyaccept = 5;
3192 yych = *(P->mrk = ++P->cur);
3193 switch (yych) {
3194 case 'G':
3195 case 'g': goto yy310;
3196 default: goto yy54;
3197 }
3198 yy255:
3199 yyaccept = 19;
3200 yych = *(P->mrk = ++P->cur);
3201 switch (yych) {
3202 case '0':
3203 case '1':
3204 case '2':
3205 case '3':
3206 case '4':
3207 case '5':
3208 case '6':
3209 case '7':
3210 case '8':
3211 case '9':
3212 case 'A':
3213 case 'B':
3214 case 'C':
3215 case 'D':
3216 case 'E':
3217 case 'F':
3218 case 'G':
3219 case 'H':
3220 case 'I':
3221 case 'J':
3222 case 'K':
3223 case 'L':
3224 case 'M':
3225 case 'N':
3226 case 'O':
3227 case 'P':
3228 case 'Q':
3229 case 'R':
3230 case 'S':
3231 case 'T':
3232 case 'U':
3233 case 'V':
3234 case 'W':
3235 case 'X':
3236 case 'Y':
3237 case 'Z':
3238 case '_':
3239 case 'a':
3240 case 'b':
3241 case 'c':
3242 case 'd':
3243 case 'e':
3244 case 'f':
3245 case 'g':
3246 case 'h':
3247 case 'i':
3248 case 'j':
3249 case 'k':
3250 case 'l':
3251 case 'm':
3252 case 'n':
3253 case 'o':
3254 case 'p':
3255 case 'q':
3256 case 'r':
3257 case 's':
3258 case 't':
3259 case 'u':
3260 case 'v':
3261 case 'w':
3262 case 'x':
3263 case 'y':
3264 case 'z': goto yy53;
3265 case '\\': goto yy114;
3266 default: goto yy256;
3267 }
3268 yy256:
3269 #line 312 "src/parser.re"
3270 {RETURN(PSI_T_VOID);}
3271 #line 3272 "src/parser.c"
3272 yy257:
3273 yyaccept = 20;
3274 yych = *(P->mrk = ++P->cur);
3275 switch (yych) {
3276 case '0':
3277 case '1':
3278 case '2':
3279 case '3':
3280 case '4':
3281 case '5':
3282 case '6':
3283 case '7':
3284 case '8':
3285 case '9':
3286 case 'A':
3287 case 'B':
3288 case 'C':
3289 case 'D':
3290 case 'E':
3291 case 'F':
3292 case 'G':
3293 case 'H':
3294 case 'I':
3295 case 'J':
3296 case 'K':
3297 case 'L':
3298 case 'M':
3299 case 'N':
3300 case 'O':
3301 case 'P':
3302 case 'Q':
3303 case 'R':
3304 case 'S':
3305 case 'T':
3306 case 'U':
3307 case 'V':
3308 case 'W':
3309 case 'X':
3310 case 'Y':
3311 case 'Z':
3312 case '_':
3313 case 'a':
3314 case 'b':
3315 case 'c':
3316 case 'd':
3317 case 'e':
3318 case 'f':
3319 case 'g':
3320 case 'h':
3321 case 'i':
3322 case 'j':
3323 case 'k':
3324 case 'l':
3325 case 'm':
3326 case 'n':
3327 case 'o':
3328 case 'p':
3329 case 'q':
3330 case 'r':
3331 case 's':
3332 case 't':
3333 case 'u':
3334 case 'v':
3335 case 'w':
3336 case 'x':
3337 case 'y':
3338 case 'z': goto yy53;
3339 case '\\': goto yy114;
3340 default: goto yy258;
3341 }
3342 yy258:
3343 #line 357 "src/parser.re"
3344 {RETURN(PSI_T_ZVAL);}
3345 #line 3346 "src/parser.c"
3346 yy259:
3347 yyaccept = 21;
3348 yych = *(P->mrk = ++P->cur);
3349 switch (yych) {
3350 case '0':
3351 case '1':
3352 case '2':
3353 case '3':
3354 case '4':
3355 case '5':
3356 case '6':
3357 case '7':
3358 case '8':
3359 case '9':
3360 case 'A':
3361 case 'B':
3362 case 'C':
3363 case 'D':
3364 case 'E':
3365 case 'F':
3366 case 'G':
3367 case 'H':
3368 case 'I':
3369 case 'J':
3370 case 'K':
3371 case 'L':
3372 case 'M':
3373 case 'N':
3374 case 'O':
3375 case 'P':
3376 case 'Q':
3377 case 'R':
3378 case 'S':
3379 case 'T':
3380 case 'U':
3381 case 'V':
3382 case 'W':
3383 case 'X':
3384 case 'Y':
3385 case 'Z':
3386 case '_':
3387 case 'a':
3388 case 'b':
3389 case 'c':
3390 case 'd':
3391 case 'e':
3392 case 'f':
3393 case 'g':
3394 case 'h':
3395 case 'i':
3396 case 'j':
3397 case 'k':
3398 case 'l':
3399 case 'm':
3400 case 'n':
3401 case 'o':
3402 case 'p':
3403 case 'q':
3404 case 'r':
3405 case 's':
3406 case 't':
3407 case 'u':
3408 case 'v':
3409 case 'w':
3410 case 'x':
3411 case 'y':
3412 case 'z': goto yy53;
3413 case '\\': goto yy114;
3414 default: goto yy260;
3415 }
3416 yy260:
3417 #line 331 "src/parser.re"
3418 {RETURN(PSI_T_ARRAY);}
3419 #line 3420 "src/parser.c"
3420 yy261:
3421 yyaccept = 5;
3422 yych = *(P->mrk = ++P->cur);
3423 switch (yych) {
3424 case 'L':
3425 case 'l': goto yy311;
3426 default: goto yy54;
3427 }
3428 yy262:
3429 yyaccept = 5;
3430 yych = *(P->mrk = ++P->cur);
3431 switch (yych) {
3432 case 'A':
3433 case 'a': goto yy313;
3434 default: goto yy54;
3435 }
3436 yy263:
3437 yyaccept = 5;
3438 yych = *(P->mrk = ++P->cur);
3439 switch (yych) {
3440 case 'B':
3441 case 'b': goto yy314;
3442 default: goto yy54;
3443 }
3444 yy264:
3445 yyaccept = 5;
3446 yych = *(P->mrk = ++P->cur);
3447 switch (yych) {
3448 case 'A':
3449 case 'a': goto yy315;
3450 default: goto yy54;
3451 }
3452 yy265:
3453 yyaccept = 5;
3454 yych = *(P->mrk = ++P->cur);
3455 switch (yych) {
3456 case 'C':
3457 case 'c': goto yy316;
3458 default: goto yy54;
3459 }
3460 yy266:
3461 yyaccept = 22;
3462 yych = *(P->mrk = ++P->cur);
3463 switch (yych) {
3464 case '0':
3465 case '1':
3466 case '2':
3467 case '3':
3468 case '4':
3469 case '5':
3470 case '6':
3471 case '7':
3472 case '8':
3473 case '9':
3474 case 'A':
3475 case 'B':
3476 case 'C':
3477 case 'D':
3478 case 'E':
3479 case 'F':
3480 case 'G':
3481 case 'H':
3482 case 'I':
3483 case 'J':
3484 case 'K':
3485 case 'L':
3486 case 'M':
3487 case 'N':
3488 case 'O':
3489 case 'P':
3490 case 'Q':
3491 case 'R':
3492 case 'S':
3493 case 'T':
3494 case 'U':
3495 case 'V':
3496 case 'W':
3497 case 'X':
3498 case 'Y':
3499 case 'Z':
3500 case '_':
3501 case 'a':
3502 case 'b':
3503 case 'c':
3504 case 'd':
3505 case 'e':
3506 case 'f':
3507 case 'g':
3508 case 'h':
3509 case 'i':
3510 case 'j':
3511 case 'k':
3512 case 'l':
3513 case 'm':
3514 case 'n':
3515 case 'o':
3516 case 'p':
3517 case 'q':
3518 case 'r':
3519 case 's':
3520 case 't':
3521 case 'u':
3522 case 'v':
3523 case 'w':
3524 case 'x':
3525 case 'y':
3526 case 'z': goto yy53;
3527 case '\\': goto yy114;
3528 default: goto yy267;
3529 }
3530 yy267:
3531 #line 340 "src/parser.re"
3532 {RETURN(PSI_T_CONST);}
3533 #line 3534 "src/parser.c"
3534 yy268:
3535 yyaccept = 23;
3536 yych = *(P->mrk = ++P->cur);
3537 switch (yych) {
3538 case '0':
3539 case '1':
3540 case '2':
3541 case '3':
3542 case '4':
3543 case '5':
3544 case '6':
3545 case '7':
3546 case '8':
3547 case '9':
3548 case 'A':
3549 case 'B':
3550 case 'C':
3551 case 'D':
3552 case 'E':
3553 case 'F':
3554 case 'G':
3555 case 'H':
3556 case 'I':
3557 case 'J':
3558 case 'K':
3559 case 'L':
3560 case 'M':
3561 case 'N':
3562 case 'O':
3563 case 'P':
3564 case 'Q':
3565 case 'R':
3566 case 'S':
3567 case 'T':
3568 case 'U':
3569 case 'V':
3570 case 'W':
3571 case 'X':
3572 case 'Y':
3573 case 'Z':
3574 case '_':
3575 case 'a':
3576 case 'b':
3577 case 'c':
3578 case 'd':
3579 case 'e':
3580 case 'f':
3581 case 'g':
3582 case 'h':
3583 case 'i':
3584 case 'j':
3585 case 'k':
3586 case 'l':
3587 case 'm':
3588 case 'n':
3589 case 'o':
3590 case 'p':
3591 case 'q':
3592 case 'r':
3593 case 's':
3594 case 't':
3595 case 'u':
3596 case 'v':
3597 case 'w':
3598 case 'x':
3599 case 'y':
3600 case 'z': goto yy53;
3601 case '\\': goto yy114;
3602 default: goto yy269;
3603 }
3604 yy269:
3605 #line 358 "src/parser.re"
3606 {RETURN(PSI_T_COUNT);}
3607 #line 3608 "src/parser.c"
3608 yy270:
3609 yyaccept = 5;
3610 yych = *(P->mrk = ++P->cur);
3611 switch (yych) {
3612 case 'E':
3613 case 'e': goto yy318;
3614 default: goto yy54;
3615 }
3616 yy271:
3617 yyaccept = 24;
3618 yych = *(P->mrk = ++P->cur);
3619 switch (yych) {
3620 case '0':
3621 case '1':
3622 case '2':
3623 case '3':
3624 case '4':
3625 case '5':
3626 case '6':
3627 case '7':
3628 case '8':
3629 case '9':
3630 case 'A':
3631 case 'B':
3632 case 'C':
3633 case 'D':
3634 case 'E':
3635 case 'F':
3636 case 'G':
3637 case 'H':
3638 case 'I':
3639 case 'J':
3640 case 'K':
3641 case 'L':
3642 case 'M':
3643 case 'N':
3644 case 'O':
3645 case 'P':
3646 case 'Q':
3647 case 'R':
3648 case 'S':
3649 case 'T':
3650 case 'U':
3651 case 'V':
3652 case 'W':
3653 case 'X':
3654 case 'Y':
3655 case 'Z':
3656 case '_':
3657 case 'a':
3658 case 'b':
3659 case 'c':
3660 case 'd':
3661 case 'e':
3662 case 'f':
3663 case 'g':
3664 case 'h':
3665 case 'i':
3666 case 'j':
3667 case 'k':
3668 case 'l':
3669 case 'm':
3670 case 'n':
3671 case 'o':
3672 case 'p':
3673 case 'q':
3674 case 'r':
3675 case 's':
3676 case 't':
3677 case 'u':
3678 case 'v':
3679 case 'w':
3680 case 'x':
3681 case 'y':
3682 case 'z': goto yy53;
3683 case '\\': goto yy114;
3684 default: goto yy272;
3685 }
3686 yy272:
3687 #line 308 "src/parser.re"
3688 {RETURN(PSI_T_FALSE);}
3689 #line 3690 "src/parser.c"
3690 yy273:
3691 yyaccept = 25;
3692 yych = *(P->mrk = ++P->cur);
3693 switch (yych) {
3694 case '0':
3695 case '1':
3696 case '2':
3697 case '3':
3698 case '4':
3699 case '5':
3700 case '6':
3701 case '7':
3702 case '8':
3703 case '9':
3704 case 'A':
3705 case 'B':
3706 case 'C':
3707 case 'D':
3708 case 'E':
3709 case 'F':
3710 case 'G':
3711 case 'H':
3712 case 'I':
3713 case 'J':
3714 case 'K':
3715 case 'L':
3716 case 'M':
3717 case 'N':
3718 case 'O':
3719 case 'P':
3720 case 'Q':
3721 case 'R':
3722 case 'S':
3723 case 'T':
3724 case 'U':
3725 case 'W':
3726 case 'X':
3727 case 'Y':
3728 case 'Z':
3729 case '_':
3730 case 'a':
3731 case 'b':
3732 case 'c':
3733 case 'd':
3734 case 'e':
3735 case 'f':
3736 case 'g':
3737 case 'h':
3738 case 'i':
3739 case 'j':
3740 case 'k':
3741 case 'l':
3742 case 'm':
3743 case 'n':
3744 case 'o':
3745 case 'p':
3746 case 'q':
3747 case 'r':
3748 case 's':
3749 case 't':
3750 case 'u':
3751 case 'w':
3752 case 'x':
3753 case 'y':
3754 case 'z': goto yy53;
3755 case 'V':
3756 case 'v': goto yy320;
3757 case '\\': goto yy114;
3758 default: goto yy274;
3759 }
3760 yy274:
3761 #line 318 "src/parser.re"
3762 {RETURN(PSI_T_FLOAT);}
3763 #line 3764 "src/parser.c"
3764 yy275:
3765 yyaccept = 5;
3766 yych = *(P->mrk = ++P->cur);
3767 switch (yych) {
3768 case 'I':
3769 case 'i': goto yy321;
3770 default: goto yy54;
3771 }
3772 yy276:
3773 yyaccept = 5;
3774 yych = *(P->mrk = ++P->cur);
3775 switch (yych) {
3776 case '_': goto yy322;
3777 default: goto yy54;
3778 }
3779 yy277:
3780 yyaccept = 5;
3781 yych = *(P->mrk = ++P->cur);
3782 switch (yych) {
3783 case '_': goto yy323;
3784 default: goto yy54;
3785 }
3786 yy278:
3787 yyaccept = 5;
3788 yych = *(P->mrk = ++P->cur);
3789 switch (yych) {
3790 case '_': goto yy324;
3791 default: goto yy54;
3792 }
3793 yy279:
3794 yyaccept = 5;
3795 yych = *(P->mrk = ++P->cur);
3796 switch (yych) {
3797 case 'T':
3798 case 't': goto yy325;
3799 default: goto yy54;
3800 }
3801 yy280:
3802 yyaccept = 5;
3803 yych = *(P->mrk = ++P->cur);
3804 switch (yych) {
3805 case 'L':
3806 case 'l': goto yy327;
3807 default: goto yy54;
3808 }
3809 yy281:
3810 yyaccept = 26;
3811 yych = *(P->mrk = ++P->cur);
3812 switch (yych) {
3813 case '0':
3814 case '1':
3815 case '2':
3816 case '3':
3817 case '4':
3818 case '5':
3819 case '6':
3820 case '7':
3821 case '8':
3822 case '9':
3823 case 'A':
3824 case 'B':
3825 case 'C':
3826 case 'D':
3827 case 'E':
3828 case 'F':
3829 case 'G':
3830 case 'H':
3831 case 'I':
3832 case 'J':
3833 case 'K':
3834 case 'L':
3835 case 'M':
3836 case 'N':
3837 case 'O':
3838 case 'P':
3839 case 'Q':
3840 case 'R':
3841 case 'S':
3842 case 'T':
3843 case 'U':
3844 case 'V':
3845 case 'W':
3846 case 'X':
3847 case 'Y':
3848 case 'Z':
3849 case '_':
3850 case 'a':
3851 case 'b':
3852 case 'c':
3853 case 'd':
3854 case 'e':
3855 case 'f':
3856 case 'g':
3857 case 'h':
3858 case 'i':
3859 case 'j':
3860 case 'k':
3861 case 'l':
3862 case 'm':
3863 case 'n':
3864 case 'o':
3865 case 'p':
3866 case 'q':
3867 case 'r':
3868 case 's':
3869 case 't':
3870 case 'u':
3871 case 'v':
3872 case 'w':
3873 case 'x':
3874 case 'y':
3875 case 'z': goto yy53;
3876 case '\\': goto yy114;
3877 default: goto yy282;
3878 }
3879 yy282:
3880 #line 310 "src/parser.re"
3881 {RETURN(PSI_T_MIXED);}
3882 #line 3883 "src/parser.c"
3883 yy283:
3884 yyaccept = 5;
3885 yych = *(P->mrk = ++P->cur);
3886 switch (yych) {
3887 case 'T':
3888 case 't': goto yy329;
3889 default: goto yy54;
3890 }
3891 yy284:
3892 yyaccept = 5;
3893 yych = *(P->mrk = ++P->cur);
3894 switch (yych) {
3895 case 'L':
3896 case 'l': goto yy331;
3897 default: goto yy54;
3898 }
3899 yy285:
3900 yyaccept = 5;
3901 yych = *(P->mrk = ++P->cur);
3902 switch (yych) {
3903 case 'A':
3904 case 'a': goto yy333;
3905 default: goto yy54;
3906 }
3907 yy286:
3908 yyaccept = 5;
3909 yych = *(P->mrk = ++P->cur);
3910 switch (yych) {
3911 case 'A':
3912 case 'a': goto yy334;
3913 default: goto yy54;
3914 }
3915 yy287:
3916 yyaccept = 5;
3917 yych = *(P->mrk = ++P->cur);
3918 switch (yych) {
3919 case 'S':
3920 case 's': goto yy335;
3921 default: goto yy54;
3922 }
3923 yy288:
3924 yyaccept = 5;
3925 yych = *(P->mrk = ++P->cur);
3926 switch (yych) {
3927 case 'N':
3928 case 'n': goto yy336;
3929 default: goto yy54;
3930 }
3931 yy289:
3932 yyaccept = 27;
3933 yych = *(P->mrk = ++P->cur);
3934 switch (yych) {
3935 case '0':
3936 case '1':
3937 case '2':
3938 case '3':
3939 case '4':
3940 case '5':
3941 case '6':
3942 case '7':
3943 case '8':
3944 case '9':
3945 case 'A':
3946 case 'B':
3947 case 'C':
3948 case 'D':
3949 case 'E':
3950 case 'F':
3951 case 'G':
3952 case 'H':
3953 case 'I':
3954 case 'J':
3955 case 'K':
3956 case 'L':
3957 case 'M':
3958 case 'N':
3959 case 'O':
3960 case 'P':
3961 case 'Q':
3962 case 'R':
3963 case 'S':
3964 case 'T':
3965 case 'U':
3966 case 'V':
3967 case 'W':
3968 case 'X':
3969 case 'Y':
3970 case 'Z':
3971 case '_':
3972 case 'a':
3973 case 'b':
3974 case 'c':
3975 case 'd':
3976 case 'e':
3977 case 'f':
3978 case 'g':
3979 case 'h':
3980 case 'i':
3981 case 'j':
3982 case 'k':
3983 case 'l':
3984 case 'm':
3985 case 'n':
3986 case 'o':
3987 case 'p':
3988 case 'q':
3989 case 'r':
3990 case 's':
3991 case 't':
3992 case 'u':
3993 case 'v':
3994 case 'w':
3995 case 'x':
3996 case 'y':
3997 case 'z': goto yy53;
3998 case '\\': goto yy114;
3999 default: goto yy290;
4000 }
4001 yy290:
4002 #line 315 "src/parser.re"
4003 {RETURN(PSI_T_SHORT);}
4004 #line 4005 "src/parser.c"
4005 yy291:
4006 yyaccept = 5;
4007 yych = *(P->mrk = ++P->cur);
4008 switch (yych) {
4009 case 'D':
4010 case 'd': goto yy338;
4011 default: goto yy54;
4012 }
4013 yy292:
4014 yyaccept = 5;
4015 yych = *(P->mrk = ++P->cur);
4016 switch (yych) {
4017 case 'C':
4018 case 'c': goto yy340;
4019 default: goto yy54;
4020 }
4021 yy293:
4022 yyaccept = 5;
4023 yych = *(P->mrk = ++P->cur);
4024 switch (yych) {
4025 case 'G':
4026 case 'g': goto yy342;
4027 default: goto yy54;
4028 }
4029 yy294:
4030 yyaccept = 5;
4031 yych = *(P->mrk = ++P->cur);
4032 switch (yych) {
4033 case 'N':
4034 case 'n': goto yy344;
4035 default: goto yy54;
4036 }
4037 yy295:
4038 yyaccept = 5;
4039 yych = *(P->mrk = ++P->cur);
4040 switch (yych) {
4041 case 'T':
4042 case 't': goto yy346;
4043 default: goto yy54;
4044 }
4045 yy296:
4046 yyaccept = 5;
4047 yych = *(P->mrk = ++P->cur);
4048 switch (yych) {
4049 case 'L':
4050 case 'l': goto yy348;
4051 default: goto yy54;
4052 }
4053 yy297:
4054 yyaccept = 5;
4055 yych = *(P->mrk = ++P->cur);
4056 switch (yych) {
4057 case 'R':
4058 case 'r': goto yy350;
4059 default: goto yy54;
4060 }
4061 yy298:
4062 yyaccept = 5;
4063 yych = *(P->mrk = ++P->cur);
4064 switch (yych) {
4065 case 'O':
4066 case 'o': goto yy351;
4067 default: goto yy54;
4068 }
4069 yy299:
4070 yyaccept = 5;
4071 yych = *(P->mrk = ++P->cur);
4072 switch (yych) {
4073 case 'O':
4074 case 'o': goto yy352;
4075 default: goto yy54;
4076 }
4077 yy300:
4078 yyaccept = 5;
4079 yych = *(P->mrk = ++P->cur);
4080 switch (yych) {
4081 case 'T':
4082 case 't': goto yy353;
4083 default: goto yy54;
4084 }
4085 yy301:
4086 yyaccept = 5;
4087 yych = *(P->mrk = ++P->cur);
4088 switch (yych) {
4089 case 'J':
4090 case 'j': goto yy355;
4091 default: goto yy54;
4092 }
4093 yy302:
4094 yyaccept = 5;
4095 yych = *(P->mrk = ++P->cur);
4096 switch (yych) {
4097 case 'R':
4098 case 'r': goto yy356;
4099 default: goto yy54;
4100 }
4101 yy303:
4102 yyaccept = 5;
4103 yych = *(P->mrk = ++P->cur);
4104 switch (yych) {
4105 case 'E':
4106 case 'e': goto yy357;
4107 default: goto yy54;
4108 }
4109 yy304:
4110 yyaccept = 5;
4111 yych = *(P->mrk = ++P->cur);
4112 switch (yych) {
4113 case '6': goto yy358;
4114 default: goto yy54;
4115 }
4116 yy305:
4117 yyaccept = 5;
4118 yych = *(P->mrk = ++P->cur);
4119 switch (yych) {
4120 case '2': goto yy359;
4121 default: goto yy54;
4122 }
4123 yy306:
4124 yyaccept = 5;
4125 yych = *(P->mrk = ++P->cur);
4126 switch (yych) {
4127 case '4': goto yy360;
4128 default: goto yy54;
4129 }
4130 yy307:
4131 yyaccept = 5;
4132 yych = *(P->mrk = ++P->cur);
4133 switch (yych) {
4134 case '_': goto yy361;
4135 default: goto yy54;
4136 }
4137 yy308:
4138 yyaccept = 28;
4139 yych = *(P->mrk = ++P->cur);
4140 switch (yych) {
4141 case '0':
4142 case '1':
4143 case '2':
4144 case '3':
4145 case '4':
4146 case '5':
4147 case '6':
4148 case '7':
4149 case '8':
4150 case '9':
4151 case 'A':
4152 case 'B':
4153 case 'C':
4154 case 'D':
4155 case 'E':
4156 case 'F':
4157 case 'G':
4158 case 'H':
4159 case 'I':
4160 case 'J':
4161 case 'K':
4162 case 'L':
4163 case 'M':
4164 case 'N':
4165 case 'O':
4166 case 'P':
4167 case 'Q':
4168 case 'R':
4169 case 'S':
4170 case 'T':
4171 case 'U':
4172 case 'V':
4173 case 'W':
4174 case 'X':
4175 case 'Y':
4176 case 'Z':
4177 case '_':
4178 case 'a':
4179 case 'b':
4180 case 'c':
4181 case 'd':
4182 case 'e':
4183 case 'f':
4184 case 'g':
4185 case 'h':
4186 case 'i':
4187 case 'j':
4188 case 'k':
4189 case 'l':
4190 case 'm':
4191 case 'n':
4192 case 'o':
4193 case 'p':
4194 case 'q':
4195 case 'r':
4196 case 's':
4197 case 't':
4198 case 'u':
4199 case 'v':
4200 case 'w':
4201 case 'x':
4202 case 'y':
4203 case 'z': goto yy53;
4204 case '\\': goto yy114;
4205 default: goto yy309;
4206 }
4207 yy309:
4208 #line 338 "src/parser.re"
4209 {RETURN(PSI_T_UNION);}
4210 #line 4211 "src/parser.c"
4211 yy310:
4212 yyaccept = 5;
4213 yych = *(P->mrk = ++P->cur);
4214 switch (yych) {
4215 case 'N':
4216 case 'n': goto yy362;
4217 default: goto yy54;
4218 }
4219 yy311:
4220 yyaccept = 29;
4221 yych = *(P->mrk = ++P->cur);
4222 switch (yych) {
4223 case '0':
4224 case '1':
4225 case '2':
4226 case '3':
4227 case '4':
4228 case '5':
4229 case '6':
4230 case '7':
4231 case '8':
4232 case '9':
4233 case 'A':
4234 case 'B':
4235 case 'C':
4236 case 'D':
4237 case 'E':
4238 case 'F':
4239 case 'G':
4240 case 'H':
4241 case 'I':
4242 case 'J':
4243 case 'K':
4244 case 'L':
4245 case 'M':
4246 case 'N':
4247 case 'O':
4248 case 'P':
4249 case 'Q':
4250 case 'R':
4251 case 'S':
4252 case 'T':
4253 case 'U':
4254 case 'V':
4255 case 'W':
4256 case 'X':
4257 case 'Y':
4258 case 'Z':
4259 case '_':
4260 case 'a':
4261 case 'b':
4262 case 'c':
4263 case 'd':
4264 case 'e':
4265 case 'f':
4266 case 'g':
4267 case 'h':
4268 case 'i':
4269 case 'j':
4270 case 'k':
4271 case 'l':
4272 case 'm':
4273 case 'n':
4274 case 'o':
4275 case 'p':
4276 case 'q':
4277 case 'r':
4278 case 's':
4279 case 't':
4280 case 'u':
4281 case 'v':
4282 case 'w':
4283 case 'x':
4284 case 'y':
4285 case 'z': goto yy53;
4286 case '\\': goto yy114;
4287 default: goto yy312;
4288 }
4289 yy312:
4290 #line 355 "src/parser.re"
4291 {RETURN(PSI_T_ARRVAL);}
4292 #line 4293 "src/parser.c"
4293 yy313:
4294 yyaccept = 5;
4295 yych = *(P->mrk = ++P->cur);
4296 switch (yych) {
4297 case 'L':
4298 case 'l': goto yy363;
4299 default: goto yy54;
4300 }
4301 yy314:
4302 yyaccept = 5;
4303 yych = *(P->mrk = ++P->cur);
4304 switch (yych) {
4305 case 'L':
4306 case 'l': goto yy365;
4307 default: goto yy54;
4308 }
4309 yy315:
4310 yyaccept = 5;
4311 yych = *(P->mrk = ++P->cur);
4312 switch (yych) {
4313 case 'C':
4314 case 'c': goto yy366;
4315 default: goto yy54;
4316 }
4317 yy316:
4318 yyaccept = 30;
4319 yych = *(P->mrk = ++P->cur);
4320 switch (yych) {
4321 case '0':
4322 case '1':
4323 case '2':
4324 case '3':
4325 case '4':
4326 case '5':
4327 case '6':
4328 case '7':
4329 case '8':
4330 case '9':
4331 case 'A':
4332 case 'B':
4333 case 'C':
4334 case 'D':
4335 case 'E':
4336 case 'F':
4337 case 'G':
4338 case 'H':
4339 case 'I':
4340 case 'J':
4341 case 'K':
4342 case 'L':
4343 case 'M':
4344 case 'N':
4345 case 'O':
4346 case 'P':
4347 case 'Q':
4348 case 'R':
4349 case 'S':
4350 case 'T':
4351 case 'U':
4352 case 'V':
4353 case 'W':
4354 case 'X':
4355 case 'Y':
4356 case 'Z':
4357 case '_':
4358 case 'a':
4359 case 'b':
4360 case 'c':
4361 case 'd':
4362 case 'e':
4363 case 'f':
4364 case 'g':
4365 case 'h':
4366 case 'i':
4367 case 'j':
4368 case 'k':
4369 case 'l':
4370 case 'm':
4371 case 'n':
4372 case 'o':
4373 case 'p':
4374 case 'q':
4375 case 'r':
4376 case 's':
4377 case 't':
4378 case 'u':
4379 case 'v':
4380 case 'w':
4381 case 'x':
4382 case 'y':
4383 case 'z': goto yy53;
4384 case '\\': goto yy114;
4385 default: goto yy317;
4386 }
4387 yy317:
4388 #line 359 "src/parser.re"
4389 {RETURN(PSI_T_CALLOC);}
4390 #line 4391 "src/parser.c"
4391 yy318:
4392 yyaccept = 31;
4393 yych = *(P->mrk = ++P->cur);
4394 switch (yych) {
4395 case '0':
4396 case '1':
4397 case '2':
4398 case '3':
4399 case '4':
4400 case '5':
4401 case '6':
4402 case '7':
4403 case '8':
4404 case '9':
4405 case 'A':
4406 case 'B':
4407 case 'C':
4408 case 'D':
4409 case 'E':
4410 case 'F':
4411 case 'G':
4412 case 'H':
4413 case 'I':
4414 case 'J':
4415 case 'K':
4416 case 'L':
4417 case 'M':
4418 case 'N':
4419 case 'O':
4420 case 'P':
4421 case 'Q':
4422 case 'R':
4423 case 'S':
4424 case 'T':
4425 case 'U':
4426 case 'V':
4427 case 'W':
4428 case 'X':
4429 case 'Y':
4430 case 'Z':
4431 case '_':
4432 case 'a':
4433 case 'b':
4434 case 'c':
4435 case 'd':
4436 case 'e':
4437 case 'f':
4438 case 'g':
4439 case 'h':
4440 case 'i':
4441 case 'j':
4442 case 'k':
4443 case 'l':
4444 case 'm':
4445 case 'n':
4446 case 'o':
4447 case 'p':
4448 case 'q':
4449 case 'r':
4450 case 's':
4451 case 't':
4452 case 'u':
4453 case 'v':
4454 case 'w':
4455 case 'x':
4456 case 'y':
4457 case 'z': goto yy53;
4458 case '\\': goto yy114;
4459 default: goto yy319;
4460 }
4461 yy319:
4462 #line 319 "src/parser.re"
4463 {RETURN(PSI_T_DOUBLE);}
4464 #line 4465 "src/parser.c"
4465 yy320:
4466 yyaccept = 5;
4467 yych = *(P->mrk = ++P->cur);
4468 switch (yych) {
4469 case 'A':
4470 case 'a': goto yy367;
4471 default: goto yy54;
4472 }
4473 yy321:
4474 yyaccept = 5;
4475 yych = *(P->mrk = ++P->cur);
4476 switch (yych) {
4477 case 'O':
4478 case 'o': goto yy368;
4479 default: goto yy54;
4480 }
4481 yy322:
4482 yyaccept = 5;
4483 yych = *(P->mrk = ++P->cur);
4484 switch (yych) {
4485 case 'T':
4486 case 't': goto yy369;
4487 default: goto yy54;
4488 }
4489 yy323:
4490 yyaccept = 5;
4491 yych = *(P->mrk = ++P->cur);
4492 switch (yych) {
4493 case 'T':
4494 case 't': goto yy371;
4495 default: goto yy54;
4496 }
4497 yy324:
4498 yyaccept = 5;
4499 yych = *(P->mrk = ++P->cur);
4500 switch (yych) {
4501 case 'T':
4502 case 't': goto yy373;
4503 default: goto yy54;
4504 }
4505 yy325:
4506 yyaccept = 32;
4507 yych = *(P->mrk = ++P->cur);
4508 switch (yych) {
4509 case '0':
4510 case '1':
4511 case '2':
4512 case '3':
4513 case '4':
4514 case '5':
4515 case '6':
4516 case '7':
4517 case '8':
4518 case '9':
4519 case 'A':
4520 case 'B':
4521 case 'C':
4522 case 'D':
4523 case 'E':
4524 case 'F':
4525 case 'G':
4526 case 'H':
4527 case 'I':
4528 case 'J':
4529 case 'K':
4530 case 'L':
4531 case 'M':
4532 case 'N':
4533 case 'O':
4534 case 'P':
4535 case 'Q':
4536 case 'R':
4537 case 'S':
4538 case 'T':
4539 case 'U':
4540 case 'V':
4541 case 'W':
4542 case 'X':
4543 case 'Y':
4544 case 'Z':
4545 case '_':
4546 case 'a':
4547 case 'b':
4548 case 'c':
4549 case 'd':
4550 case 'e':
4551 case 'f':
4552 case 'g':
4553 case 'h':
4554 case 'i':
4555 case 'j':
4556 case 'k':
4557 case 'l':
4558 case 'm':
4559 case 'n':
4560 case 'o':
4561 case 'p':
4562 case 'q':
4563 case 'r':
4564 case 's':
4565 case 't':
4566 case 'u':
4567 case 'v':
4568 case 'w':
4569 case 'x':
4570 case 'y':
4571 case 'z': goto yy53;
4572 case '\\': goto yy114;
4573 default: goto yy326;
4574 }
4575 yy326:
4576 #line 320 "src/parser.re"
4577 {RETURN(PSI_T_INT8);}
4578 #line 4579 "src/parser.c"
4579 yy327:
4580 yyaccept = 33;
4581 yych = *(P->mrk = ++P->cur);
4582 switch (yych) {
4583 case '0':
4584 case '1':
4585 case '2':
4586 case '3':
4587 case '4':
4588 case '5':
4589 case '6':
4590 case '7':
4591 case '8':
4592 case '9':
4593 case 'A':
4594 case 'B':
4595 case 'C':
4596 case 'D':
4597 case 'E':
4598 case 'F':
4599 case 'G':
4600 case 'H':
4601 case 'I':
4602 case 'J':
4603 case 'K':
4604 case 'L':
4605 case 'M':
4606 case 'N':
4607 case 'O':
4608 case 'P':
4609 case 'Q':
4610 case 'R':
4611 case 'S':
4612 case 'T':
4613 case 'U':
4614 case 'V':
4615 case 'W':
4616 case 'X':
4617 case 'Y':
4618 case 'Z':
4619 case '_':
4620 case 'a':
4621 case 'b':
4622 case 'c':
4623 case 'd':
4624 case 'e':
4625 case 'f':
4626 case 'g':
4627 case 'h':
4628 case 'i':
4629 case 'j':
4630 case 'k':
4631 case 'l':
4632 case 'm':
4633 case 'n':
4634 case 'o':
4635 case 'p':
4636 case 'q':
4637 case 'r':
4638 case 's':
4639 case 't':
4640 case 'u':
4641 case 'v':
4642 case 'w':
4643 case 'x':
4644 case 'y':
4645 case 'z': goto yy53;
4646 case '\\': goto yy114;
4647 default: goto yy328;
4648 }
4649 yy328:
4650 #line 352 "src/parser.re"
4651 {RETURN(PSI_T_INTVAL);}
4652 #line 4653 "src/parser.c"
4653 yy329:
4654 yyaccept = 34;
4655 yych = *(P->mrk = ++P->cur);
4656 switch (yych) {
4657 case '0':
4658 case '1':
4659 case '2':
4660 case '3':
4661 case '4':
4662 case '5':
4663 case '6':
4664 case '7':
4665 case '8':
4666 case '9':
4667 case 'A':
4668 case 'B':
4669 case 'C':
4670 case 'D':
4671 case 'E':
4672 case 'F':
4673 case 'G':
4674 case 'H':
4675 case 'I':
4676 case 'J':
4677 case 'K':
4678 case 'L':
4679 case 'M':
4680 case 'N':
4681 case 'O':
4682 case 'P':
4683 case 'Q':
4684 case 'R':
4685 case 'S':
4686 case 'T':
4687 case 'U':
4688 case 'V':
4689 case 'W':
4690 case 'X':
4691 case 'Y':
4692 case 'Z':
4693 case '_':
4694 case 'a':
4695 case 'b':
4696 case 'c':
4697 case 'd':
4698 case 'e':
4699 case 'f':
4700 case 'g':
4701 case 'h':
4702 case 'i':
4703 case 'j':
4704 case 'k':
4705 case 'l':
4706 case 'm':
4707 case 'n':
4708 case 'o':
4709 case 'p':
4710 case 'q':
4711 case 'r':
4712 case 's':
4713 case 't':
4714 case 'u':
4715 case 'v':
4716 case 'w':
4717 case 'x':
4718 case 'y':
4719 case 'z': goto yy53;
4720 case '\\': goto yy114;
4721 default: goto yy330;
4722 }
4723 yy330:
4724 #line 332 "src/parser.re"
4725 {RETURN(PSI_T_OBJECT);}
4726 #line 4727 "src/parser.c"
4727 yy331:
4728 yyaccept = 35;
4729 yych = *(P->mrk = ++P->cur);
4730 switch (yych) {
4731 case '0':
4732 case '1':
4733 case '2':
4734 case '3':
4735 case '4':
4736 case '5':
4737 case '6':
4738 case '7':
4739 case '8':
4740 case '9':
4741 case 'A':
4742 case 'B':
4743 case 'C':
4744 case 'D':
4745 case 'E':
4746 case 'F':
4747 case 'G':
4748 case 'H':
4749 case 'I':
4750 case 'J':
4751 case 'K':
4752 case 'L':
4753 case 'M':
4754 case 'N':
4755 case 'O':
4756 case 'P':
4757 case 'Q':
4758 case 'R':
4759 case 'S':
4760 case 'T':
4761 case 'U':
4762 case 'V':
4763 case 'W':
4764 case 'X':
4765 case 'Y':
4766 case 'Z':
4767 case '_':
4768 case 'a':
4769 case 'b':
4770 case 'c':
4771 case 'd':
4772 case 'e':
4773 case 'f':
4774 case 'g':
4775 case 'h':
4776 case 'i':
4777 case 'j':
4778 case 'k':
4779 case 'l':
4780 case 'm':
4781 case 'n':
4782 case 'o':
4783 case 'p':
4784 case 'q':
4785 case 'r':
4786 case 's':
4787 case 't':
4788 case 'u':
4789 case 'v':
4790 case 'w':
4791 case 'x':
4792 case 'y':
4793 case 'z': goto yy53;
4794 case '\\': goto yy114;
4795 default: goto yy332;
4796 }
4797 yy332:
4798 #line 356 "src/parser.re"
4799 {RETURN(PSI_T_OBJVAL);}
4800 #line 4801 "src/parser.c"
4801 yy333:
4802 yyaccept = 5;
4803 yych = *(P->mrk = ++P->cur);
4804 switch (yych) {
4805 case 'L':
4806 case 'l': goto yy375;
4807 default: goto yy54;
4808 }
4809 yy334:
4810 yyaccept = 5;
4811 yych = *(P->mrk = ++P->cur);
4812 switch (yych) {
4813 case 'S':
4814 case 's': goto yy377;
4815 default: goto yy54;
4816 }
4817 yy335:
4818 yyaccept = 5;
4819 yych = *(P->mrk = ++P->cur);
4820 switch (yych) {
4821 case 'S':
4822 case 's': goto yy378;
4823 default: goto yy54;
4824 }
4825 yy336:
4826 yyaccept = 36;
4827 yych = *(P->mrk = ++P->cur);
4828 switch (yych) {
4829 case '0':
4830 case '1':
4831 case '2':
4832 case '3':
4833 case '4':
4834 case '5':
4835 case '6':
4836 case '7':
4837 case '8':
4838 case '9':
4839 case 'A':
4840 case 'B':
4841 case 'C':
4842 case 'D':
4843 case 'E':
4844 case 'F':
4845 case 'G':
4846 case 'H':
4847 case 'I':
4848 case 'J':
4849 case 'K':
4850 case 'L':
4851 case 'M':
4852 case 'N':
4853 case 'O':
4854 case 'P':
4855 case 'Q':
4856 case 'R':
4857 case 'S':
4858 case 'T':
4859 case 'U':
4860 case 'V':
4861 case 'W':
4862 case 'X':
4863 case 'Y':
4864 case 'Z':
4865 case '_':
4866 case 'a':
4867 case 'b':
4868 case 'c':
4869 case 'd':
4870 case 'e':
4871 case 'f':
4872 case 'g':
4873 case 'h':
4874 case 'i':
4875 case 'j':
4876 case 'k':
4877 case 'l':
4878 case 'm':
4879 case 'n':
4880 case 'o':
4881 case 'p':
4882 case 'q':
4883 case 'r':
4884 case 's':
4885 case 't':
4886 case 'u':
4887 case 'v':
4888 case 'w':
4889 case 'x':
4890 case 'y':
4891 case 'z': goto yy53;
4892 case '\\': goto yy114;
4893 default: goto yy337;
4894 }
4895 yy337:
4896 #line 346 "src/parser.re"
4897 {RETURN(PSI_T_RETURN);}
4898 #line 4899 "src/parser.c"
4899 yy338:
4900 yyaccept = 37;
4901 yych = *(P->mrk = ++P->cur);
4902 switch (yych) {
4903 case '0':
4904 case '1':
4905 case '2':
4906 case '3':
4907 case '4':
4908 case '5':
4909 case '6':
4910 case '7':
4911 case '8':
4912 case '9':
4913 case 'A':
4914 case 'B':
4915 case 'C':
4916 case 'D':
4917 case 'E':
4918 case 'F':
4919 case 'G':
4920 case 'H':
4921 case 'I':
4922 case 'J':
4923 case 'K':
4924 case 'L':
4925 case 'M':
4926 case 'N':
4927 case 'O':
4928 case 'P':
4929 case 'Q':
4930 case 'R':
4931 case 'S':
4932 case 'T':
4933 case 'U':
4934 case 'V':
4935 case 'W':
4936 case 'X':
4937 case 'Y':
4938 case 'Z':
4939 case '_':
4940 case 'a':
4941 case 'b':
4942 case 'c':
4943 case 'd':
4944 case 'e':
4945 case 'f':
4946 case 'g':
4947 case 'h':
4948 case 'i':
4949 case 'j':
4950 case 'k':
4951 case 'l':
4952 case 'm':
4953 case 'n':
4954 case 'o':
4955 case 'p':
4956 case 'q':
4957 case 'r':
4958 case 's':
4959 case 't':
4960 case 'u':
4961 case 'v':
4962 case 'w':
4963 case 'x':
4964 case 'y':
4965 case 'z': goto yy53;
4966 case '\\': goto yy114;
4967 default: goto yy339;
4968 }
4969 yy339:
4970 #line 329 "src/parser.re"
4971 {RETURN(PSI_T_SIGNED);}
4972 #line 4973 "src/parser.c"
4973 yy340:
4974 yyaccept = 38;
4975 yych = *(P->mrk = ++P->cur);
4976 switch (yych) {
4977 case '0':
4978 case '1':
4979 case '2':
4980 case '3':
4981 case '4':
4982 case '5':
4983 case '6':
4984 case '7':
4985 case '8':
4986 case '9':
4987 case 'A':
4988 case 'B':
4989 case 'C':
4990 case 'D':
4991 case 'E':
4992 case 'F':
4993 case 'G':
4994 case 'H':
4995 case 'I':
4996 case 'J':
4997 case 'K':
4998 case 'L':
4999 case 'M':
5000 case 'N':
5001 case 'O':
5002 case 'P':
5003 case 'Q':
5004 case 'R':
5005 case 'S':
5006 case 'T':
5007 case 'U':
5008 case 'V':
5009 case 'W':
5010 case 'X':
5011 case 'Y':
5012 case 'Z':
5013 case '_':
5014 case 'a':
5015 case 'b':
5016 case 'c':
5017 case 'd':
5018 case 'e':
5019 case 'f':
5020 case 'g':
5021 case 'h':
5022 case 'i':
5023 case 'j':
5024 case 'k':
5025 case 'l':
5026 case 'm':
5027 case 'n':
5028 case 'o':
5029 case 'p':
5030 case 'q':
5031 case 'r':
5032 case 's':
5033 case 't':
5034 case 'u':
5035 case 'v':
5036 case 'w':
5037 case 'x':
5038 case 'y':
5039 case 'z': goto yy53;
5040 case '\\': goto yy114;
5041 default: goto yy341;
5042 }
5043 yy341:
5044 #line 334 "src/parser.re"
5045 {RETURN(PSI_T_STATIC);}
5046 #line 5047 "src/parser.c"
5047 yy342:
5048 yyaccept = 39;
5049 yych = *(P->mrk = ++P->cur);
5050 switch (yych) {
5051 case '0':
5052 case '1':
5053 case '2':
5054 case '3':
5055 case '4':
5056 case '5':
5057 case '6':
5058 case '7':
5059 case '8':
5060 case '9':
5061 case 'A':
5062 case 'B':
5063 case 'C':
5064 case 'D':
5065 case 'E':
5066 case 'F':
5067 case 'G':
5068 case 'H':
5069 case 'I':
5070 case 'J':
5071 case 'K':
5072 case 'L':
5073 case 'M':
5074 case 'N':
5075 case 'O':
5076 case 'P':
5077 case 'Q':
5078 case 'R':
5079 case 'S':
5080 case 'T':
5081 case 'U':
5082 case 'V':
5083 case 'W':
5084 case 'X':
5085 case 'Y':
5086 case 'Z':
5087 case '_':
5088 case 'a':
5089 case 'b':
5090 case 'c':
5091 case 'd':
5092 case 'e':
5093 case 'f':
5094 case 'g':
5095 case 'h':
5096 case 'i':
5097 case 'j':
5098 case 'k':
5099 case 'l':
5100 case 'm':
5101 case 'n':
5102 case 'o':
5103 case 'p':
5104 case 'q':
5105 case 'r':
5106 case 's':
5107 case 't':
5108 case 'u':
5109 case 'v':
5110 case 'w':
5111 case 'x':
5112 case 'y':
5113 case 'z': goto yy53;
5114 case '\\': goto yy114;
5115 default: goto yy343;
5116 }
5117 yy343:
5118 #line 330 "src/parser.re"
5119 {RETURN(PSI_T_STRING);}
5120 #line 5121 "src/parser.c"
5121 yy344:
5122 yyaccept = 40;
5123 yych = *(P->mrk = ++P->cur);
5124 switch (yych) {
5125 case '0':
5126 case '1':
5127 case '2':
5128 case '3':
5129 case '4':
5130 case '5':
5131 case '6':
5132 case '7':
5133 case '8':
5134 case '9':
5135 case 'A':
5136 case 'B':
5137 case 'C':
5138 case 'D':
5139 case 'E':
5140 case 'F':
5141 case 'G':
5142 case 'H':
5143 case 'I':
5144 case 'J':
5145 case 'K':
5146 case 'L':
5147 case 'M':
5148 case 'N':
5149 case 'O':
5150 case 'P':
5151 case 'Q':
5152 case 'R':
5153 case 'S':
5154 case 'T':
5155 case 'U':
5156 case 'V':
5157 case 'W':
5158 case 'X':
5159 case 'Y':
5160 case 'Z':
5161 case '_':
5162 case 'a':
5163 case 'b':
5164 case 'c':
5165 case 'd':
5166 case 'e':
5167 case 'f':
5168 case 'g':
5169 case 'h':
5170 case 'i':
5171 case 'j':
5172 case 'k':
5173 case 'l':
5174 case 'm':
5175 case 'n':
5176 case 'o':
5177 case 'p':
5178 case 'q':
5179 case 'r':
5180 case 's':
5181 case 't':
5182 case 'u':
5183 case 'v':
5184 case 'w':
5185 case 'x':
5186 case 'y':
5187 case 'z': goto yy53;
5188 case '\\': goto yy114;
5189 default: goto yy345;
5190 }
5191 yy345:
5192 #line 349 "src/parser.re"
5193 {RETURN(PSI_T_STRLEN);}
5194 #line 5195 "src/parser.c"
5195 yy346:
5196 yyaccept = 41;
5197 yych = *(P->mrk = ++P->cur);
5198 switch (yych) {
5199 case '0':
5200 case '1':
5201 case '2':
5202 case '3':
5203 case '4':
5204 case '5':
5205 case '6':
5206 case '7':
5207 case '8':
5208 case '9':
5209 case 'A':
5210 case 'B':
5211 case 'C':
5212 case 'D':
5213 case 'E':
5214 case 'F':
5215 case 'G':
5216 case 'H':
5217 case 'I':
5218 case 'J':
5219 case 'K':
5220 case 'L':
5221 case 'M':
5222 case 'N':
5223 case 'O':
5224 case 'P':
5225 case 'Q':
5226 case 'R':
5227 case 'S':
5228 case 'T':
5229 case 'U':
5230 case 'V':
5231 case 'W':
5232 case 'X':
5233 case 'Y':
5234 case 'Z':
5235 case '_':
5236 case 'a':
5237 case 'b':
5238 case 'c':
5239 case 'd':
5240 case 'e':
5241 case 'f':
5242 case 'g':
5243 case 'h':
5244 case 'i':
5245 case 'j':
5246 case 'k':
5247 case 'l':
5248 case 'm':
5249 case 'n':
5250 case 'o':
5251 case 'p':
5252 case 'q':
5253 case 'r':
5254 case 's':
5255 case 't':
5256 case 'u':
5257 case 'v':
5258 case 'w':
5259 case 'x':
5260 case 'y':
5261 case 'z': goto yy53;
5262 case '\\': goto yy114;
5263 default: goto yy347;
5264 }
5265 yy347:
5266 #line 337 "src/parser.re"
5267 {RETURN(PSI_T_STRUCT);}
5268 #line 5269 "src/parser.c"
5269 yy348:
5270 yyaccept = 42;
5271 yych = *(P->mrk = ++P->cur);
5272 switch (yych) {
5273 case '0':
5274 case '1':
5275 case '2':
5276 case '3':
5277 case '4':
5278 case '5':
5279 case '6':
5280 case '7':
5281 case '8':
5282 case '9':
5283 case 'A':
5284 case 'B':
5285 case 'C':
5286 case 'D':
5287 case 'E':
5288 case 'F':
5289 case 'G':
5290 case 'H':
5291 case 'I':
5292 case 'J':
5293 case 'K':
5294 case 'L':
5295 case 'M':
5296 case 'N':
5297 case 'O':
5298 case 'P':
5299 case 'Q':
5300 case 'R':
5301 case 'S':
5302 case 'T':
5303 case 'U':
5304 case 'V':
5305 case 'W':
5306 case 'X':
5307 case 'Y':
5308 case 'Z':
5309 case '_':
5310 case 'a':
5311 case 'b':
5312 case 'c':
5313 case 'd':
5314 case 'e':
5315 case 'f':
5316 case 'g':
5317 case 'h':
5318 case 'i':
5319 case 'j':
5320 case 'k':
5321 case 'l':
5322 case 'm':
5323 case 'n':
5324 case 'o':
5325 case 'p':
5326 case 'q':
5327 case 'r':
5328 case 's':
5329 case 't':
5330 case 'u':
5331 case 'v':
5332 case 'w':
5333 case 'x':
5334 case 'y':
5335 case 'z': goto yy53;
5336 case '\\': goto yy114;
5337 default: goto yy349;
5338 }
5339 yy349:
5340 #line 350 "src/parser.re"
5341 {RETURN(PSI_T_STRVAL);}
5342 #line 5343 "src/parser.c"
5343 yy350:
5344 yyaccept = 5;
5345 yych = *(P->mrk = ++P->cur);
5346 switch (yych) {
5347 case 'A':
5348 case 'a': goto yy379;
5349 default: goto yy54;
5350 }
5351 yy351:
5352 yyaccept = 5;
5353 yych = *(P->mrk = ++P->cur);
5354 switch (yych) {
5355 case 'L':
5356 case 'l': goto yy380;
5357 default: goto yy54;
5358 }
5359 yy352:
5360 yyaccept = 5;
5361 yych = *(P->mrk = ++P->cur);
5362 switch (yych) {
5363 case 'A':
5364 case 'a': goto yy382;
5365 default: goto yy54;
5366 }
5367 yy353:
5368 yyaccept = 43;
5369 yych = *(P->mrk = ++P->cur);
5370 switch (yych) {
5371 case '0':
5372 case '1':
5373 case '2':
5374 case '3':
5375 case '4':
5376 case '5':
5377 case '6':
5378 case '7':
5379 case '8':
5380 case '9':
5381 case 'A':
5382 case 'B':
5383 case 'C':
5384 case 'D':
5385 case 'E':
5386 case 'F':
5387 case 'G':
5388 case 'H':
5389 case 'I':
5390 case 'J':
5391 case 'K':
5392 case 'L':
5393 case 'M':
5394 case 'N':
5395 case 'O':
5396 case 'P':
5397 case 'Q':
5398 case 'R':
5399 case 'S':
5400 case 'T':
5401 case 'U':
5402 case 'V':
5403 case 'W':
5404 case 'X':
5405 case 'Y':
5406 case 'Z':
5407 case '_':
5408 case 'a':
5409 case 'b':
5410 case 'c':
5411 case 'd':
5412 case 'e':
5413 case 'f':
5414 case 'g':
5415 case 'h':
5416 case 'i':
5417 case 'j':
5418 case 'k':
5419 case 'l':
5420 case 'm':
5421 case 'n':
5422 case 'o':
5423 case 'p':
5424 case 'q':
5425 case 'r':
5426 case 's':
5427 case 't':
5428 case 'u':
5429 case 'v':
5430 case 'w':
5431 case 'x':
5432 case 'y':
5433 case 'z': goto yy53;
5434 case '\\': goto yy114;
5435 default: goto yy354;
5436 }
5437 yy354:
5438 #line 363 "src/parser.re"
5439 {RETURN(PSI_T_TO_INT);}
5440 #line 5441 "src/parser.c"
5441 yy355:
5442 yyaccept = 5;
5443 yych = *(P->mrk = ++P->cur);
5444 switch (yych) {
5445 case 'E':
5446 case 'e': goto yy383;
5447 default: goto yy54;
5448 }
5449 yy356:
5450 yyaccept = 5;
5451 yych = *(P->mrk = ++P->cur);
5452 switch (yych) {
5453 case 'I':
5454 case 'i': goto yy384;
5455 default: goto yy54;
5456 }
5457 yy357:
5458 yyaccept = 5;
5459 yych = *(P->mrk = ++P->cur);
5460 switch (yych) {
5461 case 'F':
5462 case 'f': goto yy385;
5463 default: goto yy54;
5464 }
5465 yy358:
5466 yyaccept = 5;
5467 yych = *(P->mrk = ++P->cur);
5468 switch (yych) {
5469 case '_': goto yy387;
5470 default: goto yy54;
5471 }
5472 yy359:
5473 yyaccept = 5;
5474 yych = *(P->mrk = ++P->cur);
5475 switch (yych) {
5476 case '_': goto yy388;
5477 default: goto yy54;
5478 }
5479 yy360:
5480 yyaccept = 5;
5481 yych = *(P->mrk = ++P->cur);
5482 switch (yych) {
5483 case '_': goto yy389;
5484 default: goto yy54;
5485 }
5486 yy361:
5487 yyaccept = 5;
5488 yych = *(P->mrk = ++P->cur);
5489 switch (yych) {
5490 case 'T':
5491 case 't': goto yy390;
5492 default: goto yy54;
5493 }
5494 yy362:
5495 yyaccept = 5;
5496 yych = *(P->mrk = ++P->cur);
5497 switch (yych) {
5498 case 'E':
5499 case 'e': goto yy392;
5500 default: goto yy54;
5501 }
5502 yy363:
5503 yyaccept = 44;
5504 yych = *(P->mrk = ++P->cur);
5505 switch (yych) {
5506 case '0':
5507 case '1':
5508 case '2':
5509 case '3':
5510 case '4':
5511 case '5':
5512 case '6':
5513 case '7':
5514 case '8':
5515 case '9':
5516 case 'A':
5517 case 'B':
5518 case 'C':
5519 case 'D':
5520 case 'E':
5521 case 'F':
5522 case 'G':
5523 case 'H':
5524 case 'I':
5525 case 'J':
5526 case 'K':
5527 case 'L':
5528 case 'M':
5529 case 'N':
5530 case 'O':
5531 case 'P':
5532 case 'Q':
5533 case 'R':
5534 case 'S':
5535 case 'T':
5536 case 'U':
5537 case 'V':
5538 case 'W':
5539 case 'X':
5540 case 'Y':
5541 case 'Z':
5542 case '_':
5543 case 'a':
5544 case 'b':
5545 case 'c':
5546 case 'd':
5547 case 'e':
5548 case 'f':
5549 case 'g':
5550 case 'h':
5551 case 'i':
5552 case 'j':
5553 case 'k':
5554 case 'l':
5555 case 'm':
5556 case 'n':
5557 case 'o':
5558 case 'p':
5559 case 'q':
5560 case 'r':
5561 case 's':
5562 case 't':
5563 case 'u':
5564 case 'v':
5565 case 'w':
5566 case 'x':
5567 case 'y':
5568 case 'z': goto yy53;
5569 case '\\': goto yy114;
5570 default: goto yy364;
5571 }
5572 yy364:
5573 #line 354 "src/parser.re"
5574 {RETURN(PSI_T_BOOLVAL);}
5575 #line 5576 "src/parser.c"
5576 yy365:
5577 yyaccept = 5;
5578 yych = *(P->mrk = ++P->cur);
5579 switch (yych) {
5580 case 'E':
5581 case 'e': goto yy393;
5582 default: goto yy54;
5583 }
5584 yy366:
5585 yyaccept = 5;
5586 yych = *(P->mrk = ++P->cur);
5587 switch (yych) {
5588 case 'K':
5589 case 'k': goto yy395;
5590 default: goto yy54;
5591 }
5592 yy367:
5593 yyaccept = 5;
5594 yych = *(P->mrk = ++P->cur);
5595 switch (yych) {
5596 case 'L':
5597 case 'l': goto yy397;
5598 default: goto yy54;
5599 }
5600 yy368:
5601 yyaccept = 5;
5602 yych = *(P->mrk = ++P->cur);
5603 switch (yych) {
5604 case 'N':
5605 case 'n': goto yy399;
5606 default: goto yy54;
5607 }
5608 yy369:
5609 yyaccept = 45;
5610 yych = *(P->mrk = ++P->cur);
5611 switch (yych) {
5612 case '0':
5613 case '1':
5614 case '2':
5615 case '3':
5616 case '4':
5617 case '5':
5618 case '6':
5619 case '7':
5620 case '8':
5621 case '9':
5622 case 'A':
5623 case 'B':
5624 case 'C':
5625 case 'D':
5626 case 'E':
5627 case 'F':
5628 case 'G':
5629 case 'H':
5630 case 'I':
5631 case 'J':
5632 case 'K':
5633 case 'L':
5634 case 'M':
5635 case 'N':
5636 case 'O':
5637 case 'P':
5638 case 'Q':
5639 case 'R':
5640 case 'S':
5641 case 'T':
5642 case 'U':
5643 case 'V':
5644 case 'W':
5645 case 'X':
5646 case 'Y':
5647 case 'Z':
5648 case '_':
5649 case 'a':
5650 case 'b':
5651 case 'c':
5652 case 'd':
5653 case 'e':
5654 case 'f':
5655 case 'g':
5656 case 'h':
5657 case 'i':
5658 case 'j':
5659 case 'k':
5660 case 'l':
5661 case 'm':
5662 case 'n':
5663 case 'o':
5664 case 'p':
5665 case 'q':
5666 case 'r':
5667 case 's':
5668 case 't':
5669 case 'u':
5670 case 'v':
5671 case 'w':
5672 case 'x':
5673 case 'y':
5674 case 'z': goto yy53;
5675 case '\\': goto yy114;
5676 default: goto yy370;
5677 }
5678 yy370:
5679 #line 322 "src/parser.re"
5680 {RETURN(PSI_T_INT16);}
5681 #line 5682 "src/parser.c"
5682 yy371:
5683 yyaccept = 46;
5684 yych = *(P->mrk = ++P->cur);
5685 switch (yych) {
5686 case '0':
5687 case '1':
5688 case '2':
5689 case '3':
5690 case '4':
5691 case '5':
5692 case '6':
5693 case '7':
5694 case '8':
5695 case '9':
5696 case 'A':
5697 case 'B':
5698 case 'C':
5699 case 'D':
5700 case 'E':
5701 case 'F':
5702 case 'G':
5703 case 'H':
5704 case 'I':
5705 case 'J':
5706 case 'K':
5707 case 'L':
5708 case 'M':
5709 case 'N':
5710 case 'O':
5711 case 'P':
5712 case 'Q':
5713 case 'R':
5714 case 'S':
5715 case 'T':
5716 case 'U':
5717 case 'V':
5718 case 'W':
5719 case 'X':
5720 case 'Y':
5721 case 'Z':
5722 case '_':
5723 case 'a':
5724 case 'b':
5725 case 'c':
5726 case 'd':
5727 case 'e':
5728 case 'f':
5729 case 'g':
5730 case 'h':
5731 case 'i':
5732 case 'j':
5733 case 'k':
5734 case 'l':
5735 case 'm':
5736 case 'n':
5737 case 'o':
5738 case 'p':
5739 case 'q':
5740 case 'r':
5741 case 's':
5742 case 't':
5743 case 'u':
5744 case 'v':
5745 case 'w':
5746 case 'x':
5747 case 'y':
5748 case 'z': goto yy53;
5749 case '\\': goto yy114;
5750 default: goto yy372;
5751 }
5752 yy372:
5753 #line 324 "src/parser.re"
5754 {RETURN(PSI_T_INT32);}
5755 #line 5756 "src/parser.c"
5756 yy373:
5757 yyaccept = 47;
5758 yych = *(P->mrk = ++P->cur);
5759 switch (yych) {
5760 case '0':
5761 case '1':
5762 case '2':
5763 case '3':
5764 case '4':
5765 case '5':
5766 case '6':
5767 case '7':
5768 case '8':
5769 case '9':
5770 case 'A':
5771 case 'B':
5772 case 'C':
5773 case 'D':
5774 case 'E':
5775 case 'F':
5776 case 'G':
5777 case 'H':
5778 case 'I':
5779 case 'J':
5780 case 'K':
5781 case 'L':
5782 case 'M':
5783 case 'N':
5784 case 'O':
5785 case 'P':
5786 case 'Q':
5787 case 'R':
5788 case 'S':
5789 case 'T':
5790 case 'U':
5791 case 'V':
5792 case 'W':
5793 case 'X':
5794 case 'Y':
5795 case 'Z':
5796 case '_':
5797 case 'a':
5798 case 'b':
5799 case 'c':
5800 case 'd':
5801 case 'e':
5802 case 'f':
5803 case 'g':
5804 case 'h':
5805 case 'i':
5806 case 'j':
5807 case 'k':
5808 case 'l':
5809 case 'm':
5810 case 'n':
5811 case 'o':
5812 case 'p':
5813 case 'q':
5814 case 'r':
5815 case 's':
5816 case 't':
5817 case 'u':
5818 case 'v':
5819 case 'w':
5820 case 'x':
5821 case 'y':
5822 case 'z': goto yy53;
5823 case '\\': goto yy114;
5824 default: goto yy374;
5825 }
5826 yy374:
5827 #line 326 "src/parser.re"
5828 {RETURN(PSI_T_INT64);}
5829 #line 5830 "src/parser.c"
5830 yy375:
5831 yyaccept = 48;
5832 yych = *(P->mrk = ++P->cur);
5833 switch (yych) {
5834 case '0':
5835 case '1':
5836 case '2':
5837 case '3':
5838 case '4':
5839 case '5':
5840 case '6':
5841 case '7':
5842 case '8':
5843 case '9':
5844 case 'A':
5845 case 'B':
5846 case 'C':
5847 case 'D':
5848 case 'E':
5849 case 'F':
5850 case 'G':
5851 case 'H':
5852 case 'I':
5853 case 'J':
5854 case 'K':
5855 case 'L':
5856 case 'M':
5857 case 'N':
5858 case 'O':
5859 case 'P':
5860 case 'Q':
5861 case 'R':
5862 case 'S':
5863 case 'T':
5864 case 'U':
5865 case 'V':
5866 case 'W':
5867 case 'X':
5868 case 'Y':
5869 case 'Z':
5870 case '_':
5871 case 'a':
5872 case 'b':
5873 case 'c':
5874 case 'd':
5875 case 'e':
5876 case 'f':
5877 case 'g':
5878 case 'h':
5879 case 'i':
5880 case 'j':
5881 case 'k':
5882 case 'l':
5883 case 'm':
5884 case 'n':
5885 case 'o':
5886 case 'p':
5887 case 'q':
5888 case 'r':
5889 case 's':
5890 case 't':
5891 case 'u':
5892 case 'v':
5893 case 'w':
5894 case 'x':
5895 case 'y':
5896 case 'z': goto yy53;
5897 case '\\': goto yy114;
5898 default: goto yy376;
5899 }
5900 yy376:
5901 #line 351 "src/parser.re"
5902 {RETURN(PSI_T_PATHVAL);}
5903 #line 5904 "src/parser.c"
5904 yy377:
5905 yyaccept = 5;
5906 yych = *(P->mrk = ++P->cur);
5907 switch (yych) {
5908 case 'S':
5909 case 's': goto yy401;
5910 default: goto yy54;
5911 }
5912 yy378:
5913 yyaccept = 5;
5914 yych = *(P->mrk = ++P->cur);
5915 switch (yych) {
5916 case 'E':
5917 case 'e': goto yy402;
5918 default: goto yy54;
5919 }
5920 yy379:
5921 yyaccept = 5;
5922 yych = *(P->mrk = ++P->cur);
5923 switch (yych) {
5924 case 'Y':
5925 case 'y': goto yy403;
5926 default: goto yy54;
5927 }
5928 yy380:
5929 yyaccept = 49;
5930 yych = *(P->mrk = ++P->cur);
5931 switch (yych) {
5932 case '0':
5933 case '1':
5934 case '2':
5935 case '3':
5936 case '4':
5937 case '5':
5938 case '6':
5939 case '7':
5940 case '8':
5941 case '9':
5942 case 'A':
5943 case 'B':
5944 case 'C':
5945 case 'D':
5946 case 'E':
5947 case 'F':
5948 case 'G':
5949 case 'H':
5950 case 'I':
5951 case 'J':
5952 case 'K':
5953 case 'L':
5954 case 'M':
5955 case 'N':
5956 case 'O':
5957 case 'P':
5958 case 'Q':
5959 case 'R':
5960 case 'S':
5961 case 'T':
5962 case 'U':
5963 case 'V':
5964 case 'W':
5965 case 'X':
5966 case 'Y':
5967 case 'Z':
5968 case '_':
5969 case 'a':
5970 case 'b':
5971 case 'c':
5972 case 'd':
5973 case 'e':
5974 case 'f':
5975 case 'g':
5976 case 'h':
5977 case 'i':
5978 case 'j':
5979 case 'k':
5980 case 'l':
5981 case 'm':
5982 case 'n':
5983 case 'o':
5984 case 'p':
5985 case 'q':
5986 case 'r':
5987 case 's':
5988 case 't':
5989 case 'u':
5990 case 'v':
5991 case 'w':
5992 case 'x':
5993 case 'y':
5994 case 'z': goto yy53;
5995 case '\\': goto yy114;
5996 default: goto yy381;
5997 }
5998 yy381:
5999 #line 365 "src/parser.re"
6000 {RETURN(PSI_T_TO_BOOL);}
6001 #line 6002 "src/parser.c"
6002 yy382:
6003 yyaccept = 5;
6004 yych = *(P->mrk = ++P->cur);
6005 switch (yych) {
6006 case 'T':
6007 case 't': goto yy405;
6008 default: goto yy54;
6009 }
6010 yy383:
6011 yyaccept = 5;
6012 yych = *(P->mrk = ++P->cur);
6013 switch (yych) {
6014 case 'C':
6015 case 'c': goto yy407;
6016 default: goto yy54;
6017 }
6018 yy384:
6019 yyaccept = 5;
6020 yych = *(P->mrk = ++P->cur);
6021 switch (yych) {
6022 case 'N':
6023 case 'n': goto yy408;
6024 default: goto yy54;
6025 }
6026 yy385:
6027 yyaccept = 50;
6028 yych = *(P->mrk = ++P->cur);
6029 switch (yych) {
6030 case '0':
6031 case '1':
6032 case '2':
6033 case '3':
6034 case '4':
6035 case '5':
6036 case '6':
6037 case '7':
6038 case '8':
6039 case '9':
6040 case 'A':
6041 case 'B':
6042 case 'C':
6043 case 'D':
6044 case 'E':
6045 case 'F':
6046 case 'G':
6047 case 'H':
6048 case 'I':
6049 case 'J':
6050 case 'K':
6051 case 'L':
6052 case 'M':
6053 case 'N':
6054 case 'O':
6055 case 'P':
6056 case 'Q':
6057 case 'R':
6058 case 'S':
6059 case 'T':
6060 case 'U':
6061 case 'V':
6062 case 'W':
6063 case 'X':
6064 case 'Y':
6065 case 'Z':
6066 case '_':
6067 case 'a':
6068 case 'b':
6069 case 'c':
6070 case 'd':
6071 case 'e':
6072 case 'f':
6073 case 'g':
6074 case 'h':
6075 case 'i':
6076 case 'j':
6077 case 'k':
6078 case 'l':
6079 case 'm':
6080 case 'n':
6081 case 'o':
6082 case 'p':
6083 case 'q':
6084 case 'r':
6085 case 's':
6086 case 't':
6087 case 'u':
6088 case 'v':
6089 case 'w':
6090 case 'x':
6091 case 'y':
6092 case 'z': goto yy53;
6093 case '\\': goto yy114;
6094 default: goto yy386;
6095 }
6096 yy386:
6097 #line 336 "src/parser.re"
6098 {RETURN(PSI_T_TYPEDEF);}
6099 #line 6100 "src/parser.c"
6100 yy387:
6101 yyaccept = 5;
6102 yych = *(P->mrk = ++P->cur);
6103 switch (yych) {
6104 case 'T':
6105 case 't': goto yy409;
6106 default: goto yy54;
6107 }
6108 yy388:
6109 yyaccept = 5;
6110 yych = *(P->mrk = ++P->cur);
6111 switch (yych) {
6112 case 'T':
6113 case 't': goto yy411;
6114 default: goto yy54;
6115 }
6116 yy389:
6117 yyaccept = 5;
6118 yych = *(P->mrk = ++P->cur);
6119 switch (yych) {
6120 case 'T':
6121 case 't': goto yy413;
6122 default: goto yy54;
6123 }
6124 yy390:
6125 yyaccept = 51;
6126 yych = *(P->mrk = ++P->cur);
6127 switch (yych) {
6128 case '0':
6129 case '1':
6130 case '2':
6131 case '3':
6132 case '4':
6133 case '5':
6134 case '6':
6135 case '7':
6136 case '8':
6137 case '9':
6138 case 'A':
6139 case 'B':
6140 case 'C':
6141 case 'D':
6142 case 'E':
6143 case 'F':
6144 case 'G':
6145 case 'H':
6146 case 'I':
6147 case 'J':
6148 case 'K':
6149 case 'L':
6150 case 'M':
6151 case 'N':
6152 case 'O':
6153 case 'P':
6154 case 'Q':
6155 case 'R':
6156 case 'S':
6157 case 'T':
6158 case 'U':
6159 case 'V':
6160 case 'W':
6161 case 'X':
6162 case 'Y':
6163 case 'Z':
6164 case '_':
6165 case 'a':
6166 case 'b':
6167 case 'c':
6168 case 'd':
6169 case 'e':
6170 case 'f':
6171 case 'g':
6172 case 'h':
6173 case 'i':
6174 case 'j':
6175 case 'k':
6176 case 'l':
6177 case 'm':
6178 case 'n':
6179 case 'o':
6180 case 'p':
6181 case 'q':
6182 case 'r':
6183 case 's':
6184 case 't':
6185 case 'u':
6186 case 'v':
6187 case 'w':
6188 case 'x':
6189 case 'y':
6190 case 'z': goto yy53;
6191 case '\\': goto yy114;
6192 default: goto yy391;
6193 }
6194 yy391:
6195 #line 321 "src/parser.re"
6196 {RETURN(PSI_T_UINT8);}
6197 #line 6198 "src/parser.c"
6198 yy392:
6199 yyaccept = 5;
6200 yych = *(P->mrk = ++P->cur);
6201 switch (yych) {
6202 case 'D':
6203 case 'd': goto yy415;
6204 default: goto yy54;
6205 }
6206 yy393:
6207 yyaccept = 52;
6208 yych = *(P->mrk = ++P->cur);
6209 switch (yych) {
6210 case '0':
6211 case '1':
6212 case '2':
6213 case '3':
6214 case '4':
6215 case '5':
6216 case '6':
6217 case '7':
6218 case '8':
6219 case '9':
6220 case 'A':
6221 case 'B':
6222 case 'C':
6223 case 'D':
6224 case 'E':
6225 case 'F':
6226 case 'G':
6227 case 'H':
6228 case 'I':
6229 case 'J':
6230 case 'K':
6231 case 'L':
6232 case 'M':
6233 case 'N':
6234 case 'O':
6235 case 'P':
6236 case 'Q':
6237 case 'R':
6238 case 'S':
6239 case 'T':
6240 case 'U':
6241 case 'V':
6242 case 'W':
6243 case 'X':
6244 case 'Y':
6245 case 'Z':
6246 case '_':
6247 case 'a':
6248 case 'b':
6249 case 'c':
6250 case 'd':
6251 case 'e':
6252 case 'f':
6253 case 'g':
6254 case 'h':
6255 case 'i':
6256 case 'j':
6257 case 'k':
6258 case 'l':
6259 case 'm':
6260 case 'n':
6261 case 'o':
6262 case 'p':
6263 case 'q':
6264 case 'r':
6265 case 's':
6266 case 't':
6267 case 'u':
6268 case 'v':
6269 case 'w':
6270 case 'x':
6271 case 'y':
6272 case 'z': goto yy53;
6273 case '\\': goto yy114;
6274 default: goto yy394;
6275 }
6276 yy394:
6277 #line 311 "src/parser.re"
6278 {RETURN(PSI_T_CALLABLE);}
6279 #line 6280 "src/parser.c"
6280 yy395:
6281 yyaccept = 53;
6282 yych = *(P->mrk = ++P->cur);
6283 switch (yych) {
6284 case '0':
6285 case '1':
6286 case '2':
6287 case '3':
6288 case '4':
6289 case '5':
6290 case '6':
6291 case '7':
6292 case '8':
6293 case '9':
6294 case 'A':
6295 case 'B':
6296 case 'C':
6297 case 'D':
6298 case 'E':
6299 case 'F':
6300 case 'G':
6301 case 'H':
6302 case 'I':
6303 case 'J':
6304 case 'K':
6305 case 'L':
6306 case 'M':
6307 case 'N':
6308 case 'O':
6309 case 'P':
6310 case 'Q':
6311 case 'R':
6312 case 'S':
6313 case 'T':
6314 case 'U':
6315 case 'V':
6316 case 'W':
6317 case 'X':
6318 case 'Y':
6319 case 'Z':
6320 case '_':
6321 case 'a':
6322 case 'b':
6323 case 'c':
6324 case 'd':
6325 case 'e':
6326 case 'f':
6327 case 'g':
6328 case 'h':
6329 case 'i':
6330 case 'j':
6331 case 'k':
6332 case 'l':
6333 case 'm':
6334 case 'n':
6335 case 'o':
6336 case 'p':
6337 case 'q':
6338 case 'r':
6339 case 's':
6340 case 't':
6341 case 'u':
6342 case 'v':
6343 case 'w':
6344 case 'x':
6345 case 'y':
6346 case 'z': goto yy53;
6347 case '\\': goto yy114;
6348 default: goto yy396;
6349 }
6350 yy396:
6351 #line 333 "src/parser.re"
6352 {RETURN(PSI_T_CALLBACK);}
6353 #line 6354 "src/parser.c"
6354 yy397:
6355 yyaccept = 54;
6356 yych = *(P->mrk = ++P->cur);
6357 switch (yych) {
6358 case '0':
6359 case '1':
6360 case '2':
6361 case '3':
6362 case '4':
6363 case '5':
6364 case '6':
6365 case '7':
6366 case '8':
6367 case '9':
6368 case 'A':
6369 case 'B':
6370 case 'C':
6371 case 'D':
6372 case 'E':
6373 case 'F':
6374 case 'G':
6375 case 'H':
6376 case 'I':
6377 case 'J':
6378 case 'K':
6379 case 'L':
6380 case 'M':
6381 case 'N':
6382 case 'O':
6383 case 'P':
6384 case 'Q':
6385 case 'R':
6386 case 'S':
6387 case 'T':
6388 case 'U':
6389 case 'V':
6390 case 'W':
6391 case 'X':
6392 case 'Y':
6393 case 'Z':
6394 case '_':
6395 case 'a':
6396 case 'b':
6397 case 'c':
6398 case 'd':
6399 case 'e':
6400 case 'f':
6401 case 'g':
6402 case 'h':
6403 case 'i':
6404 case 'j':
6405 case 'k':
6406 case 'l':
6407 case 'm':
6408 case 'n':
6409 case 'o':
6410 case 'p':
6411 case 'q':
6412 case 'r':
6413 case 's':
6414 case 't':
6415 case 'u':
6416 case 'v':
6417 case 'w':
6418 case 'x':
6419 case 'y':
6420 case 'z': goto yy53;
6421 case '\\': goto yy114;
6422 default: goto yy398;
6423 }
6424 yy398:
6425 #line 353 "src/parser.re"
6426 {RETURN(PSI_T_FLOATVAL);}
6427 #line 6428 "src/parser.c"
6428 yy399:
6429 yyaccept = 55;
6430 yych = *(P->mrk = ++P->cur);
6431 switch (yych) {
6432 case '0':
6433 case '1':
6434 case '2':
6435 case '3':
6436 case '4':
6437 case '5':
6438 case '6':
6439 case '7':
6440 case '8':
6441 case '9':
6442 case 'A':
6443 case 'B':
6444 case 'C':
6445 case 'D':
6446 case 'E':
6447 case 'F':
6448 case 'G':
6449 case 'H':
6450 case 'I':
6451 case 'J':
6452 case 'K':
6453 case 'L':
6454 case 'M':
6455 case 'N':
6456 case 'O':
6457 case 'P':
6458 case 'Q':
6459 case 'R':
6460 case 'S':
6461 case 'T':
6462 case 'U':
6463 case 'V':
6464 case 'W':
6465 case 'X':
6466 case 'Y':
6467 case 'Z':
6468 case '_':
6469 case 'a':
6470 case 'b':
6471 case 'c':
6472 case 'd':
6473 case 'e':
6474 case 'f':
6475 case 'g':
6476 case 'h':
6477 case 'i':
6478 case 'j':
6479 case 'k':
6480 case 'l':
6481 case 'm':
6482 case 'n':
6483 case 'o':
6484 case 'p':
6485 case 'q':
6486 case 'r':
6487 case 's':
6488 case 't':
6489 case 'u':
6490 case 'v':
6491 case 'w':
6492 case 'x':
6493 case 'y':
6494 case 'z': goto yy53;
6495 case '\\': goto yy114;
6496 default: goto yy400;
6497 }
6498 yy400:
6499 #line 335 "src/parser.re"
6500 {RETURN(PSI_T_FUNCTION);}
6501 #line 6502 "src/parser.c"
6502 yy401:
6503 yyaccept = 5;
6504 yych = *(P->mrk = ++P->cur);
6505 switch (yych) {
6506 case 'E':
6507 case 'e': goto yy417;
6508 default: goto yy54;
6509 }
6510 yy402:
6511 yyaccept = 5;
6512 yych = *(P->mrk = ++P->cur);
6513 switch (yych) {
6514 case 'R':
6515 case 'r': goto yy418;
6516 default: goto yy54;
6517 }
6518 yy403:
6519 yyaccept = 56;
6520 yych = *(P->mrk = ++P->cur);
6521 switch (yych) {
6522 case '0':
6523 case '1':
6524 case '2':
6525 case '3':
6526 case '4':
6527 case '5':
6528 case '6':
6529 case '7':
6530 case '8':
6531 case '9':
6532 case 'A':
6533 case 'B':
6534 case 'C':
6535 case 'D':
6536 case 'E':
6537 case 'F':
6538 case 'G':
6539 case 'H':
6540 case 'I':
6541 case 'J':
6542 case 'K':
6543 case 'L':
6544 case 'M':
6545 case 'N':
6546 case 'O':
6547 case 'P':
6548 case 'Q':
6549 case 'R':
6550 case 'S':
6551 case 'T':
6552 case 'U':
6553 case 'V':
6554 case 'W':
6555 case 'X':
6556 case 'Y':
6557 case 'Z':
6558 case '_':
6559 case 'a':
6560 case 'b':
6561 case 'c':
6562 case 'd':
6563 case 'e':
6564 case 'f':
6565 case 'g':
6566 case 'h':
6567 case 'i':
6568 case 'j':
6569 case 'k':
6570 case 'l':
6571 case 'm':
6572 case 'n':
6573 case 'o':
6574 case 'p':
6575 case 'q':
6576 case 'r':
6577 case 's':
6578 case 't':
6579 case 'u':
6580 case 'v':
6581 case 'w':
6582 case 'x':
6583 case 'y':
6584 case 'z': goto yy53;
6585 case '\\': goto yy114;
6586 default: goto yy404;
6587 }
6588 yy404:
6589 #line 361 "src/parser.re"
6590 {RETURN(PSI_T_TO_ARRAY);}
6591 #line 6592 "src/parser.c"
6592 yy405:
6593 yyaccept = 57;
6594 yych = *(P->mrk = ++P->cur);
6595 switch (yych) {
6596 case '0':
6597 case '1':
6598 case '2':
6599 case '3':
6600 case '4':
6601 case '5':
6602 case '6':
6603 case '7':
6604 case '8':
6605 case '9':
6606 case 'A':
6607 case 'B':
6608 case 'C':
6609 case 'D':
6610 case 'E':
6611 case 'F':
6612 case 'G':
6613 case 'H':
6614 case 'I':
6615 case 'J':
6616 case 'K':
6617 case 'L':
6618 case 'M':
6619 case 'N':
6620 case 'O':
6621 case 'P':
6622 case 'Q':
6623 case 'R':
6624 case 'S':
6625 case 'T':
6626 case 'U':
6627 case 'V':
6628 case 'W':
6629 case 'X':
6630 case 'Y':
6631 case 'Z':
6632 case '_':
6633 case 'a':
6634 case 'b':
6635 case 'c':
6636 case 'd':
6637 case 'e':
6638 case 'f':
6639 case 'g':
6640 case 'h':
6641 case 'i':
6642 case 'j':
6643 case 'k':
6644 case 'l':
6645 case 'm':
6646 case 'n':
6647 case 'o':
6648 case 'p':
6649 case 'q':
6650 case 'r':
6651 case 's':
6652 case 't':
6653 case 'u':
6654 case 'v':
6655 case 'w':
6656 case 'x':
6657 case 'y':
6658 case 'z': goto yy53;
6659 case '\\': goto yy114;
6660 default: goto yy406;
6661 }
6662 yy406:
6663 #line 364 "src/parser.re"
6664 {RETURN(PSI_T_TO_FLOAT);}
6665 #line 6666 "src/parser.c"
6666 yy407:
6667 yyaccept = 5;
6668 yych = *(P->mrk = ++P->cur);
6669 switch (yych) {
6670 case 'T':
6671 case 't': goto yy419;
6672 default: goto yy54;
6673 }
6674 yy408:
6675 yyaccept = 5;
6676 yych = *(P->mrk = ++P->cur);
6677 switch (yych) {
6678 case 'G':
6679 case 'g': goto yy421;
6680 default: goto yy54;
6681 }
6682 yy409:
6683 yyaccept = 58;
6684 yych = *(P->mrk = ++P->cur);
6685 switch (yych) {
6686 case '0':
6687 case '1':
6688 case '2':
6689 case '3':
6690 case '4':
6691 case '5':
6692 case '6':
6693 case '7':
6694 case '8':
6695 case '9':
6696 case 'A':
6697 case 'B':
6698 case 'C':
6699 case 'D':
6700 case 'E':
6701 case 'F':
6702 case 'G':
6703 case 'H':
6704 case 'I':
6705 case 'J':
6706 case 'K':
6707 case 'L':
6708 case 'M':
6709 case 'N':
6710 case 'O':
6711 case 'P':
6712 case 'Q':
6713 case 'R':
6714 case 'S':
6715 case 'T':
6716 case 'U':
6717 case 'V':
6718 case 'W':
6719 case 'X':
6720 case 'Y':
6721 case 'Z':
6722 case '_':
6723 case 'a':
6724 case 'b':
6725 case 'c':
6726 case 'd':
6727 case 'e':
6728 case 'f':
6729 case 'g':
6730 case 'h':
6731 case 'i':
6732 case 'j':
6733 case 'k':
6734 case 'l':
6735 case 'm':
6736 case 'n':
6737 case 'o':
6738 case 'p':
6739 case 'q':
6740 case 'r':
6741 case 's':
6742 case 't':
6743 case 'u':
6744 case 'v':
6745 case 'w':
6746 case 'x':
6747 case 'y':
6748 case 'z': goto yy53;
6749 case '\\': goto yy114;
6750 default: goto yy410;
6751 }
6752 yy410:
6753 #line 323 "src/parser.re"
6754 {RETURN(PSI_T_UINT16);}
6755 #line 6756 "src/parser.c"
6756 yy411:
6757 yyaccept = 59;
6758 yych = *(P->mrk = ++P->cur);
6759 switch (yych) {
6760 case '0':
6761 case '1':
6762 case '2':
6763 case '3':
6764 case '4':
6765 case '5':
6766 case '6':
6767 case '7':
6768 case '8':
6769 case '9':
6770 case 'A':
6771 case 'B':
6772 case 'C':
6773 case 'D':
6774 case 'E':
6775 case 'F':
6776 case 'G':
6777 case 'H':
6778 case 'I':
6779 case 'J':
6780 case 'K':
6781 case 'L':
6782 case 'M':
6783 case 'N':
6784 case 'O':
6785 case 'P':
6786 case 'Q':
6787 case 'R':
6788 case 'S':
6789 case 'T':
6790 case 'U':
6791 case 'V':
6792 case 'W':
6793 case 'X':
6794 case 'Y':
6795 case 'Z':
6796 case '_':
6797 case 'a':
6798 case 'b':
6799 case 'c':
6800 case 'd':
6801 case 'e':
6802 case 'f':
6803 case 'g':
6804 case 'h':
6805 case 'i':
6806 case 'j':
6807 case 'k':
6808 case 'l':
6809 case 'm':
6810 case 'n':
6811 case 'o':
6812 case 'p':
6813 case 'q':
6814 case 'r':
6815 case 's':
6816 case 't':
6817 case 'u':
6818 case 'v':
6819 case 'w':
6820 case 'x':
6821 case 'y':
6822 case 'z': goto yy53;
6823 case '\\': goto yy114;
6824 default: goto yy412;
6825 }
6826 yy412:
6827 #line 325 "src/parser.re"
6828 {RETURN(PSI_T_UINT32);}
6829 #line 6830 "src/parser.c"
6830 yy413:
6831 yyaccept = 60;
6832 yych = *(P->mrk = ++P->cur);
6833 switch (yych) {
6834 case '0':
6835 case '1':
6836 case '2':
6837 case '3':
6838 case '4':
6839 case '5':
6840 case '6':
6841 case '7':
6842 case '8':
6843 case '9':
6844 case 'A':
6845 case 'B':
6846 case 'C':
6847 case 'D':
6848 case 'E':
6849 case 'F':
6850 case 'G':
6851 case 'H':
6852 case 'I':
6853 case 'J':
6854 case 'K':
6855 case 'L':
6856 case 'M':
6857 case 'N':
6858 case 'O':
6859 case 'P':
6860 case 'Q':
6861 case 'R':
6862 case 'S':
6863 case 'T':
6864 case 'U':
6865 case 'V':
6866 case 'W':
6867 case 'X':
6868 case 'Y':
6869 case 'Z':
6870 case '_':
6871 case 'a':
6872 case 'b':
6873 case 'c':
6874 case 'd':
6875 case 'e':
6876 case 'f':
6877 case 'g':
6878 case 'h':
6879 case 'i':
6880 case 'j':
6881 case 'k':
6882 case 'l':
6883 case 'm':
6884 case 'n':
6885 case 'o':
6886 case 'p':
6887 case 'q':
6888 case 'r':
6889 case 's':
6890 case 't':
6891 case 'u':
6892 case 'v':
6893 case 'w':
6894 case 'x':
6895 case 'y':
6896 case 'z': goto yy53;
6897 case '\\': goto yy114;
6898 default: goto yy414;
6899 }
6900 yy414:
6901 #line 327 "src/parser.re"
6902 {RETURN(PSI_T_UINT64);}
6903 #line 6904 "src/parser.c"
6904 yy415:
6905 yyaccept = 61;
6906 yych = *(P->mrk = ++P->cur);
6907 switch (yych) {
6908 case '0':
6909 case '1':
6910 case '2':
6911 case '3':
6912 case '4':
6913 case '5':
6914 case '6':
6915 case '7':
6916 case '8':
6917 case '9':
6918 case 'A':
6919 case 'B':
6920 case 'C':
6921 case 'D':
6922 case 'E':
6923 case 'F':
6924 case 'G':
6925 case 'H':
6926 case 'I':
6927 case 'J':
6928 case 'K':
6929 case 'L':
6930 case 'M':
6931 case 'N':
6932 case 'O':
6933 case 'P':
6934 case 'Q':
6935 case 'R':
6936 case 'S':
6937 case 'T':
6938 case 'U':
6939 case 'V':
6940 case 'W':
6941 case 'X':
6942 case 'Y':
6943 case 'Z':
6944 case '_':
6945 case 'a':
6946 case 'b':
6947 case 'c':
6948 case 'd':
6949 case 'e':
6950 case 'f':
6951 case 'g':
6952 case 'h':
6953 case 'i':
6954 case 'j':
6955 case 'k':
6956 case 'l':
6957 case 'm':
6958 case 'n':
6959 case 'o':
6960 case 'p':
6961 case 'q':
6962 case 'r':
6963 case 's':
6964 case 't':
6965 case 'u':
6966 case 'v':
6967 case 'w':
6968 case 'x':
6969 case 'y':
6970 case 'z': goto yy53;
6971 case '\\': goto yy114;
6972 default: goto yy416;
6973 }
6974 yy416:
6975 #line 328 "src/parser.re"
6976 {RETURN(PSI_T_UNSIGNED);}
6977 #line 6978 "src/parser.c"
6978 yy417:
6979 yyaccept = 5;
6980 yych = *(P->mrk = ++P->cur);
6981 switch (yych) {
6982 case 'R':
6983 case 'r': goto yy423;
6984 default: goto yy54;
6985 }
6986 yy418:
6987 yyaccept = 5;
6988 yych = *(P->mrk = ++P->cur);
6989 switch (yych) {
6990 case 'T':
6991 case 't': goto yy424;
6992 default: goto yy54;
6993 }
6994 yy419:
6995 yyaccept = 62;
6996 yych = *(P->mrk = ++P->cur);
6997 switch (yych) {
6998 case '0':
6999 case '1':
7000 case '2':
7001 case '3':
7002 case '4':
7003 case '5':
7004 case '6':
7005 case '7':
7006 case '8':
7007 case '9':
7008 case 'A':
7009 case 'B':
7010 case 'C':
7011 case 'D':
7012 case 'E':
7013 case 'F':
7014 case 'G':
7015 case 'H':
7016 case 'I':
7017 case 'J':
7018 case 'K':
7019 case 'L':
7020 case 'M':
7021 case 'N':
7022 case 'O':
7023 case 'P':
7024 case 'Q':
7025 case 'R':
7026 case 'S':
7027 case 'T':
7028 case 'U':
7029 case 'V':
7030 case 'W':
7031 case 'X':
7032 case 'Y':
7033 case 'Z':
7034 case '_':
7035 case 'a':
7036 case 'b':
7037 case 'c':
7038 case 'd':
7039 case 'e':
7040 case 'f':
7041 case 'g':
7042 case 'h':
7043 case 'i':
7044 case 'j':
7045 case 'k':
7046 case 'l':
7047 case 'm':
7048 case 'n':
7049 case 'o':
7050 case 'p':
7051 case 'q':
7052 case 'r':
7053 case 's':
7054 case 't':
7055 case 'u':
7056 case 'v':
7057 case 'w':
7058 case 'x':
7059 case 'y':
7060 case 'z': goto yy53;
7061 case '\\': goto yy114;
7062 default: goto yy420;
7063 }
7064 yy420:
7065 #line 360 "src/parser.re"
7066 {RETURN(PSI_T_TO_OBJECT);}
7067 #line 7068 "src/parser.c"
7068 yy421:
7069 yyaccept = 63;
7070 yych = *(P->mrk = ++P->cur);
7071 switch (yych) {
7072 case '0':
7073 case '1':
7074 case '2':
7075 case '3':
7076 case '4':
7077 case '5':
7078 case '6':
7079 case '7':
7080 case '8':
7081 case '9':
7082 case 'A':
7083 case 'B':
7084 case 'C':
7085 case 'D':
7086 case 'E':
7087 case 'F':
7088 case 'G':
7089 case 'H':
7090 case 'I':
7091 case 'J':
7092 case 'K':
7093 case 'L':
7094 case 'M':
7095 case 'N':
7096 case 'O':
7097 case 'P':
7098 case 'Q':
7099 case 'R':
7100 case 'S':
7101 case 'T':
7102 case 'U':
7103 case 'V':
7104 case 'W':
7105 case 'X':
7106 case 'Y':
7107 case 'Z':
7108 case '_':
7109 case 'a':
7110 case 'b':
7111 case 'c':
7112 case 'd':
7113 case 'e':
7114 case 'f':
7115 case 'g':
7116 case 'h':
7117 case 'i':
7118 case 'j':
7119 case 'k':
7120 case 'l':
7121 case 'm':
7122 case 'n':
7123 case 'o':
7124 case 'p':
7125 case 'q':
7126 case 'r':
7127 case 's':
7128 case 't':
7129 case 'u':
7130 case 'v':
7131 case 'w':
7132 case 'x':
7133 case 'y':
7134 case 'z': goto yy53;
7135 case '\\': goto yy114;
7136 default: goto yy422;
7137 }
7138 yy422:
7139 #line 362 "src/parser.re"
7140 {RETURN(PSI_T_TO_STRING);}
7141 #line 7142 "src/parser.c"
7142 yy423:
7143 yyaccept = 5;
7144 yych = *(P->mrk = ++P->cur);
7145 switch (yych) {
7146 case 'T':
7147 case 't': goto yy426;
7148 default: goto yy54;
7149 }
7150 yy424:
7151 yyaccept = 64;
7152 yych = *(P->mrk = ++P->cur);
7153 switch (yych) {
7154 case '0':
7155 case '1':
7156 case '2':
7157 case '3':
7158 case '4':
7159 case '5':
7160 case '6':
7161 case '7':
7162 case '8':
7163 case '9':
7164 case 'A':
7165 case 'B':
7166 case 'C':
7167 case 'D':
7168 case 'E':
7169 case 'F':
7170 case 'G':
7171 case 'H':
7172 case 'I':
7173 case 'J':
7174 case 'K':
7175 case 'L':
7176 case 'M':
7177 case 'N':
7178 case 'O':
7179 case 'P':
7180 case 'Q':
7181 case 'R':
7182 case 'S':
7183 case 'T':
7184 case 'U':
7185 case 'V':
7186 case 'W':
7187 case 'X':
7188 case 'Y':
7189 case 'Z':
7190 case '_':
7191 case 'a':
7192 case 'b':
7193 case 'c':
7194 case 'd':
7195 case 'e':
7196 case 'f':
7197 case 'g':
7198 case 'h':
7199 case 'i':
7200 case 'j':
7201 case 'k':
7202 case 'l':
7203 case 'm':
7204 case 'n':
7205 case 'o':
7206 case 'p':
7207 case 'q':
7208 case 'r':
7209 case 's':
7210 case 't':
7211 case 'u':
7212 case 'v':
7213 case 'w':
7214 case 'x':
7215 case 'y':
7216 case 'z': goto yy53;
7217 case '\\': goto yy114;
7218 default: goto yy425;
7219 }
7220 yy425:
7221 #line 344 "src/parser.re"
7222 {RETURN(PSI_T_PRE_ASSERT);}
7223 #line 7224 "src/parser.c"
7224 yy426:
7225 yyaccept = 65;
7226 yych = *(P->mrk = ++P->cur);
7227 switch (yych) {
7228 case '0':
7229 case '1':
7230 case '2':
7231 case '3':
7232 case '4':
7233 case '5':
7234 case '6':
7235 case '7':
7236 case '8':
7237 case '9':
7238 case 'A':
7239 case 'B':
7240 case 'C':
7241 case 'D':
7242 case 'E':
7243 case 'F':
7244 case 'G':
7245 case 'H':
7246 case 'I':
7247 case 'J':
7248 case 'K':
7249 case 'L':
7250 case 'M':
7251 case 'N':
7252 case 'O':
7253 case 'P':
7254 case 'Q':
7255 case 'R':
7256 case 'S':
7257 case 'T':
7258 case 'U':
7259 case 'V':
7260 case 'W':
7261 case 'X':
7262 case 'Y':
7263 case 'Z':
7264 case '_':
7265 case 'a':
7266 case 'b':
7267 case 'c':
7268 case 'd':
7269 case 'e':
7270 case 'f':
7271 case 'g':
7272 case 'h':
7273 case 'i':
7274 case 'j':
7275 case 'k':
7276 case 'l':
7277 case 'm':
7278 case 'n':
7279 case 'o':
7280 case 'p':
7281 case 'q':
7282 case 'r':
7283 case 's':
7284 case 't':
7285 case 'u':
7286 case 'v':
7287 case 'w':
7288 case 'x':
7289 case 'y':
7290 case 'z': goto yy53;
7291 case '\\': goto yy114;
7292 default: goto yy427;
7293 }
7294 yy427:
7295 #line 345 "src/parser.re"
7296 {RETURN(PSI_T_POST_ASSERT);}
7297 #line 7298 "src/parser.c"
7298 }
7299 #line 372 "src/parser.re"
7300
7301
7302 comment:
7303 P->tok = P->cur;
7304
7305 #line 7306 "src/parser.c"
7306 {
7307 unsigned char yych;
7308 if ((P->lim - P->cur) < 2) { if (!psi_parser_fill(P,2)) RETURN(PSI_T_EOF); };
7309 yych = *P->cur;
7310 switch (yych) {
7311 case '\n': goto yy432;
7312 case '*': goto yy434;
7313 default: goto yy430;
7314 }
7315 yy430:
7316 ++P->cur;
7317 yy431:
7318 #line 379 "src/parser.re"
7319 { goto comment; }
7320 #line 7321 "src/parser.c"
7321 yy432:
7322 ++P->cur;
7323 #line 377 "src/parser.re"
7324 { NEWLINE(comment); }
7325 #line 7326 "src/parser.c"
7326 yy434:
7327 yych = *++P->cur;
7328 switch (yych) {
7329 case '/': goto yy435;
7330 default: goto yy431;
7331 }
7332 yy435:
7333 ++P->cur;
7334 #line 378 "src/parser.re"
7335 { continue; }
7336 #line 7337 "src/parser.c"
7337 }
7338 #line 380 "src/parser.re"
7339
7340 }
7341 return -1;
7342 }