A Nix language parser implemented in C (ragel + bison)
1
2#line 1 "parser/machine.rl"
3// compile-command: "ragel -Z -G2 machine.rl"
4
5/* C port of the Ragel lexer (ported from legacy Go). This file is pure C and
6 uses the helpers declared in parser/lexer.h. */
7
8#include <stdlib.h>
9#include <string.h>
10#include "lexer.h"
11#include "tokens.h"
12
13#define maxstack 64
14
15
16#line 102 "parser/machine.rl"
17
18
19
20#line 16 "parser/machine.c"
21static const int expr_start = 22;
22static const int expr_first_final = 22;
23static const int expr_error = 0;
24
25static const int expr_en_qstring = 79;
26static const int expr_en_istring = 82;
27static const int expr_en_expr = 22;
28
29
30#line 105 "parser/machine.rl"
31
32/* C lexical wrapper generated by Ragel */
33
34int lexData(const char *data, int len, LexResult *r) {
35 int cs = 0, act = 0;
36 const char *p = data;
37 const char *pe = data + len;
38 const char *eof = pe;
39 const char *ts = NULL, *te = NULL;
40 int top = 0;
41 int stack[maxstack];
42 Backrefs backrefs = { NULL, 0, 0 };
43
44 /* helper to set an error message (allocated) */
45 void set_err(const char *msg) {
46 if (r->errmsg) { free(r->errmsg); r->errmsg = NULL; }
47 size_t m = strlen(msg) + 1;
48 r->errmsg = malloc(m);
49 if (r->errmsg) memcpy(r->errmsg, msg, m);
50 }
51
52 /* nostack check used by actions; returns 1 on error (and sets r->errmsg) */
53 #define nostack() ( (top) >= maxstack ? (set_err("exceeds recursion limit"), 1) : 0 )
54
55 /* append or set r->data */
56 if (r->data == NULL) {
57 r->data = malloc(len);
58 if (!r->data) { set_err("out of memory"); return 1; }
59 memcpy(r->data, data, len);
60 r->len = len;
61 } else {
62 char *nd = realloc(r->data, r->len + len);
63 if (!nd) { set_err("out of memory"); return 1; }
64 r->data = nd;
65 memcpy(r->data + r->len, data, len);
66 r->len += len;
67 }
68
69
70#line 62 "parser/machine.c"
71 {
72 cs = expr_start;
73 top = 0;
74 ts = 0;
75 te = 0;
76 act = 0;
77 }
78
79#line 144 "parser/machine.rl"
80 (void)expr_first_final; (void)expr_error; (void)expr_en_qstring; (void)expr_en_istring; (void)expr_en_expr;
81
82 /* Ragel exec block will use the macros (tok, tokenter, tokleave, tokarg, add_lines, add_line)
83 declared in parser/lexer.h and expect local variables ts, te, top, backrefs, data, p, pe, cs. */
84
85
86
87#line 75 "parser/machine.c"
88 {
89 if ( p == pe )
90 goto _test_eof;
91 goto _resume;
92
93_again:
94 switch ( cs ) {
95 case 22: goto st22;
96 case 23: goto st23;
97 case 1: goto st1;
98 case 24: goto st24;
99 case 2: goto st2;
100 case 3: goto st3;
101 case 25: goto st25;
102 case 26: goto st26;
103 case 27: goto st27;
104 case 28: goto st28;
105 case 29: goto st29;
106 case 30: goto st30;
107 case 31: goto st31;
108 case 32: goto st32;
109 case 33: goto st33;
110 case 4: goto st4;
111 case 5: goto st5;
112 case 34: goto st34;
113 case 35: goto st35;
114 case 36: goto st36;
115 case 37: goto st37;
116 case 6: goto st6;
117 case 38: goto st38;
118 case 7: goto st7;
119 case 8: goto st8;
120 case 39: goto st39;
121 case 40: goto st40;
122 case 9: goto st9;
123 case 10: goto st10;
124 case 41: goto st41;
125 case 42: goto st42;
126 case 43: goto st43;
127 case 44: goto st44;
128 case 45: goto st45;
129 case 11: goto st11;
130 case 12: goto st12;
131 case 46: goto st46;
132 case 47: goto st47;
133 case 48: goto st48;
134 case 13: goto st13;
135 case 14: goto st14;
136 case 49: goto st49;
137 case 50: goto st50;
138 case 51: goto st51;
139 case 52: goto st52;
140 case 53: goto st53;
141 case 54: goto st54;
142 case 55: goto st55;
143 case 56: goto st56;
144 case 57: goto st57;
145 case 58: goto st58;
146 case 59: goto st59;
147 case 60: goto st60;
148 case 61: goto st61;
149 case 62: goto st62;
150 case 63: goto st63;
151 case 64: goto st64;
152 case 65: goto st65;
153 case 66: goto st66;
154 case 67: goto st67;
155 case 68: goto st68;
156 case 69: goto st69;
157 case 70: goto st70;
158 case 71: goto st71;
159 case 72: goto st72;
160 case 73: goto st73;
161 case 74: goto st74;
162 case 75: goto st75;
163 case 76: goto st76;
164 case 15: goto st15;
165 case 77: goto st77;
166 case 78: goto st78;
167 case 79: goto st79;
168 case 80: goto st80;
169 case 16: goto st16;
170 case 17: goto st17;
171 case 81: goto st81;
172 case 82: goto st82;
173 case 83: goto st83;
174 case 18: goto st18;
175 case 19: goto st19;
176 case 20: goto st20;
177 case 21: goto st21;
178 case 84: goto st84;
179 case 85: goto st85;
180 case 86: goto st86;
181 case 0: goto st0;
182 default: break;
183 }
184
185 if ( ++p == pe )
186 goto _test_eof;
187_resume:
188 switch ( cs )
189 {
190tr0:
191#line 98 "parser/machine.rl"
192 {{p = ((te))-1;}{ tok((int)(*ts), r); }}
193 goto st22;
194tr2:
195#line 72 "parser/machine.rl"
196 {{p = ((te))-1;}{ tok(FLOAT, r); }}
197 goto st22;
198tr5:
199#line 1 "NONE"
200 { switch( act ) {
201 case 9:
202 {{p = ((te))-1;} tok(ASSERT_, r); }
203 break;
204 case 10:
205 {{p = ((te))-1;} tok(ELSE_, r); }
206 break;
207 case 11:
208 {{p = ((te))-1;} tok(IF_, r); }
209 break;
210 case 12:
211 {{p = ((te))-1;} tok(IN, r); }
212 break;
213 case 13:
214 {{p = ((te))-1;} tok(INHERIT, r); }
215 break;
216 case 14:
217 {{p = ((te))-1;} tok(LET, r); }
218 break;
219 case 15:
220 {{p = ((te))-1;} tok(OR_, r); }
221 break;
222 case 16:
223 {{p = ((te))-1;} tok(REC, r); }
224 break;
225 case 17:
226 {{p = ((te))-1;} tok(THEN, r); }
227 break;
228 case 18:
229 {{p = ((te))-1;} tok(WITH, r); }
230 break;
231 case 27:
232 {{p = ((te))-1;} tok(FLOAT, r); }
233 break;
234 case 28:
235 {{p = ((te))-1;} tok(INT_, r); }
236 break;
237 case 29:
238 {{p = ((te))-1;} tok(ID, r); }
239 break;
240 case 30:
241 {{p = ((te))-1;} tok(ELLIPSIS, r); }
242 break;
243 case 39:
244 {{p = ((te))-1;} tok(CONCAT, r); }
245 break;
246 case 48:
247 {{p = ((te))-1;} tok((int)(*ts), r); }
248 break;
249 }
250 }
251 goto st22;
252tr14:
253#line 67 "parser/machine.rl"
254 {te = p+1;{ tokcomment(COMMENT, r); add_lines(r, ts, te); }}
255 goto st22;
256tr17:
257#line 71 "parser/machine.rl"
258 {te = p+1;{ tok(PATH, r); }}
259 goto st22;
260tr30:
261#line 98 "parser/machine.rl"
262 {te = p+1;{ tok((int)(*ts), r); }}
263 goto st22;
264tr33:
265#line 65 "parser/machine.rl"
266 {te = p+1;{ add_line(r, ts); }}
267 goto st22;
268tr35:
269#line 87 "parser/machine.rl"
270 {te = p+1;{ tokenter('"', '"', r); { /* replaced nostack-return to return non-zero error */ {stack[top++] = 22;goto st79;}} }}
271 goto st22;
272tr40:
273#line 91 "parser/machine.rl"
274 {te = p+1;{ tokenter('(', ')', r); { /* replaced nostack-return to return non-zero error */ {stack[top++] = 22;goto st22;}} }}
275 goto st22;
276tr41:
277#line 94 "parser/machine.rl"
278 {te = p+1;{ if (!tokleave((int)(*ts), r)) return 1; {cs = stack[--top];goto _again;} }}
279 goto st22;
280tr48:
281#line 96 "parser/machine.rl"
282 {te = p+1;{ if (!tokarg(r)) return 1; }}
283 goto st22;
284tr53:
285#line 92 "parser/machine.rl"
286 {te = p+1;{ tokenter('[', ']', r); { /* replaced nostack-return to return non-zero error */ {stack[top++] = 22;goto st22;}} }}
287 goto st22;
288tr63:
289#line 93 "parser/machine.rl"
290 {te = p+1;{ tokenter('{', '}', r); { /* replaced nostack-return to return non-zero error */ {stack[top++] = 22;goto st22;}} }}
291 goto st22;
292tr66:
293#line 98 "parser/machine.rl"
294 {te = p;p--;{ tok((int)(*ts), r); }}
295 goto st22;
296tr68:
297#line 72 "parser/machine.rl"
298 {te = p;p--;{ tok(FLOAT, r); }}
299 goto st22;
300tr70:
301#line 64 "parser/machine.rl"
302 {te = p;p--;}
303 goto st22;
304tr71:
305#line 81 "parser/machine.rl"
306 {te = p+1;{ tok(NEQ, r); }}
307 goto st22;
308tr72:
309#line 66 "parser/machine.rl"
310 {te = p;p--;{ tokcomment(COMMENT, r); }}
311 goto st22;
312tr73:
313#line 90 "parser/machine.rl"
314 {te = p+1;{ tokenter(INTERP, '}', r); { /* replaced nostack-return to return non-zero error */ {stack[top++] = 22;goto st22;}} }}
315 goto st22;
316tr74:
317#line 79 "parser/machine.rl"
318 {te = p+1;{ tok(AND, r); }}
319 goto st22;
320tr75:
321#line 88 "parser/machine.rl"
322 {te = p+1;{ tokenter(II, II, r); { /* replaced nostack-return to return non-zero error */ {stack[top++] = 22;goto st82;}} }}
323 goto st22;
324tr77:
325#line 69 "parser/machine.rl"
326 {te = p;p--;{ tok(PATH, r); }}
327 goto st22;
328tr79:
329#line 77 "parser/machine.rl"
330 {te = p+1;{ tok(IMPL, r); }}
331 goto st22;
332tr83:
333#line 84 "parser/machine.rl"
334 {te = p+1;{ tok(UPDATE, r); }}
335 goto st22;
336tr84:
337#line 73 "parser/machine.rl"
338 {te = p;p--;{ tok(INT_, r); }}
339 goto st22;
340tr86:
341#line 74 "parser/machine.rl"
342 {te = p;p--;{ tok(ID, r); }}
343 goto st22;
344tr87:
345#line 82 "parser/machine.rl"
346 {te = p+1;{ tok(LEQ, r); }}
347 goto st22;
348tr88:
349#line 80 "parser/machine.rl"
350 {te = p+1;{ tok(EQ, r); }}
351 goto st22;
352tr89:
353#line 83 "parser/machine.rl"
354 {te = p+1;{ tok(GEQ, r); }}
355 goto st22;
356tr90:
357#line 68 "parser/machine.rl"
358 {te = p;p--;{ tok(URI, r); }}
359 goto st22;
360tr101:
361#line 56 "parser/machine.rl"
362 {te = p;p--;{ tok(IN, r); }}
363 goto st22;
364tr118:
365#line 78 "parser/machine.rl"
366 {te = p+1;{ tok(OR, r); }}
367 goto st22;
368tr120:
369#line 70 "parser/machine.rl"
370 {te = p;p--;{ tok(PATH, r); }}
371 goto st22;
372st22:
373#line 1 "NONE"
374 {ts = 0;}
375 if ( ++p == pe )
376 goto _test_eof22;
377case 22:
378#line 1 "NONE"
379 {ts = p;}
380#line 332 "parser/machine.c"
381 switch( (*p) ) {
382 case 0: goto tr31;
383 case 9: goto st26;
384 case 10: goto tr33;
385 case 13: goto st26;
386 case 32: goto st26;
387 case 33: goto st27;
388 case 34: goto tr35;
389 case 35: goto st28;
390 case 36: goto st29;
391 case 38: goto st30;
392 case 39: goto st31;
393 case 40: goto tr40;
394 case 41: goto tr41;
395 case 43: goto tr42;
396 case 45: goto tr43;
397 case 46: goto tr44;
398 case 47: goto tr45;
399 case 48: goto tr46;
400 case 58: goto tr48;
401 case 60: goto tr49;
402 case 61: goto st46;
403 case 62: goto st47;
404 case 64: goto tr48;
405 case 91: goto tr53;
406 case 93: goto tr41;
407 case 95: goto tr54;
408 case 97: goto tr55;
409 case 101: goto tr56;
410 case 105: goto tr57;
411 case 108: goto tr58;
412 case 111: goto tr59;
413 case 114: goto tr60;
414 case 116: goto tr61;
415 case 119: goto tr62;
416 case 123: goto tr63;
417 case 124: goto st75;
418 case 125: goto tr41;
419 case 126: goto tr65;
420 }
421 if ( (*p) < 65 ) {
422 if ( 49 <= (*p) && (*p) <= 57 )
423 goto tr47;
424 } else if ( (*p) > 90 ) {
425 if ( 98 <= (*p) && (*p) <= 122 )
426 goto tr52;
427 } else
428 goto tr52;
429 goto tr30;
430tr31:
431#line 1 "NONE"
432 {te = p+1;}
433 goto st23;
434st23:
435 if ( ++p == pe )
436 goto _test_eof23;
437case 23:
438#line 388 "parser/machine.c"
439 if ( (*p) == 46 )
440 goto st1;
441 goto tr66;
442st1:
443 if ( ++p == pe )
444 goto _test_eof1;
445case 1:
446 if ( 48 <= (*p) && (*p) <= 57 )
447 goto tr1;
448 goto tr0;
449tr1:
450#line 1 "NONE"
451 {te = p+1;}
452 goto st24;
453st24:
454 if ( ++p == pe )
455 goto _test_eof24;
456case 24:
457#line 405 "parser/machine.c"
458 switch( (*p) ) {
459 case 69: goto st2;
460 case 101: goto st2;
461 }
462 if ( 48 <= (*p) && (*p) <= 57 )
463 goto tr1;
464 goto tr68;
465st2:
466 if ( ++p == pe )
467 goto _test_eof2;
468case 2:
469 switch( (*p) ) {
470 case 43: goto st3;
471 case 45: goto st3;
472 }
473 if ( 48 <= (*p) && (*p) <= 57 )
474 goto st25;
475 goto tr2;
476st3:
477 if ( ++p == pe )
478 goto _test_eof3;
479case 3:
480 if ( 48 <= (*p) && (*p) <= 57 )
481 goto st25;
482 goto tr2;
483st25:
484 if ( ++p == pe )
485 goto _test_eof25;
486case 25:
487 if ( 48 <= (*p) && (*p) <= 57 )
488 goto st25;
489 goto tr68;
490st26:
491 if ( ++p == pe )
492 goto _test_eof26;
493case 26:
494 switch( (*p) ) {
495 case 9: goto st26;
496 case 13: goto st26;
497 case 32: goto st26;
498 }
499 goto tr70;
500st27:
501 if ( ++p == pe )
502 goto _test_eof27;
503case 27:
504 if ( (*p) == 61 )
505 goto tr71;
506 goto tr66;
507st28:
508 if ( ++p == pe )
509 goto _test_eof28;
510case 28:
511 switch( (*p) ) {
512 case 10: goto tr72;
513 case 13: goto tr72;
514 }
515 goto st28;
516st29:
517 if ( ++p == pe )
518 goto _test_eof29;
519case 29:
520 if ( (*p) == 123 )
521 goto tr73;
522 goto tr66;
523st30:
524 if ( ++p == pe )
525 goto _test_eof30;
526case 30:
527 if ( (*p) == 38 )
528 goto tr74;
529 goto tr66;
530st31:
531 if ( ++p == pe )
532 goto _test_eof31;
533case 31:
534 if ( (*p) == 39 )
535 goto tr75;
536 goto tr66;
537tr42:
538#line 1 "NONE"
539 {te = p+1;}
540#line 98 "parser/machine.rl"
541 {act = 48;}
542 goto st32;
543st32:
544 if ( ++p == pe )
545 goto _test_eof32;
546case 32:
547#line 492 "parser/machine.c"
548 switch( (*p) ) {
549 case 43: goto tr76;
550 case 47: goto st5;
551 case 95: goto st4;
552 }
553 if ( (*p) < 65 ) {
554 if ( 45 <= (*p) && (*p) <= 57 )
555 goto st4;
556 } else if ( (*p) > 90 ) {
557 if ( 97 <= (*p) && (*p) <= 122 )
558 goto st4;
559 } else
560 goto st4;
561 goto tr66;
562tr9:
563#line 1 "NONE"
564 {te = p+1;}
565#line 76 "parser/machine.rl"
566 {act = 30;}
567 goto st33;
568tr76:
569#line 1 "NONE"
570 {te = p+1;}
571#line 85 "parser/machine.rl"
572 {act = 39;}
573 goto st33;
574st33:
575 if ( ++p == pe )
576 goto _test_eof33;
577case 33:
578#line 518 "parser/machine.c"
579 switch( (*p) ) {
580 case 43: goto st4;
581 case 47: goto st5;
582 case 95: goto st4;
583 }
584 if ( (*p) < 65 ) {
585 if ( 45 <= (*p) && (*p) <= 57 )
586 goto st4;
587 } else if ( (*p) > 90 ) {
588 if ( 97 <= (*p) && (*p) <= 122 )
589 goto st4;
590 } else
591 goto st4;
592 goto tr5;
593st4:
594 if ( ++p == pe )
595 goto _test_eof4;
596case 4:
597 switch( (*p) ) {
598 case 43: goto st4;
599 case 47: goto st5;
600 case 95: goto st4;
601 }
602 if ( (*p) < 65 ) {
603 if ( 45 <= (*p) && (*p) <= 57 )
604 goto st4;
605 } else if ( (*p) > 90 ) {
606 if ( 97 <= (*p) && (*p) <= 122 )
607 goto st4;
608 } else
609 goto st4;
610 goto tr5;
611st5:
612 if ( ++p == pe )
613 goto _test_eof5;
614case 5:
615 switch( (*p) ) {
616 case 43: goto st34;
617 case 95: goto st34;
618 }
619 if ( (*p) < 48 ) {
620 if ( 45 <= (*p) && (*p) <= 46 )
621 goto st34;
622 } else if ( (*p) > 57 ) {
623 if ( (*p) > 90 ) {
624 if ( 97 <= (*p) && (*p) <= 122 )
625 goto st34;
626 } else if ( (*p) >= 65 )
627 goto st34;
628 } else
629 goto st34;
630 goto tr5;
631st34:
632 if ( ++p == pe )
633 goto _test_eof34;
634case 34:
635 switch( (*p) ) {
636 case 43: goto st34;
637 case 47: goto st35;
638 case 95: goto st34;
639 }
640 if ( (*p) < 65 ) {
641 if ( 45 <= (*p) && (*p) <= 57 )
642 goto st34;
643 } else if ( (*p) > 90 ) {
644 if ( 97 <= (*p) && (*p) <= 122 )
645 goto st34;
646 } else
647 goto st34;
648 goto tr77;
649st35:
650 if ( ++p == pe )
651 goto _test_eof35;
652case 35:
653 switch( (*p) ) {
654 case 43: goto st34;
655 case 95: goto st34;
656 }
657 if ( (*p) < 48 ) {
658 if ( 45 <= (*p) && (*p) <= 46 )
659 goto st34;
660 } else if ( (*p) > 57 ) {
661 if ( (*p) > 90 ) {
662 if ( 97 <= (*p) && (*p) <= 122 )
663 goto st34;
664 } else if ( (*p) >= 65 )
665 goto st34;
666 } else
667 goto st34;
668 goto tr77;
669tr43:
670#line 1 "NONE"
671 {te = p+1;}
672#line 98 "parser/machine.rl"
673 {act = 48;}
674 goto st36;
675st36:
676 if ( ++p == pe )
677 goto _test_eof36;
678case 36:
679#line 616 "parser/machine.c"
680 switch( (*p) ) {
681 case 43: goto st4;
682 case 47: goto st5;
683 case 62: goto tr79;
684 case 95: goto st4;
685 }
686 if ( (*p) < 65 ) {
687 if ( 45 <= (*p) && (*p) <= 57 )
688 goto st4;
689 } else if ( (*p) > 90 ) {
690 if ( 97 <= (*p) && (*p) <= 122 )
691 goto st4;
692 } else
693 goto st4;
694 goto tr66;
695tr44:
696#line 1 "NONE"
697 {te = p+1;}
698#line 98 "parser/machine.rl"
699 {act = 48;}
700 goto st37;
701st37:
702 if ( ++p == pe )
703 goto _test_eof37;
704case 37:
705#line 639 "parser/machine.c"
706 switch( (*p) ) {
707 case 43: goto st4;
708 case 45: goto st4;
709 case 46: goto st6;
710 case 47: goto st5;
711 case 95: goto st4;
712 }
713 if ( (*p) < 65 ) {
714 if ( 48 <= (*p) && (*p) <= 57 )
715 goto tr81;
716 } else if ( (*p) > 90 ) {
717 if ( 97 <= (*p) && (*p) <= 122 )
718 goto st4;
719 } else
720 goto st4;
721 goto tr66;
722st6:
723 if ( ++p == pe )
724 goto _test_eof6;
725case 6:
726 switch( (*p) ) {
727 case 43: goto st4;
728 case 46: goto tr9;
729 case 47: goto st5;
730 case 95: goto st4;
731 }
732 if ( (*p) < 65 ) {
733 if ( 45 <= (*p) && (*p) <= 57 )
734 goto st4;
735 } else if ( (*p) > 90 ) {
736 if ( 97 <= (*p) && (*p) <= 122 )
737 goto st4;
738 } else
739 goto st4;
740 goto tr0;
741tr81:
742#line 1 "NONE"
743 {te = p+1;}
744#line 72 "parser/machine.rl"
745 {act = 27;}
746 goto st38;
747st38:
748 if ( ++p == pe )
749 goto _test_eof38;
750case 38:
751#line 682 "parser/machine.c"
752 switch( (*p) ) {
753 case 43: goto st4;
754 case 47: goto st5;
755 case 69: goto st7;
756 case 95: goto st4;
757 case 101: goto st7;
758 }
759 if ( (*p) < 48 ) {
760 if ( 45 <= (*p) && (*p) <= 46 )
761 goto st4;
762 } else if ( (*p) > 57 ) {
763 if ( (*p) > 90 ) {
764 if ( 97 <= (*p) && (*p) <= 122 )
765 goto st4;
766 } else if ( (*p) >= 65 )
767 goto st4;
768 } else
769 goto tr81;
770 goto tr68;
771st7:
772 if ( ++p == pe )
773 goto _test_eof7;
774case 7:
775 switch( (*p) ) {
776 case 43: goto st8;
777 case 45: goto st8;
778 case 46: goto st4;
779 case 47: goto st5;
780 case 95: goto st4;
781 }
782 if ( (*p) < 65 ) {
783 if ( 48 <= (*p) && (*p) <= 57 )
784 goto tr11;
785 } else if ( (*p) > 90 ) {
786 if ( 97 <= (*p) && (*p) <= 122 )
787 goto st4;
788 } else
789 goto st4;
790 goto tr2;
791st8:
792 if ( ++p == pe )
793 goto _test_eof8;
794case 8:
795 switch( (*p) ) {
796 case 43: goto st4;
797 case 47: goto st5;
798 case 95: goto st4;
799 }
800 if ( (*p) < 48 ) {
801 if ( 45 <= (*p) && (*p) <= 46 )
802 goto st4;
803 } else if ( (*p) > 57 ) {
804 if ( (*p) > 90 ) {
805 if ( 97 <= (*p) && (*p) <= 122 )
806 goto st4;
807 } else if ( (*p) >= 65 )
808 goto st4;
809 } else
810 goto tr11;
811 goto tr2;
812tr11:
813#line 1 "NONE"
814 {te = p+1;}
815#line 72 "parser/machine.rl"
816 {act = 27;}
817 goto st39;
818st39:
819 if ( ++p == pe )
820 goto _test_eof39;
821case 39:
822#line 750 "parser/machine.c"
823 switch( (*p) ) {
824 case 43: goto st4;
825 case 47: goto st5;
826 case 95: goto st4;
827 }
828 if ( (*p) < 48 ) {
829 if ( 45 <= (*p) && (*p) <= 46 )
830 goto st4;
831 } else if ( (*p) > 57 ) {
832 if ( (*p) > 90 ) {
833 if ( 97 <= (*p) && (*p) <= 122 )
834 goto st4;
835 } else if ( (*p) >= 65 )
836 goto st4;
837 } else
838 goto tr11;
839 goto tr68;
840tr45:
841#line 1 "NONE"
842 {te = p+1;}
843 goto st40;
844st40:
845 if ( ++p == pe )
846 goto _test_eof40;
847case 40:
848#line 774 "parser/machine.c"
849 switch( (*p) ) {
850 case 42: goto st9;
851 case 43: goto st34;
852 case 47: goto tr83;
853 case 95: goto st34;
854 }
855 if ( (*p) < 65 ) {
856 if ( 45 <= (*p) && (*p) <= 57 )
857 goto st34;
858 } else if ( (*p) > 90 ) {
859 if ( 97 <= (*p) && (*p) <= 122 )
860 goto st34;
861 } else
862 goto st34;
863 goto tr66;
864st9:
865 if ( ++p == pe )
866 goto _test_eof9;
867case 9:
868 if ( (*p) == 42 )
869 goto st10;
870 goto st9;
871st10:
872 if ( ++p == pe )
873 goto _test_eof10;
874case 10:
875 switch( (*p) ) {
876 case 42: goto st10;
877 case 47: goto tr14;
878 }
879 goto st9;
880tr46:
881#line 1 "NONE"
882 {te = p+1;}
883#line 73 "parser/machine.rl"
884 {act = 28;}
885 goto st41;
886st41:
887 if ( ++p == pe )
888 goto _test_eof41;
889case 41:
890#line 813 "parser/machine.c"
891 switch( (*p) ) {
892 case 39: goto st42;
893 case 43: goto st4;
894 case 45: goto tr54;
895 case 46: goto st4;
896 case 47: goto st5;
897 case 95: goto tr54;
898 }
899 if ( (*p) < 65 ) {
900 if ( 48 <= (*p) && (*p) <= 57 )
901 goto tr46;
902 } else if ( (*p) > 90 ) {
903 if ( 97 <= (*p) && (*p) <= 122 )
904 goto tr54;
905 } else
906 goto tr54;
907 goto tr84;
908st42:
909 if ( ++p == pe )
910 goto _test_eof42;
911case 42:
912 switch( (*p) ) {
913 case 39: goto st42;
914 case 45: goto st42;
915 case 95: goto st42;
916 }
917 if ( (*p) < 65 ) {
918 if ( 48 <= (*p) && (*p) <= 57 )
919 goto st42;
920 } else if ( (*p) > 90 ) {
921 if ( 97 <= (*p) && (*p) <= 122 )
922 goto st42;
923 } else
924 goto st42;
925 goto tr86;
926tr54:
927#line 1 "NONE"
928 {te = p+1;}
929#line 74 "parser/machine.rl"
930 {act = 29;}
931 goto st43;
932st43:
933 if ( ++p == pe )
934 goto _test_eof43;
935case 43:
936#line 856 "parser/machine.c"
937 switch( (*p) ) {
938 case 39: goto st42;
939 case 43: goto st4;
940 case 46: goto st4;
941 case 47: goto st5;
942 case 95: goto tr54;
943 }
944 if ( (*p) < 65 ) {
945 if ( 45 <= (*p) && (*p) <= 57 )
946 goto tr54;
947 } else if ( (*p) > 90 ) {
948 if ( 97 <= (*p) && (*p) <= 122 )
949 goto tr54;
950 } else
951 goto tr54;
952 goto tr86;
953tr47:
954#line 1 "NONE"
955 {te = p+1;}
956#line 73 "parser/machine.rl"
957 {act = 28;}
958 goto st44;
959st44:
960 if ( ++p == pe )
961 goto _test_eof44;
962case 44:
963#line 880 "parser/machine.c"
964 switch( (*p) ) {
965 case 39: goto st42;
966 case 43: goto st4;
967 case 45: goto tr54;
968 case 46: goto tr81;
969 case 47: goto st5;
970 case 95: goto tr54;
971 }
972 if ( (*p) < 65 ) {
973 if ( 48 <= (*p) && (*p) <= 57 )
974 goto tr47;
975 } else if ( (*p) > 90 ) {
976 if ( 97 <= (*p) && (*p) <= 122 )
977 goto tr54;
978 } else
979 goto tr54;
980 goto tr84;
981tr49:
982#line 1 "NONE"
983 {te = p+1;}
984 goto st45;
985st45:
986 if ( ++p == pe )
987 goto _test_eof45;
988case 45:
989#line 904 "parser/machine.c"
990 switch( (*p) ) {
991 case 43: goto st11;
992 case 61: goto tr87;
993 case 95: goto st11;
994 }
995 if ( (*p) < 48 ) {
996 if ( 45 <= (*p) && (*p) <= 46 )
997 goto st11;
998 } else if ( (*p) > 57 ) {
999 if ( (*p) > 90 ) {
1000 if ( 97 <= (*p) && (*p) <= 122 )
1001 goto st11;
1002 } else if ( (*p) >= 65 )
1003 goto st11;
1004 } else
1005 goto st11;
1006 goto tr66;
1007st11:
1008 if ( ++p == pe )
1009 goto _test_eof11;
1010case 11:
1011 switch( (*p) ) {
1012 case 43: goto st11;
1013 case 47: goto st12;
1014 case 62: goto tr17;
1015 case 95: goto st11;
1016 }
1017 if ( (*p) < 65 ) {
1018 if ( 45 <= (*p) && (*p) <= 57 )
1019 goto st11;
1020 } else if ( (*p) > 90 ) {
1021 if ( 97 <= (*p) && (*p) <= 122 )
1022 goto st11;
1023 } else
1024 goto st11;
1025 goto tr0;
1026st12:
1027 if ( ++p == pe )
1028 goto _test_eof12;
1029case 12:
1030 switch( (*p) ) {
1031 case 43: goto st11;
1032 case 95: goto st11;
1033 }
1034 if ( (*p) < 48 ) {
1035 if ( 45 <= (*p) && (*p) <= 46 )
1036 goto st11;
1037 } else if ( (*p) > 57 ) {
1038 if ( (*p) > 90 ) {
1039 if ( 97 <= (*p) && (*p) <= 122 )
1040 goto st11;
1041 } else if ( (*p) >= 65 )
1042 goto st11;
1043 } else
1044 goto st11;
1045 goto tr0;
1046st46:
1047 if ( ++p == pe )
1048 goto _test_eof46;
1049case 46:
1050 if ( (*p) == 61 )
1051 goto tr88;
1052 goto tr66;
1053st47:
1054 if ( ++p == pe )
1055 goto _test_eof47;
1056case 47:
1057 if ( (*p) == 61 )
1058 goto tr89;
1059 goto tr66;
1060tr52:
1061#line 1 "NONE"
1062 {te = p+1;}
1063#line 74 "parser/machine.rl"
1064 {act = 29;}
1065 goto st48;
1066tr95:
1067#line 1 "NONE"
1068 {te = p+1;}
1069#line 53 "parser/machine.rl"
1070 {act = 9;}
1071 goto st48;
1072tr98:
1073#line 1 "NONE"
1074 {te = p+1;}
1075#line 54 "parser/machine.rl"
1076 {act = 10;}
1077 goto st48;
1078tr99:
1079#line 1 "NONE"
1080 {te = p+1;}
1081#line 55 "parser/machine.rl"
1082 {act = 11;}
1083 goto st48;
1084tr106:
1085#line 1 "NONE"
1086 {te = p+1;}
1087#line 57 "parser/machine.rl"
1088 {act = 13;}
1089 goto st48;
1090tr108:
1091#line 1 "NONE"
1092 {te = p+1;}
1093#line 58 "parser/machine.rl"
1094 {act = 14;}
1095 goto st48;
1096tr109:
1097#line 1 "NONE"
1098 {te = p+1;}
1099#line 59 "parser/machine.rl"
1100 {act = 15;}
1101 goto st48;
1102tr111:
1103#line 1 "NONE"
1104 {te = p+1;}
1105#line 60 "parser/machine.rl"
1106 {act = 16;}
1107 goto st48;
1108tr114:
1109#line 1 "NONE"
1110 {te = p+1;}
1111#line 61 "parser/machine.rl"
1112 {act = 17;}
1113 goto st48;
1114tr117:
1115#line 1 "NONE"
1116 {te = p+1;}
1117#line 62 "parser/machine.rl"
1118 {act = 18;}
1119 goto st48;
1120st48:
1121 if ( ++p == pe )
1122 goto _test_eof48;
1123case 48:
1124#line 1018 "parser/machine.c"
1125 switch( (*p) ) {
1126 case 39: goto st42;
1127 case 43: goto st13;
1128 case 46: goto st13;
1129 case 47: goto st5;
1130 case 58: goto st14;
1131 case 95: goto tr54;
1132 }
1133 if ( (*p) < 65 ) {
1134 if ( 45 <= (*p) && (*p) <= 57 )
1135 goto tr52;
1136 } else if ( (*p) > 90 ) {
1137 if ( 97 <= (*p) && (*p) <= 122 )
1138 goto tr52;
1139 } else
1140 goto tr52;
1141 goto tr5;
1142st13:
1143 if ( ++p == pe )
1144 goto _test_eof13;
1145case 13:
1146 switch( (*p) ) {
1147 case 43: goto st13;
1148 case 47: goto st5;
1149 case 58: goto st14;
1150 case 95: goto st4;
1151 }
1152 if ( (*p) < 65 ) {
1153 if ( 45 <= (*p) && (*p) <= 57 )
1154 goto st13;
1155 } else if ( (*p) > 90 ) {
1156 if ( 97 <= (*p) && (*p) <= 122 )
1157 goto st13;
1158 } else
1159 goto st13;
1160 goto tr5;
1161st14:
1162 if ( ++p == pe )
1163 goto _test_eof14;
1164case 14:
1165 switch( (*p) ) {
1166 case 33: goto st49;
1167 case 61: goto st49;
1168 case 95: goto st49;
1169 case 126: goto st49;
1170 }
1171 if ( (*p) < 42 ) {
1172 if ( 36 <= (*p) && (*p) <= 39 )
1173 goto st49;
1174 } else if ( (*p) > 58 ) {
1175 if ( (*p) > 90 ) {
1176 if ( 97 <= (*p) && (*p) <= 122 )
1177 goto st49;
1178 } else if ( (*p) >= 63 )
1179 goto st49;
1180 } else
1181 goto st49;
1182 goto tr5;
1183st49:
1184 if ( ++p == pe )
1185 goto _test_eof49;
1186case 49:
1187 switch( (*p) ) {
1188 case 33: goto st49;
1189 case 61: goto st49;
1190 case 95: goto st49;
1191 case 126: goto st49;
1192 }
1193 if ( (*p) < 42 ) {
1194 if ( 36 <= (*p) && (*p) <= 39 )
1195 goto st49;
1196 } else if ( (*p) > 58 ) {
1197 if ( (*p) > 90 ) {
1198 if ( 97 <= (*p) && (*p) <= 122 )
1199 goto st49;
1200 } else if ( (*p) >= 63 )
1201 goto st49;
1202 } else
1203 goto st49;
1204 goto tr90;
1205tr55:
1206#line 1 "NONE"
1207 {te = p+1;}
1208#line 74 "parser/machine.rl"
1209 {act = 29;}
1210 goto st50;
1211st50:
1212 if ( ++p == pe )
1213 goto _test_eof50;
1214case 50:
1215#line 1106 "parser/machine.c"
1216 switch( (*p) ) {
1217 case 39: goto st42;
1218 case 43: goto st13;
1219 case 46: goto st13;
1220 case 47: goto st5;
1221 case 58: goto st14;
1222 case 95: goto tr54;
1223 case 115: goto tr91;
1224 }
1225 if ( (*p) < 65 ) {
1226 if ( 45 <= (*p) && (*p) <= 57 )
1227 goto tr52;
1228 } else if ( (*p) > 90 ) {
1229 if ( 97 <= (*p) && (*p) <= 122 )
1230 goto tr52;
1231 } else
1232 goto tr52;
1233 goto tr86;
1234tr91:
1235#line 1 "NONE"
1236 {te = p+1;}
1237#line 74 "parser/machine.rl"
1238 {act = 29;}
1239 goto st51;
1240st51:
1241 if ( ++p == pe )
1242 goto _test_eof51;
1243case 51:
1244#line 1132 "parser/machine.c"
1245 switch( (*p) ) {
1246 case 39: goto st42;
1247 case 43: goto st13;
1248 case 46: goto st13;
1249 case 47: goto st5;
1250 case 58: goto st14;
1251 case 95: goto tr54;
1252 case 115: goto tr92;
1253 }
1254 if ( (*p) < 65 ) {
1255 if ( 45 <= (*p) && (*p) <= 57 )
1256 goto tr52;
1257 } else if ( (*p) > 90 ) {
1258 if ( 97 <= (*p) && (*p) <= 122 )
1259 goto tr52;
1260 } else
1261 goto tr52;
1262 goto tr86;
1263tr92:
1264#line 1 "NONE"
1265 {te = p+1;}
1266#line 74 "parser/machine.rl"
1267 {act = 29;}
1268 goto st52;
1269st52:
1270 if ( ++p == pe )
1271 goto _test_eof52;
1272case 52:
1273#line 1158 "parser/machine.c"
1274 switch( (*p) ) {
1275 case 39: goto st42;
1276 case 43: goto st13;
1277 case 46: goto st13;
1278 case 47: goto st5;
1279 case 58: goto st14;
1280 case 95: goto tr54;
1281 case 101: goto tr93;
1282 }
1283 if ( (*p) < 65 ) {
1284 if ( 45 <= (*p) && (*p) <= 57 )
1285 goto tr52;
1286 } else if ( (*p) > 90 ) {
1287 if ( 97 <= (*p) && (*p) <= 122 )
1288 goto tr52;
1289 } else
1290 goto tr52;
1291 goto tr86;
1292tr93:
1293#line 1 "NONE"
1294 {te = p+1;}
1295#line 74 "parser/machine.rl"
1296 {act = 29;}
1297 goto st53;
1298st53:
1299 if ( ++p == pe )
1300 goto _test_eof53;
1301case 53:
1302#line 1184 "parser/machine.c"
1303 switch( (*p) ) {
1304 case 39: goto st42;
1305 case 43: goto st13;
1306 case 46: goto st13;
1307 case 47: goto st5;
1308 case 58: goto st14;
1309 case 95: goto tr54;
1310 case 114: goto tr94;
1311 }
1312 if ( (*p) < 65 ) {
1313 if ( 45 <= (*p) && (*p) <= 57 )
1314 goto tr52;
1315 } else if ( (*p) > 90 ) {
1316 if ( 97 <= (*p) && (*p) <= 122 )
1317 goto tr52;
1318 } else
1319 goto tr52;
1320 goto tr86;
1321tr94:
1322#line 1 "NONE"
1323 {te = p+1;}
1324#line 74 "parser/machine.rl"
1325 {act = 29;}
1326 goto st54;
1327st54:
1328 if ( ++p == pe )
1329 goto _test_eof54;
1330case 54:
1331#line 1210 "parser/machine.c"
1332 switch( (*p) ) {
1333 case 39: goto st42;
1334 case 43: goto st13;
1335 case 46: goto st13;
1336 case 47: goto st5;
1337 case 58: goto st14;
1338 case 95: goto tr54;
1339 case 116: goto tr95;
1340 }
1341 if ( (*p) < 65 ) {
1342 if ( 45 <= (*p) && (*p) <= 57 )
1343 goto tr52;
1344 } else if ( (*p) > 90 ) {
1345 if ( 97 <= (*p) && (*p) <= 122 )
1346 goto tr52;
1347 } else
1348 goto tr52;
1349 goto tr86;
1350tr56:
1351#line 1 "NONE"
1352 {te = p+1;}
1353#line 74 "parser/machine.rl"
1354 {act = 29;}
1355 goto st55;
1356st55:
1357 if ( ++p == pe )
1358 goto _test_eof55;
1359case 55:
1360#line 1236 "parser/machine.c"
1361 switch( (*p) ) {
1362 case 39: goto st42;
1363 case 43: goto st13;
1364 case 46: goto st13;
1365 case 47: goto st5;
1366 case 58: goto st14;
1367 case 95: goto tr54;
1368 case 108: goto tr96;
1369 }
1370 if ( (*p) < 65 ) {
1371 if ( 45 <= (*p) && (*p) <= 57 )
1372 goto tr52;
1373 } else if ( (*p) > 90 ) {
1374 if ( 97 <= (*p) && (*p) <= 122 )
1375 goto tr52;
1376 } else
1377 goto tr52;
1378 goto tr86;
1379tr96:
1380#line 1 "NONE"
1381 {te = p+1;}
1382#line 74 "parser/machine.rl"
1383 {act = 29;}
1384 goto st56;
1385st56:
1386 if ( ++p == pe )
1387 goto _test_eof56;
1388case 56:
1389#line 1262 "parser/machine.c"
1390 switch( (*p) ) {
1391 case 39: goto st42;
1392 case 43: goto st13;
1393 case 46: goto st13;
1394 case 47: goto st5;
1395 case 58: goto st14;
1396 case 95: goto tr54;
1397 case 115: goto tr97;
1398 }
1399 if ( (*p) < 65 ) {
1400 if ( 45 <= (*p) && (*p) <= 57 )
1401 goto tr52;
1402 } else if ( (*p) > 90 ) {
1403 if ( 97 <= (*p) && (*p) <= 122 )
1404 goto tr52;
1405 } else
1406 goto tr52;
1407 goto tr86;
1408tr97:
1409#line 1 "NONE"
1410 {te = p+1;}
1411#line 74 "parser/machine.rl"
1412 {act = 29;}
1413 goto st57;
1414st57:
1415 if ( ++p == pe )
1416 goto _test_eof57;
1417case 57:
1418#line 1288 "parser/machine.c"
1419 switch( (*p) ) {
1420 case 39: goto st42;
1421 case 43: goto st13;
1422 case 46: goto st13;
1423 case 47: goto st5;
1424 case 58: goto st14;
1425 case 95: goto tr54;
1426 case 101: goto tr98;
1427 }
1428 if ( (*p) < 65 ) {
1429 if ( 45 <= (*p) && (*p) <= 57 )
1430 goto tr52;
1431 } else if ( (*p) > 90 ) {
1432 if ( 97 <= (*p) && (*p) <= 122 )
1433 goto tr52;
1434 } else
1435 goto tr52;
1436 goto tr86;
1437tr57:
1438#line 1 "NONE"
1439 {te = p+1;}
1440#line 74 "parser/machine.rl"
1441 {act = 29;}
1442 goto st58;
1443st58:
1444 if ( ++p == pe )
1445 goto _test_eof58;
1446case 58:
1447#line 1314 "parser/machine.c"
1448 switch( (*p) ) {
1449 case 39: goto st42;
1450 case 43: goto st13;
1451 case 46: goto st13;
1452 case 47: goto st5;
1453 case 58: goto st14;
1454 case 95: goto tr54;
1455 case 102: goto tr99;
1456 case 110: goto tr100;
1457 }
1458 if ( (*p) < 65 ) {
1459 if ( 45 <= (*p) && (*p) <= 57 )
1460 goto tr52;
1461 } else if ( (*p) > 90 ) {
1462 if ( 97 <= (*p) && (*p) <= 122 )
1463 goto tr52;
1464 } else
1465 goto tr52;
1466 goto tr86;
1467tr100:
1468#line 1 "NONE"
1469 {te = p+1;}
1470#line 56 "parser/machine.rl"
1471 {act = 12;}
1472 goto st59;
1473st59:
1474 if ( ++p == pe )
1475 goto _test_eof59;
1476case 59:
1477#line 1341 "parser/machine.c"
1478 switch( (*p) ) {
1479 case 39: goto st42;
1480 case 43: goto st13;
1481 case 46: goto st13;
1482 case 47: goto st5;
1483 case 58: goto st14;
1484 case 95: goto tr54;
1485 case 104: goto tr102;
1486 }
1487 if ( (*p) < 65 ) {
1488 if ( 45 <= (*p) && (*p) <= 57 )
1489 goto tr52;
1490 } else if ( (*p) > 90 ) {
1491 if ( 97 <= (*p) && (*p) <= 122 )
1492 goto tr52;
1493 } else
1494 goto tr52;
1495 goto tr101;
1496tr102:
1497#line 1 "NONE"
1498 {te = p+1;}
1499#line 74 "parser/machine.rl"
1500 {act = 29;}
1501 goto st60;
1502st60:
1503 if ( ++p == pe )
1504 goto _test_eof60;
1505case 60:
1506#line 1367 "parser/machine.c"
1507 switch( (*p) ) {
1508 case 39: goto st42;
1509 case 43: goto st13;
1510 case 46: goto st13;
1511 case 47: goto st5;
1512 case 58: goto st14;
1513 case 95: goto tr54;
1514 case 101: goto tr103;
1515 }
1516 if ( (*p) < 65 ) {
1517 if ( 45 <= (*p) && (*p) <= 57 )
1518 goto tr52;
1519 } else if ( (*p) > 90 ) {
1520 if ( 97 <= (*p) && (*p) <= 122 )
1521 goto tr52;
1522 } else
1523 goto tr52;
1524 goto tr86;
1525tr103:
1526#line 1 "NONE"
1527 {te = p+1;}
1528#line 74 "parser/machine.rl"
1529 {act = 29;}
1530 goto st61;
1531st61:
1532 if ( ++p == pe )
1533 goto _test_eof61;
1534case 61:
1535#line 1393 "parser/machine.c"
1536 switch( (*p) ) {
1537 case 39: goto st42;
1538 case 43: goto st13;
1539 case 46: goto st13;
1540 case 47: goto st5;
1541 case 58: goto st14;
1542 case 95: goto tr54;
1543 case 114: goto tr104;
1544 }
1545 if ( (*p) < 65 ) {
1546 if ( 45 <= (*p) && (*p) <= 57 )
1547 goto tr52;
1548 } else if ( (*p) > 90 ) {
1549 if ( 97 <= (*p) && (*p) <= 122 )
1550 goto tr52;
1551 } else
1552 goto tr52;
1553 goto tr86;
1554tr104:
1555#line 1 "NONE"
1556 {te = p+1;}
1557#line 74 "parser/machine.rl"
1558 {act = 29;}
1559 goto st62;
1560st62:
1561 if ( ++p == pe )
1562 goto _test_eof62;
1563case 62:
1564#line 1419 "parser/machine.c"
1565 switch( (*p) ) {
1566 case 39: goto st42;
1567 case 43: goto st13;
1568 case 46: goto st13;
1569 case 47: goto st5;
1570 case 58: goto st14;
1571 case 95: goto tr54;
1572 case 105: goto tr105;
1573 }
1574 if ( (*p) < 65 ) {
1575 if ( 45 <= (*p) && (*p) <= 57 )
1576 goto tr52;
1577 } else if ( (*p) > 90 ) {
1578 if ( 97 <= (*p) && (*p) <= 122 )
1579 goto tr52;
1580 } else
1581 goto tr52;
1582 goto tr86;
1583tr105:
1584#line 1 "NONE"
1585 {te = p+1;}
1586#line 74 "parser/machine.rl"
1587 {act = 29;}
1588 goto st63;
1589st63:
1590 if ( ++p == pe )
1591 goto _test_eof63;
1592case 63:
1593#line 1445 "parser/machine.c"
1594 switch( (*p) ) {
1595 case 39: goto st42;
1596 case 43: goto st13;
1597 case 46: goto st13;
1598 case 47: goto st5;
1599 case 58: goto st14;
1600 case 95: goto tr54;
1601 case 116: goto tr106;
1602 }
1603 if ( (*p) < 65 ) {
1604 if ( 45 <= (*p) && (*p) <= 57 )
1605 goto tr52;
1606 } else if ( (*p) > 90 ) {
1607 if ( 97 <= (*p) && (*p) <= 122 )
1608 goto tr52;
1609 } else
1610 goto tr52;
1611 goto tr86;
1612tr58:
1613#line 1 "NONE"
1614 {te = p+1;}
1615#line 74 "parser/machine.rl"
1616 {act = 29;}
1617 goto st64;
1618st64:
1619 if ( ++p == pe )
1620 goto _test_eof64;
1621case 64:
1622#line 1471 "parser/machine.c"
1623 switch( (*p) ) {
1624 case 39: goto st42;
1625 case 43: goto st13;
1626 case 46: goto st13;
1627 case 47: goto st5;
1628 case 58: goto st14;
1629 case 95: goto tr54;
1630 case 101: goto tr107;
1631 }
1632 if ( (*p) < 65 ) {
1633 if ( 45 <= (*p) && (*p) <= 57 )
1634 goto tr52;
1635 } else if ( (*p) > 90 ) {
1636 if ( 97 <= (*p) && (*p) <= 122 )
1637 goto tr52;
1638 } else
1639 goto tr52;
1640 goto tr86;
1641tr107:
1642#line 1 "NONE"
1643 {te = p+1;}
1644#line 74 "parser/machine.rl"
1645 {act = 29;}
1646 goto st65;
1647st65:
1648 if ( ++p == pe )
1649 goto _test_eof65;
1650case 65:
1651#line 1497 "parser/machine.c"
1652 switch( (*p) ) {
1653 case 39: goto st42;
1654 case 43: goto st13;
1655 case 46: goto st13;
1656 case 47: goto st5;
1657 case 58: goto st14;
1658 case 95: goto tr54;
1659 case 116: goto tr108;
1660 }
1661 if ( (*p) < 65 ) {
1662 if ( 45 <= (*p) && (*p) <= 57 )
1663 goto tr52;
1664 } else if ( (*p) > 90 ) {
1665 if ( 97 <= (*p) && (*p) <= 122 )
1666 goto tr52;
1667 } else
1668 goto tr52;
1669 goto tr86;
1670tr59:
1671#line 1 "NONE"
1672 {te = p+1;}
1673#line 74 "parser/machine.rl"
1674 {act = 29;}
1675 goto st66;
1676st66:
1677 if ( ++p == pe )
1678 goto _test_eof66;
1679case 66:
1680#line 1523 "parser/machine.c"
1681 switch( (*p) ) {
1682 case 39: goto st42;
1683 case 43: goto st13;
1684 case 46: goto st13;
1685 case 47: goto st5;
1686 case 58: goto st14;
1687 case 95: goto tr54;
1688 case 114: goto tr109;
1689 }
1690 if ( (*p) < 65 ) {
1691 if ( 45 <= (*p) && (*p) <= 57 )
1692 goto tr52;
1693 } else if ( (*p) > 90 ) {
1694 if ( 97 <= (*p) && (*p) <= 122 )
1695 goto tr52;
1696 } else
1697 goto tr52;
1698 goto tr86;
1699tr60:
1700#line 1 "NONE"
1701 {te = p+1;}
1702#line 74 "parser/machine.rl"
1703 {act = 29;}
1704 goto st67;
1705st67:
1706 if ( ++p == pe )
1707 goto _test_eof67;
1708case 67:
1709#line 1549 "parser/machine.c"
1710 switch( (*p) ) {
1711 case 39: goto st42;
1712 case 43: goto st13;
1713 case 46: goto st13;
1714 case 47: goto st5;
1715 case 58: goto st14;
1716 case 95: goto tr54;
1717 case 101: goto tr110;
1718 }
1719 if ( (*p) < 65 ) {
1720 if ( 45 <= (*p) && (*p) <= 57 )
1721 goto tr52;
1722 } else if ( (*p) > 90 ) {
1723 if ( 97 <= (*p) && (*p) <= 122 )
1724 goto tr52;
1725 } else
1726 goto tr52;
1727 goto tr86;
1728tr110:
1729#line 1 "NONE"
1730 {te = p+1;}
1731#line 74 "parser/machine.rl"
1732 {act = 29;}
1733 goto st68;
1734st68:
1735 if ( ++p == pe )
1736 goto _test_eof68;
1737case 68:
1738#line 1575 "parser/machine.c"
1739 switch( (*p) ) {
1740 case 39: goto st42;
1741 case 43: goto st13;
1742 case 46: goto st13;
1743 case 47: goto st5;
1744 case 58: goto st14;
1745 case 95: goto tr54;
1746 case 99: goto tr111;
1747 }
1748 if ( (*p) < 65 ) {
1749 if ( 45 <= (*p) && (*p) <= 57 )
1750 goto tr52;
1751 } else if ( (*p) > 90 ) {
1752 if ( 97 <= (*p) && (*p) <= 122 )
1753 goto tr52;
1754 } else
1755 goto tr52;
1756 goto tr86;
1757tr61:
1758#line 1 "NONE"
1759 {te = p+1;}
1760#line 74 "parser/machine.rl"
1761 {act = 29;}
1762 goto st69;
1763st69:
1764 if ( ++p == pe )
1765 goto _test_eof69;
1766case 69:
1767#line 1601 "parser/machine.c"
1768 switch( (*p) ) {
1769 case 39: goto st42;
1770 case 43: goto st13;
1771 case 46: goto st13;
1772 case 47: goto st5;
1773 case 58: goto st14;
1774 case 95: goto tr54;
1775 case 104: goto tr112;
1776 }
1777 if ( (*p) < 65 ) {
1778 if ( 45 <= (*p) && (*p) <= 57 )
1779 goto tr52;
1780 } else if ( (*p) > 90 ) {
1781 if ( 97 <= (*p) && (*p) <= 122 )
1782 goto tr52;
1783 } else
1784 goto tr52;
1785 goto tr86;
1786tr112:
1787#line 1 "NONE"
1788 {te = p+1;}
1789#line 74 "parser/machine.rl"
1790 {act = 29;}
1791 goto st70;
1792st70:
1793 if ( ++p == pe )
1794 goto _test_eof70;
1795case 70:
1796#line 1627 "parser/machine.c"
1797 switch( (*p) ) {
1798 case 39: goto st42;
1799 case 43: goto st13;
1800 case 46: goto st13;
1801 case 47: goto st5;
1802 case 58: goto st14;
1803 case 95: goto tr54;
1804 case 101: goto tr113;
1805 }
1806 if ( (*p) < 65 ) {
1807 if ( 45 <= (*p) && (*p) <= 57 )
1808 goto tr52;
1809 } else if ( (*p) > 90 ) {
1810 if ( 97 <= (*p) && (*p) <= 122 )
1811 goto tr52;
1812 } else
1813 goto tr52;
1814 goto tr86;
1815tr113:
1816#line 1 "NONE"
1817 {te = p+1;}
1818#line 74 "parser/machine.rl"
1819 {act = 29;}
1820 goto st71;
1821st71:
1822 if ( ++p == pe )
1823 goto _test_eof71;
1824case 71:
1825#line 1653 "parser/machine.c"
1826 switch( (*p) ) {
1827 case 39: goto st42;
1828 case 43: goto st13;
1829 case 46: goto st13;
1830 case 47: goto st5;
1831 case 58: goto st14;
1832 case 95: goto tr54;
1833 case 110: goto tr114;
1834 }
1835 if ( (*p) < 65 ) {
1836 if ( 45 <= (*p) && (*p) <= 57 )
1837 goto tr52;
1838 } else if ( (*p) > 90 ) {
1839 if ( 97 <= (*p) && (*p) <= 122 )
1840 goto tr52;
1841 } else
1842 goto tr52;
1843 goto tr86;
1844tr62:
1845#line 1 "NONE"
1846 {te = p+1;}
1847#line 74 "parser/machine.rl"
1848 {act = 29;}
1849 goto st72;
1850st72:
1851 if ( ++p == pe )
1852 goto _test_eof72;
1853case 72:
1854#line 1679 "parser/machine.c"
1855 switch( (*p) ) {
1856 case 39: goto st42;
1857 case 43: goto st13;
1858 case 46: goto st13;
1859 case 47: goto st5;
1860 case 58: goto st14;
1861 case 95: goto tr54;
1862 case 105: goto tr115;
1863 }
1864 if ( (*p) < 65 ) {
1865 if ( 45 <= (*p) && (*p) <= 57 )
1866 goto tr52;
1867 } else if ( (*p) > 90 ) {
1868 if ( 97 <= (*p) && (*p) <= 122 )
1869 goto tr52;
1870 } else
1871 goto tr52;
1872 goto tr86;
1873tr115:
1874#line 1 "NONE"
1875 {te = p+1;}
1876#line 74 "parser/machine.rl"
1877 {act = 29;}
1878 goto st73;
1879st73:
1880 if ( ++p == pe )
1881 goto _test_eof73;
1882case 73:
1883#line 1705 "parser/machine.c"
1884 switch( (*p) ) {
1885 case 39: goto st42;
1886 case 43: goto st13;
1887 case 46: goto st13;
1888 case 47: goto st5;
1889 case 58: goto st14;
1890 case 95: goto tr54;
1891 case 116: goto tr116;
1892 }
1893 if ( (*p) < 65 ) {
1894 if ( 45 <= (*p) && (*p) <= 57 )
1895 goto tr52;
1896 } else if ( (*p) > 90 ) {
1897 if ( 97 <= (*p) && (*p) <= 122 )
1898 goto tr52;
1899 } else
1900 goto tr52;
1901 goto tr86;
1902tr116:
1903#line 1 "NONE"
1904 {te = p+1;}
1905#line 74 "parser/machine.rl"
1906 {act = 29;}
1907 goto st74;
1908st74:
1909 if ( ++p == pe )
1910 goto _test_eof74;
1911case 74:
1912#line 1731 "parser/machine.c"
1913 switch( (*p) ) {
1914 case 39: goto st42;
1915 case 43: goto st13;
1916 case 46: goto st13;
1917 case 47: goto st5;
1918 case 58: goto st14;
1919 case 95: goto tr54;
1920 case 104: goto tr117;
1921 }
1922 if ( (*p) < 65 ) {
1923 if ( 45 <= (*p) && (*p) <= 57 )
1924 goto tr52;
1925 } else if ( (*p) > 90 ) {
1926 if ( 97 <= (*p) && (*p) <= 122 )
1927 goto tr52;
1928 } else
1929 goto tr52;
1930 goto tr86;
1931st75:
1932 if ( ++p == pe )
1933 goto _test_eof75;
1934case 75:
1935 if ( (*p) == 124 )
1936 goto tr118;
1937 goto tr66;
1938tr65:
1939#line 1 "NONE"
1940 {te = p+1;}
1941 goto st76;
1942st76:
1943 if ( ++p == pe )
1944 goto _test_eof76;
1945case 76:
1946#line 1763 "parser/machine.c"
1947 if ( (*p) == 47 )
1948 goto st15;
1949 goto tr66;
1950st15:
1951 if ( ++p == pe )
1952 goto _test_eof15;
1953case 15:
1954 switch( (*p) ) {
1955 case 43: goto st77;
1956 case 95: goto st77;
1957 }
1958 if ( (*p) < 48 ) {
1959 if ( 45 <= (*p) && (*p) <= 46 )
1960 goto st77;
1961 } else if ( (*p) > 57 ) {
1962 if ( (*p) > 90 ) {
1963 if ( 97 <= (*p) && (*p) <= 122 )
1964 goto st77;
1965 } else if ( (*p) >= 65 )
1966 goto st77;
1967 } else
1968 goto st77;
1969 goto tr0;
1970st77:
1971 if ( ++p == pe )
1972 goto _test_eof77;
1973case 77:
1974 switch( (*p) ) {
1975 case 43: goto st77;
1976 case 47: goto st78;
1977 case 95: goto st77;
1978 }
1979 if ( (*p) < 65 ) {
1980 if ( 45 <= (*p) && (*p) <= 57 )
1981 goto st77;
1982 } else if ( (*p) > 90 ) {
1983 if ( 97 <= (*p) && (*p) <= 122 )
1984 goto st77;
1985 } else
1986 goto st77;
1987 goto tr120;
1988st78:
1989 if ( ++p == pe )
1990 goto _test_eof78;
1991case 78:
1992 switch( (*p) ) {
1993 case 43: goto st77;
1994 case 95: goto st77;
1995 }
1996 if ( (*p) < 48 ) {
1997 if ( 45 <= (*p) && (*p) <= 46 )
1998 goto st77;
1999 } else if ( (*p) > 57 ) {
2000 if ( (*p) > 90 ) {
2001 if ( 97 <= (*p) && (*p) <= 122 )
2002 goto st77;
2003 } else if ( (*p) >= 65 )
2004 goto st77;
2005 } else
2006 goto st77;
2007 goto tr120;
2008tr22:
2009#line 35 "parser/machine.rl"
2010 {{p = ((te))-1;}{ tok(TEXT, r); add_lines(r, ts, te); }}
2011 goto st79;
2012tr24:
2013#line 1 "NONE"
2014 { switch( act ) {
2015 case 0:
2016 {{goto st0;}}
2017 break;
2018 case 3:
2019 {{p = ((te))-1;} tok(TEXT, r); add_lines(r, ts, te); }
2020 break;
2021 }
2022 }
2023 goto st79;
2024tr122:
2025#line 33 "parser/machine.rl"
2026 {te = p+1;{ if (!tokleave('"', r)) return 1; {cs = stack[--top];goto _again;} }}
2027 goto st79;
2028tr125:
2029#line 35 "parser/machine.rl"
2030 {te = p;p--;{ tok(TEXT, r); add_lines(r, ts, te); }}
2031 goto st79;
2032tr127:
2033#line 36 "parser/machine.rl"
2034 {te = p;p--;{ tok(TEXT, r); }}
2035 goto st79;
2036tr128:
2037#line 34 "parser/machine.rl"
2038 {te = p+1;{ tokenter(INTERP, '}', r); { /* replaced nostack-return to return non-zero error */ {stack[top++] = 79;goto st22;}} }}
2039 goto st79;
2040st79:
2041#line 1 "NONE"
2042 {ts = 0;}
2043#line 1 "NONE"
2044 {act = 0;}
2045 if ( ++p == pe )
2046 goto _test_eof79;
2047case 79:
2048#line 1 "NONE"
2049 {ts = p;}
2050#line 1857 "parser/machine.c"
2051 switch( (*p) ) {
2052 case 34: goto tr122;
2053 case 36: goto st81;
2054 case 92: goto st17;
2055 }
2056 goto tr23;
2057tr23:
2058#line 1 "NONE"
2059 {te = p+1;}
2060#line 35 "parser/machine.rl"
2061 {act = 3;}
2062 goto st80;
2063st80:
2064 if ( ++p == pe )
2065 goto _test_eof80;
2066case 80:
2067#line 1871 "parser/machine.c"
2068 switch( (*p) ) {
2069 case 34: goto tr125;
2070 case 36: goto st16;
2071 case 92: goto st17;
2072 }
2073 goto tr23;
2074st16:
2075 if ( ++p == pe )
2076 goto _test_eof16;
2077case 16:
2078 switch( (*p) ) {
2079 case 34: goto tr22;
2080 case 123: goto tr22;
2081 }
2082 goto tr23;
2083st17:
2084 if ( ++p == pe )
2085 goto _test_eof17;
2086case 17:
2087 goto tr23;
2088st81:
2089 if ( ++p == pe )
2090 goto _test_eof81;
2091case 81:
2092 switch( (*p) ) {
2093 case 34: goto tr127;
2094 case 123: goto tr128;
2095 }
2096 goto tr23;
2097tr25:
2098#line 45 "parser/machine.rl"
2099 {{p = ((te))-1;}{ tok(TEXT, r); add_lines(r, ts, te); }}
2100 goto st82;
2101tr29:
2102#line 1 "NONE"
2103 { switch( act ) {
2104 case 5:
2105 {{p = ((te))-1;} if (!tokleave(II, r)) return 1; {cs = stack[--top];goto _again;} }
2106 break;
2107 case 7:
2108 {{p = ((te))-1;} tok(TEXT, r); add_lines(r, ts, te); }
2109 break;
2110 }
2111 }
2112 goto st82;
2113tr131:
2114#line 45 "parser/machine.rl"
2115 {te = p;p--;{ tok(TEXT, r); add_lines(r, ts, te); }}
2116 goto st82;
2117tr134:
2118#line 46 "parser/machine.rl"
2119 {te = p;p--;{ tok(TEXT, r); }}
2120 goto st82;
2121tr135:
2122#line 44 "parser/machine.rl"
2123 {te = p+1;{ tokenter(INTERP, '}', r); { /* replaced nostack-return to return non-zero error */ {stack[top++] = 82;goto st22;}} }}
2124 goto st82;
2125tr137:
2126#line 43 "parser/machine.rl"
2127 {te = p;p--;{ if (!tokleave(II, r)) return 1; {cs = stack[--top];goto _again;} }}
2128 goto st82;
2129st82:
2130#line 1 "NONE"
2131 {ts = 0;}
2132 if ( ++p == pe )
2133 goto _test_eof82;
2134case 82:
2135#line 1 "NONE"
2136 {ts = p;}
2137#line 1932 "parser/machine.c"
2138 switch( (*p) ) {
2139 case 36: goto st84;
2140 case 39: goto st85;
2141 }
2142 goto tr26;
2143tr26:
2144#line 1 "NONE"
2145 {te = p+1;}
2146#line 45 "parser/machine.rl"
2147 {act = 7;}
2148 goto st83;
2149st83:
2150 if ( ++p == pe )
2151 goto _test_eof83;
2152case 83:
2153#line 1945 "parser/machine.c"
2154 switch( (*p) ) {
2155 case 36: goto st18;
2156 case 39: goto st19;
2157 }
2158 goto tr26;
2159st18:
2160 if ( ++p == pe )
2161 goto _test_eof18;
2162case 18:
2163 switch( (*p) ) {
2164 case 39: goto tr25;
2165 case 123: goto tr25;
2166 }
2167 goto tr26;
2168st19:
2169 if ( ++p == pe )
2170 goto _test_eof19;
2171case 19:
2172 switch( (*p) ) {
2173 case 36: goto tr25;
2174 case 39: goto st20;
2175 }
2176 goto tr26;
2177st20:
2178 if ( ++p == pe )
2179 goto _test_eof20;
2180case 20:
2181 switch( (*p) ) {
2182 case 36: goto tr26;
2183 case 39: goto tr26;
2184 case 92: goto st21;
2185 }
2186 goto tr25;
2187st21:
2188 if ( ++p == pe )
2189 goto _test_eof21;
2190case 21:
2191 goto tr26;
2192st84:
2193 if ( ++p == pe )
2194 goto _test_eof84;
2195case 84:
2196 switch( (*p) ) {
2197 case 39: goto tr134;
2198 case 123: goto tr135;
2199 }
2200 goto tr26;
2201st85:
2202 if ( ++p == pe )
2203 goto _test_eof85;
2204case 85:
2205 switch( (*p) ) {
2206 case 36: goto tr134;
2207 case 39: goto tr136;
2208 }
2209 goto tr26;
2210tr136:
2211#line 1 "NONE"
2212 {te = p+1;}
2213#line 43 "parser/machine.rl"
2214 {act = 5;}
2215 goto st86;
2216st86:
2217 if ( ++p == pe )
2218 goto _test_eof86;
2219case 86:
2220#line 2009 "parser/machine.c"
2221 switch( (*p) ) {
2222 case 36: goto tr26;
2223 case 39: goto tr26;
2224 case 92: goto st21;
2225 }
2226 goto tr137;
2227st0:
2228cs = 0;
2229 goto _out;
2230 }
2231 _test_eof22: cs = 22; goto _test_eof;
2232 _test_eof23: cs = 23; goto _test_eof;
2233 _test_eof1: cs = 1; goto _test_eof;
2234 _test_eof24: cs = 24; goto _test_eof;
2235 _test_eof2: cs = 2; goto _test_eof;
2236 _test_eof3: cs = 3; goto _test_eof;
2237 _test_eof25: cs = 25; goto _test_eof;
2238 _test_eof26: cs = 26; goto _test_eof;
2239 _test_eof27: cs = 27; goto _test_eof;
2240 _test_eof28: cs = 28; goto _test_eof;
2241 _test_eof29: cs = 29; goto _test_eof;
2242 _test_eof30: cs = 30; goto _test_eof;
2243 _test_eof31: cs = 31; goto _test_eof;
2244 _test_eof32: cs = 32; goto _test_eof;
2245 _test_eof33: cs = 33; goto _test_eof;
2246 _test_eof4: cs = 4; goto _test_eof;
2247 _test_eof5: cs = 5; goto _test_eof;
2248 _test_eof34: cs = 34; goto _test_eof;
2249 _test_eof35: cs = 35; goto _test_eof;
2250 _test_eof36: cs = 36; goto _test_eof;
2251 _test_eof37: cs = 37; goto _test_eof;
2252 _test_eof6: cs = 6; goto _test_eof;
2253 _test_eof38: cs = 38; goto _test_eof;
2254 _test_eof7: cs = 7; goto _test_eof;
2255 _test_eof8: cs = 8; goto _test_eof;
2256 _test_eof39: cs = 39; goto _test_eof;
2257 _test_eof40: cs = 40; goto _test_eof;
2258 _test_eof9: cs = 9; goto _test_eof;
2259 _test_eof10: cs = 10; goto _test_eof;
2260 _test_eof41: cs = 41; goto _test_eof;
2261 _test_eof42: cs = 42; goto _test_eof;
2262 _test_eof43: cs = 43; goto _test_eof;
2263 _test_eof44: cs = 44; goto _test_eof;
2264 _test_eof45: cs = 45; goto _test_eof;
2265 _test_eof11: cs = 11; goto _test_eof;
2266 _test_eof12: cs = 12; goto _test_eof;
2267 _test_eof46: cs = 46; goto _test_eof;
2268 _test_eof47: cs = 47; goto _test_eof;
2269 _test_eof48: cs = 48; goto _test_eof;
2270 _test_eof13: cs = 13; goto _test_eof;
2271 _test_eof14: cs = 14; goto _test_eof;
2272 _test_eof49: cs = 49; goto _test_eof;
2273 _test_eof50: cs = 50; goto _test_eof;
2274 _test_eof51: cs = 51; goto _test_eof;
2275 _test_eof52: cs = 52; goto _test_eof;
2276 _test_eof53: cs = 53; goto _test_eof;
2277 _test_eof54: cs = 54; goto _test_eof;
2278 _test_eof55: cs = 55; goto _test_eof;
2279 _test_eof56: cs = 56; goto _test_eof;
2280 _test_eof57: cs = 57; goto _test_eof;
2281 _test_eof58: cs = 58; goto _test_eof;
2282 _test_eof59: cs = 59; goto _test_eof;
2283 _test_eof60: cs = 60; goto _test_eof;
2284 _test_eof61: cs = 61; goto _test_eof;
2285 _test_eof62: cs = 62; goto _test_eof;
2286 _test_eof63: cs = 63; goto _test_eof;
2287 _test_eof64: cs = 64; goto _test_eof;
2288 _test_eof65: cs = 65; goto _test_eof;
2289 _test_eof66: cs = 66; goto _test_eof;
2290 _test_eof67: cs = 67; goto _test_eof;
2291 _test_eof68: cs = 68; goto _test_eof;
2292 _test_eof69: cs = 69; goto _test_eof;
2293 _test_eof70: cs = 70; goto _test_eof;
2294 _test_eof71: cs = 71; goto _test_eof;
2295 _test_eof72: cs = 72; goto _test_eof;
2296 _test_eof73: cs = 73; goto _test_eof;
2297 _test_eof74: cs = 74; goto _test_eof;
2298 _test_eof75: cs = 75; goto _test_eof;
2299 _test_eof76: cs = 76; goto _test_eof;
2300 _test_eof15: cs = 15; goto _test_eof;
2301 _test_eof77: cs = 77; goto _test_eof;
2302 _test_eof78: cs = 78; goto _test_eof;
2303 _test_eof79: cs = 79; goto _test_eof;
2304 _test_eof80: cs = 80; goto _test_eof;
2305 _test_eof16: cs = 16; goto _test_eof;
2306 _test_eof17: cs = 17; goto _test_eof;
2307 _test_eof81: cs = 81; goto _test_eof;
2308 _test_eof82: cs = 82; goto _test_eof;
2309 _test_eof83: cs = 83; goto _test_eof;
2310 _test_eof18: cs = 18; goto _test_eof;
2311 _test_eof19: cs = 19; goto _test_eof;
2312 _test_eof20: cs = 20; goto _test_eof;
2313 _test_eof21: cs = 21; goto _test_eof;
2314 _test_eof84: cs = 84; goto _test_eof;
2315 _test_eof85: cs = 85; goto _test_eof;
2316 _test_eof86: cs = 86; goto _test_eof;
2317
2318 _test_eof: {}
2319 if ( p == eof )
2320 {
2321 switch ( cs ) {
2322 case 23: goto tr66;
2323 case 1: goto tr0;
2324 case 24: goto tr68;
2325 case 2: goto tr2;
2326 case 3: goto tr2;
2327 case 25: goto tr68;
2328 case 26: goto tr70;
2329 case 27: goto tr66;
2330 case 28: goto tr72;
2331 case 29: goto tr66;
2332 case 30: goto tr66;
2333 case 31: goto tr66;
2334 case 32: goto tr66;
2335 case 33: goto tr5;
2336 case 4: goto tr5;
2337 case 5: goto tr5;
2338 case 34: goto tr77;
2339 case 35: goto tr77;
2340 case 36: goto tr66;
2341 case 37: goto tr66;
2342 case 6: goto tr0;
2343 case 38: goto tr68;
2344 case 7: goto tr2;
2345 case 8: goto tr2;
2346 case 39: goto tr68;
2347 case 40: goto tr66;
2348 case 9: goto tr0;
2349 case 10: goto tr0;
2350 case 41: goto tr84;
2351 case 42: goto tr86;
2352 case 43: goto tr86;
2353 case 44: goto tr84;
2354 case 45: goto tr66;
2355 case 11: goto tr0;
2356 case 12: goto tr0;
2357 case 46: goto tr66;
2358 case 47: goto tr66;
2359 case 48: goto tr5;
2360 case 13: goto tr5;
2361 case 14: goto tr5;
2362 case 49: goto tr90;
2363 case 50: goto tr86;
2364 case 51: goto tr86;
2365 case 52: goto tr86;
2366 case 53: goto tr86;
2367 case 54: goto tr86;
2368 case 55: goto tr86;
2369 case 56: goto tr86;
2370 case 57: goto tr86;
2371 case 58: goto tr86;
2372 case 59: goto tr101;
2373 case 60: goto tr86;
2374 case 61: goto tr86;
2375 case 62: goto tr86;
2376 case 63: goto tr86;
2377 case 64: goto tr86;
2378 case 65: goto tr86;
2379 case 66: goto tr86;
2380 case 67: goto tr86;
2381 case 68: goto tr86;
2382 case 69: goto tr86;
2383 case 70: goto tr86;
2384 case 71: goto tr86;
2385 case 72: goto tr86;
2386 case 73: goto tr86;
2387 case 74: goto tr86;
2388 case 75: goto tr66;
2389 case 76: goto tr66;
2390 case 15: goto tr0;
2391 case 77: goto tr120;
2392 case 78: goto tr120;
2393 case 80: goto tr125;
2394 case 16: goto tr22;
2395 case 17: goto tr24;
2396 case 81: goto tr127;
2397 case 83: goto tr131;
2398 case 18: goto tr25;
2399 case 19: goto tr25;
2400 case 20: goto tr25;
2401 case 21: goto tr29;
2402 case 84: goto tr134;
2403 case 85: goto tr134;
2404 case 86: goto tr137;
2405 }
2406 }
2407
2408 _out: {}
2409 }
2410
2411#line 151 "parser/machine.rl"
2412
2413 if (p != eof) {
2414 set_err("precedes the token that failed to lex");
2415 return 1;
2416 } else if (backrefs_len(&backrefs) != 0) {
2417 /* unterminated construct */
2418 set_err("is not terminated");
2419 free(backrefs.v);
2420 return 1;
2421 }
2422 free(backrefs.v);
2423 return 0;
2424}