6#line 1 "../../include/volksdata/codec/parser_common.h"
12#ifndef VOLK_PARSER_COMMON_H
13#define VOLK_PARSER_COMMON_H
25#define YYCTYPE uint8_t
26#define YYCURSOR it->cur
27#define YYMARKER it->mar
28#define YYLIMIT it->lim
29#define YYFILL fill(it) == 0
32typedef struct parse_it_t {
48#line 49 "parser_trig.c"
49#line 41 "../../include/volksdata/codec/parser_common.h"
73static void parse_init (
ParseIterator *it, FILE *fh,
const char *sh)
81 if (!it->
buf) log_error (
"Error allocating lexer buffer.");
100#line 101 "parser_trig.c"
101#line 90 "../../include/volksdata/codec/parser_common.h"
110 if (it->
eof)
return 1;
112 size_t shift = it->
tok - it->
buf;
113 size_t used = it->
lim - it->
tok;
121 cur_off = it->
cur - it->
buf,
122 tok_off = it->
tok - it->
buf,
123 lim_off = it->
lim - it->
buf,
124 mar_off = it->
mar - it->
buf;
129 log_error (
"Memory allocation error.");
134 it->
cur = it->
buf + cur_off;
135 it->
tok = it->
buf + tok_off;
136 it->
lim = it->
buf + lim_off;
137 it->
mar = it->
buf + mar_off;
139 log_debug (
"Shifting bytes: %zu", shift);
140 memmove (it->
buf, it->
tok, used);
141 log_trace (
"Limit offset before reading data: %zu", it->
lim - it->
tok);
149#line 150 "parser_trig.c"
150#line 136 "../../include/volksdata/codec/parser_common.h"
161#line 4 "lexer_trig.re"
174#ifdef VOLK_CODEC_DEBUG
181 #line 34 "lexer_trig.re"
190#line 191 "parser_trig.c"
193 unsigned int yyaccept = 0;
203 case '\'':
goto yy10;
210 case '0' ...
'9':
goto yy19;
222 case 'u' ...
'z':
goto yy27;
238 case 0xC3:
goto yy44;
240 case 0xCE ... 0xDF:
goto yy45;
241 case 0xCD:
goto yy46;
242 case 0xE0:
goto yy47;
244 case 0xE4 ... 0xEC:
goto yy48;
245 case 0xE2:
goto yy49;
246 case 0xE3:
goto yy50;
247 case 0xED:
goto yy51;
248 case 0xEF:
goto yy52;
249 case 0xF0:
goto yy53;
250 case 0xF1 ... 0xF2:
goto yy54;
251 case 0xF3:
goto yy55;
254 if (
YYFILL)
goto yyFillLabel0;
262#line 163 "ttl_action_def.re.inc"
265 "Invalid token @ %lu: %s (\\x%x)",
270#line 271 "parser_trig.c"
288 if (
YYFILL)
goto yyFillLabel1;
293#line 65 "ttl_action_def.re.inc"
300 for (
size_t i = 0; i < strlen ((
char *)ws); i++)
301 if (ws[i] ==
'\n' || ws[i] ==
'\r') newline (it);
306#line 307 "parser_trig.c"
324 if (
YYFILL)
goto yyFillLabel2;
329#line 60 "ttl_action_def.re.inc"
334#line 335 "parser_trig.c"
343 if (
YYFILL)
goto yyFillLabel3;
351 case 0xC2 ... 0xF4:
goto yy59;
367 if (
YYFILL)
goto yyFillLabel4;
374 case 0xC2 ... 0xDF:
goto yy71;
375 case 0xE0:
goto yy72;
376 case 0xE1 ... 0xEF:
goto yy73;
377 case 0xF0:
goto yy74;
378 case 0xF1 ... 0xF3:
goto yy75;
379 case 0xF4:
goto yy76;
383#line 55 "ttl_action_def.re.inc"
388#line 389 "parser_trig.c"
397 if (
YYFILL)
goto yyFillLabel5;
405 case 0xC2 ... 0xF4:
goto yy78;
406 case '\'':
goto yy79;
420 if (
YYFILL)
goto yyFillLabel6;
425#line 127 "ttl_action_def.re.inc"
427#line 428 "parser_trig.c"
430#line 129 "ttl_action_def.re.inc"
432#line 433 "parser_trig.c"
440 case '0' ...
'9':
goto yy89;
443 if (
YYFILL)
goto yyFillLabel7;
458 if (
YYFILL)
goto yyFillLabel8;
463#line 143 "ttl_action_def.re.inc"
465#line 466 "parser_trig.c"
471 case '0' ...
'9':
goto yy91;
474 if (
YYFILL)
goto yyFillLabel9;
479#line 145 "ttl_action_def.re.inc"
485#line 486 "parser_trig.c"
493 case '0' ...
'9':
goto yy19;
498 if (
YYFILL)
goto yyFillLabel10;
503#line 85 "ttl_action_def.re.inc"
506 size_t offset = *it->
tok ==
'+' ? 1 : 0;
513#line 514 "parser_trig.c"
529 case 0xEF ... 0xF3:
goto yy96;
530 case 0xCD:
goto yy101;
531 case 0xE2:
goto yy104;
534 if (
YYFILL)
goto yyFillLabel11;
539#line 35 "ttl_action_def.re.inc"
542 log_trace (
"Prefix declaration: '%s'", *token_p);
546#line 547 "parser_trig.c"
555 case '#':
goto yy111;
558 if (
YYFILL)
goto yyFillLabel12;
563#line 137 "ttl_action_def.re.inc"
569#line 570 "parser_trig.c"
582 case 0xC2 ... 0xF4:
goto yy113;
585 if (
YYFILL)
goto yyFillLabel13;
597 case 'q' ...
'z':
goto yy122;
598 case 'b':
goto yy125;
599 case 'p':
goto yy126;
602 if (
YYFILL)
goto yyFillLabel14;
618 case 0xEF ... 0xF3:
goto yy128;
621 if (
YYFILL)
goto yyFillLabel15;
637 case 0xEF ... 0xF3:
goto yy128;
639 case 'a':
goto yy143;
642 if (
YYFILL)
goto yyFillLabel16;
660 case 0xEF ... 0xF3:
goto yy128;
662 case 'r':
goto yy144;
665 if (
YYFILL)
goto yyFillLabel17;
683 case 0xEF ... 0xF3:
goto yy128;
685 case 'r':
goto yy145;
688 if (
YYFILL)
goto yyFillLabel18;
700 case '#':
goto yy146;
701 case ']':
goto yy147;
704 if (
YYFILL)
goto yyFillLabel19;
709#line 133 "ttl_action_def.re.inc"
711#line 712 "parser_trig.c"
714#line 135 "ttl_action_def.re.inc"
716#line 717 "parser_trig.c"
722 case '^':
goto yy149;
725 if (
YYFILL)
goto yyFillLabel20;
735 case ':':
goto yy150;
738 if (
YYFILL)
goto yyFillLabel21;
754 case 0xEF ... 0xF3:
goto yy128;
757 if (
YYFILL)
goto yyFillLabel22;
762#line 153 "ttl_action_def.re.inc"
767#line 768 "parser_trig.c"
780 case 0xEF ... 0xF3:
goto yy128;
781 case 'a':
goto yy151;
784 if (
YYFILL)
goto yyFillLabel23;
801 case 0xEF ... 0xF3:
goto yy128;
802 case 'r':
goto yy152;
805 if (
YYFILL)
goto yyFillLabel24;
817 case '#':
goto yy153;
820 if (
YYFILL)
goto yyFillLabel25;
825#line 49 "lexer_trig.re"
830#line 831 "parser_trig.c"
834#line 54 "lexer_trig.re"
839#line 840 "parser_trig.c"
848 case 0xB8 ... 0xBF:
goto yy127;
851 if (
YYFILL)
goto yyFillLabel26;
861 case 0x80 ... 0xBF:
goto yy127;
864 if (
YYFILL)
goto yyFillLabel27;
875 case 0xBF:
goto yy127;
878 if (
YYFILL)
goto yyFillLabel28;
888 case 0xA0 ... 0xBF:
goto yy132;
891 if (
YYFILL)
goto yyFillLabel29;
901 case 0x80 ... 0xBF:
goto yy132;
904 if (
YYFILL)
goto yyFillLabel30;
914 case 0x80:
goto yy154;
915 case 0x81:
goto yy155;
917 case 0xB0 ... 0xBE:
goto yy132;
918 case 0x86:
goto yy156;
919 case 0xBF:
goto yy157;
922 if (
YYFILL)
goto yyFillLabel31;
932 case 0x80:
goto yy158;
933 case 0x81 ... 0xBF:
goto yy132;
936 if (
YYFILL)
goto yyFillLabel32;
946 case 0x80 ... 0x9F:
goto yy132;
949 if (
YYFILL)
goto yyFillLabel33;
960 case 0xB8 ... 0xBE:
goto yy132;
961 case 0xB7:
goto yy159;
962 case 0xBF:
goto yy160;
965 if (
YYFILL)
goto yyFillLabel34;
975 case 0x90 ... 0xBF:
goto yy135;
978 if (
YYFILL)
goto yyFillLabel35;
988 case 0x80 ... 0xBF:
goto yy135;
991 if (
YYFILL)
goto yyFillLabel36;
1001 case 0x80 ... 0xAF:
goto yy135;
1004 if (
YYFILL)
goto yyFillLabel37;
1020 if (
YYFILL)
goto yyFillLabel38;
1025 case '\r':
goto yy3;
1026 case '}':
goto yy161;
1027 case 0xC2 ... 0xDF:
goto yy162;
1028 case 0xE0:
goto yy163;
1029 case 0xE1 ... 0xEF:
goto yy164;
1030 case 0xF0:
goto yy165;
1031 case 0xF1 ... 0xF3:
goto yy166;
1032 case 0xF4:
goto yy167;
1051 if (
YYFILL)
goto yyFillLabel39;
1055 case '"':
goto yy168;
1056 case '\\':
goto yy63;
1057 case 0xC2 ... 0xDF:
goto yy64;
1058 case 0xE0:
goto yy65;
1059 case 0xE1 ... 0xEF:
goto yy66;
1060 case 0xF0:
goto yy67;
1061 case 0xF1 ... 0xF3:
goto yy68;
1062 case 0xF4:
goto yy69;
1081 case 13:
goto yy124;
1084 case 16:
goto yy148;
1085 case 17:
goto yy228;
1086 case 18:
goto yy277;
1087 case 19:
goto yy292;
1088 case 20:
goto yy308;
1089 default:
goto yy325;
1097 case '"':
goto yy169;
1100 if (
YYFILL)
goto yyFillLabel40;
1105#line 8 "ttl_action_def.re.inc"
1112#line 1113 "parser_trig.c"
1125 case 't':
goto yy58;
1126 case 'U':
goto yy170;
1127 case 'u':
goto yy171;
1130 if (
YYFILL)
goto yyFillLabel41;
1139 case 0x80 ... 0xBF:
goto yy58;
1142 if (
YYFILL)
goto yyFillLabel42;
1151 case 0xA0 ... 0xBF:
goto yy64;
1154 if (
YYFILL)
goto yyFillLabel43;
1163 case 0x80 ... 0xBF:
goto yy64;
1166 if (
YYFILL)
goto yyFillLabel44;
1175 case 0x90 ... 0xBF:
goto yy66;
1178 if (
YYFILL)
goto yyFillLabel45;
1187 case 0x80 ... 0xBF:
goto yy66;
1190 if (
YYFILL)
goto yyFillLabel46;
1199 case 0x80 ... 0x8F:
goto yy66;
1202 if (
YYFILL)
goto yyFillLabel47;
1218 if (
YYFILL)
goto yyFillLabel48;
1223 case '\r':
goto yy3;
1224 case '}':
goto yy70;
1225 case 0xC2 ... 0xDF:
goto yy71;
1226 case 0xE0:
goto yy72;
1227 case 0xE1 ... 0xEF:
goto yy73;
1228 case 0xF0:
goto yy74;
1229 case 0xF1 ... 0xF3:
goto yy75;
1230 case 0xF4:
goto yy76;
1238 case 0x80 ... 0xBF:
goto yy8;
1241 if (
YYFILL)
goto yyFillLabel49;
1250 case 0xA0 ... 0xBF:
goto yy71;
1253 if (
YYFILL)
goto yyFillLabel50;
1262 case 0x80 ... 0xBF:
goto yy71;
1265 if (
YYFILL)
goto yyFillLabel51;
1274 case 0x90 ... 0xBF:
goto yy73;
1277 if (
YYFILL)
goto yyFillLabel52;
1286 case 0x80 ... 0xBF:
goto yy73;
1289 if (
YYFILL)
goto yyFillLabel53;
1298 case 0x80 ... 0x8F:
goto yy73;
1301 if (
YYFILL)
goto yyFillLabel54;
1318 if (
YYFILL)
goto yyFillLabel55;
1322 case '\'':
goto yy168;
1323 case '\\':
goto yy80;
1324 case 0xC2 ... 0xDF:
goto yy81;
1325 case 0xE0:
goto yy82;
1326 case 0xE1 ... 0xEF:
goto yy83;
1327 case 0xF0:
goto yy84;
1328 case 0xF1 ... 0xF3:
goto yy85;
1329 case 0xF4:
goto yy86;
1338 case '\'':
goto yy172;
1341 if (
YYFILL)
goto yyFillLabel56;
1357 case 't':
goto yy77;
1358 case 'U':
goto yy173;
1359 case 'u':
goto yy174;
1362 if (
YYFILL)
goto yyFillLabel57;
1371 case 0x80 ... 0xBF:
goto yy77;
1374 if (
YYFILL)
goto yyFillLabel58;
1383 case 0xA0 ... 0xBF:
goto yy81;
1386 if (
YYFILL)
goto yyFillLabel59;
1395 case 0x80 ... 0xBF:
goto yy81;
1398 if (
YYFILL)
goto yyFillLabel60;
1407 case 0x90 ... 0xBF:
goto yy83;
1410 if (
YYFILL)
goto yyFillLabel61;
1419 case 0x80 ... 0xBF:
goto yy83;
1422 if (
YYFILL)
goto yyFillLabel62;
1431 case 0x80 ... 0x8F:
goto yy83;
1434 if (
YYFILL)
goto yyFillLabel63;
1449 if (
YYFILL)
goto yyFillLabel64;
1454 case '\r':
goto yy11;
1455 case 0xC2 ... 0xDF:
goto yy175;
1456 case 0xE0:
goto yy176;
1457 case 0xE1 ... 0xEF:
goto yy177;
1458 case 0xF0:
goto yy178;
1459 case 0xF1 ... 0xF3:
goto yy179;
1460 case 0xF4:
goto yy180;
1468 case '0' ...
'9':
goto yy91;
1471 if (
YYFILL)
goto yyFillLabel65;
1481 case '.':
goto yy181;
1482 case '0' ...
'9':
goto yy89;
1484 case 'e':
goto yy93;
1487 if (
YYFILL)
goto yyFillLabel66;
1502 if (
YYFILL)
goto yyFillLabel67;
1507 case '\r':
goto yy15;
1508 case 0xC2 ... 0xDF:
goto yy182;
1509 case 0xE0:
goto yy183;
1510 case 0xE1 ... 0xEF:
goto yy184;
1511 case 0xF0:
goto yy185;
1512 case 0xF1 ... 0xF3:
goto yy186;
1513 case 0xF4:
goto yy187;
1522 case '0' ...
'9':
goto yy91;
1524 case 'e':
goto yy93;
1527 if (
YYFILL)
goto yyFillLabel68;
1532#line 105 "ttl_action_def.re.inc"
1539 if (strchr ((
char *)it->
tok,
'.'))
1547#line 1548 "parser_trig.c"
1554 case '-':
goto yy188;
1555 case '0' ...
'9':
goto yy189;
1558 if (
YYFILL)
goto yyFillLabel69;
1569 case 'a' ...
'f':
goto yy191;
1572 if (
YYFILL)
goto yyFillLabel70;
1583 case '%':
goto yy94;
1588 case 'a' ...
'z':
goto yy95;
1589 case '.':
goto yy192;
1590 case '\\':
goto yy98;
1591 case 0xC2:
goto yy193;
1592 case 0xC3:
goto yy99;
1594 case 0xCE ... 0xDF:
goto yy100;
1595 case 0xCD:
goto yy194;
1596 case 0xE0:
goto yy102;
1598 case 0xE4 ... 0xEC:
goto yy103;
1599 case 0xE2:
goto yy195;
1600 case 0xE3:
goto yy105;
1601 case 0xED:
goto yy106;
1602 case 0xEF:
goto yy107;
1603 case 0xF0:
goto yy108;
1604 case 0xF1 ... 0xF2:
goto yy109;
1605 case 0xF3:
goto yy110;
1608 if (
YYFILL)
goto yyFillLabel71;
1613#line 22 "ttl_action_def.re.inc"
1620#line 1621 "parser_trig.c"
1632 case '~':
goto yy95;
1635 if (
YYFILL)
goto yyFillLabel72;
1646 case 0xB8 ... 0xBF:
goto yy95;
1649 if (
YYFILL)
goto yyFillLabel73;
1658 case 0x80 ... 0xBF:
goto yy95;
1661 if (
YYFILL)
goto yyFillLabel74;
1671 case 0xBF:
goto yy95;
1674 if (
YYFILL)
goto yyFillLabel75;
1683 case 0xA0 ... 0xBF:
goto yy100;
1686 if (
YYFILL)
goto yyFillLabel76;
1695 case 0x80 ... 0xBF:
goto yy100;
1698 if (
YYFILL)
goto yyFillLabel77;
1707 case 0x80:
goto yy196;
1708 case 0x81:
goto yy197;
1710 case 0xB0 ... 0xBE:
goto yy100;
1711 case 0x86:
goto yy198;
1712 case 0xBF:
goto yy199;
1715 if (
YYFILL)
goto yyFillLabel78;
1724 case 0x80:
goto yy200;
1725 case 0x81 ... 0xBF:
goto yy100;
1728 if (
YYFILL)
goto yyFillLabel79;
1737 case 0x80 ... 0x9F:
goto yy100;
1740 if (
YYFILL)
goto yyFillLabel80;
1750 case 0xB8 ... 0xBE:
goto yy100;
1751 case 0xB7:
goto yy201;
1752 case 0xBF:
goto yy202;
1755 if (
YYFILL)
goto yyFillLabel81;
1764 case 0x90 ... 0xBF:
goto yy103;
1767 if (
YYFILL)
goto yyFillLabel82;
1776 case 0x80 ... 0xBF:
goto yy103;
1779 if (
YYFILL)
goto yyFillLabel83;
1788 case 0x80 ... 0xAF:
goto yy103;
1791 if (
YYFILL)
goto yyFillLabel84;
1806 if (
YYFILL)
goto yyFillLabel85;
1811 case '\r':
goto yy23;
1812 case 0xC2 ... 0xDF:
goto yy203;
1813 case 0xE0:
goto yy204;
1814 case 0xE1 ... 0xEF:
goto yy205;
1815 case 0xF0:
goto yy206;
1816 case 0xF1 ... 0xF3:
goto yy207;
1817 case 0xF4:
goto yy208;
1833 case '~' ... 0x7F:
goto yy112;
1834 case '>':
goto yy114;
1835 case '\\':
goto yy115;
1836 case 0xC2 ... 0xDF:
goto yy116;
1837 case 0xE0:
goto yy117;
1838 case 0xE1 ... 0xEF:
goto yy118;
1839 case 0xF0:
goto yy119;
1840 case 0xF1 ... 0xF3:
goto yy120;
1841 case 0xF4:
goto yy121;
1844 if (
YYFILL)
goto yyFillLabel86;
1850#line 15 "ttl_action_def.re.inc"
1857#line 1858 "parser_trig.c"
1863 case 'U':
goto yy209;
1864 case 'u':
goto yy210;
1867 if (
YYFILL)
goto yyFillLabel87;
1876 case 0x80 ... 0xBF:
goto yy112;
1879 if (
YYFILL)
goto yyFillLabel88;
1888 case 0xA0 ... 0xBF:
goto yy116;
1891 if (
YYFILL)
goto yyFillLabel89;
1900 case 0x80 ... 0xBF:
goto yy116;
1903 if (
YYFILL)
goto yyFillLabel90;
1912 case 0x90 ... 0xBF:
goto yy118;
1915 if (
YYFILL)
goto yyFillLabel91;
1924 case 0x80 ... 0xBF:
goto yy118;
1927 if (
YYFILL)
goto yyFillLabel92;
1936 case 0x80 ... 0x8F:
goto yy118;
1939 if (
YYFILL)
goto yyFillLabel93;
1950 case '-':
goto yy211;
1952 case 'a' ...
'z':
goto yy122;
1955 if (
YYFILL)
goto yyFillLabel94;
1960#line 78 "ttl_action_def.re.inc"
1967#line 1968 "parser_trig.c"
1976 if (
YYFILL)
goto yyFillLabel95;
1979 case 'a':
goto yy212;
1980 default:
goto yy123;
1990 if (
YYFILL)
goto yyFillLabel96;
1993 case 'r':
goto yy213;
1994 default:
goto yy123;
2006 case 'a' ...
'z':
goto yy127;
2007 case '.':
goto yy129;
2008 case ':':
goto yy21;
2009 case 0xC2:
goto yy130;
2010 case 0xC3:
goto yy131;
2012 case 0xCE ... 0xDF:
goto yy132;
2013 case 0xCD:
goto yy133;
2014 case 0xE0:
goto yy134;
2016 case 0xE4 ... 0xEC:
goto yy135;
2017 case 0xE2:
goto yy136;
2018 case 0xE3:
goto yy137;
2019 case 0xED:
goto yy138;
2020 case 0xEF:
goto yy139;
2021 case 0xF0:
goto yy140;
2022 case 0xF1 ... 0xF2:
goto yy141;
2023 case 0xF3:
goto yy142;
2026 if (
YYFILL)
goto yyFillLabel97;
2039 case 'a' ...
'z':
goto yy127;
2040 case '.':
goto yy129;
2041 case 0xC2:
goto yy130;
2042 case 0xC3:
goto yy131;
2044 case 0xCE ... 0xDF:
goto yy132;
2045 case 0xCD:
goto yy133;
2046 case 0xE0:
goto yy134;
2048 case 0xE4 ... 0xEC:
goto yy135;
2049 case 0xE2:
goto yy136;
2050 case 0xE3:
goto yy137;
2051 case 0xED:
goto yy138;
2052 case 0xEF:
goto yy139;
2053 case 0xF0:
goto yy140;
2054 case 0xF1 ... 0xF2:
goto yy141;
2055 case 0xF3:
goto yy142;
2058 if (
YYFILL)
goto yyFillLabel98;
2067 case 0xB7:
goto yy127;
2070 if (
YYFILL)
goto yyFillLabel99;
2081 case 0xB8 ... 0xBF:
goto yy127;
2084 if (
YYFILL)
goto yyFillLabel100;
2093 case 0x80 ... 0xBF:
goto yy127;
2096 if (
YYFILL)
goto yyFillLabel101;
2106 case 0xBF:
goto yy127;
2109 if (
YYFILL)
goto yyFillLabel102;
2118 case 0xA0 ... 0xBF:
goto yy132;
2121 if (
YYFILL)
goto yyFillLabel103;
2130 case 0x80 ... 0xBF:
goto yy132;
2133 if (
YYFILL)
goto yyFillLabel104;
2142 case 0x80:
goto yy214;
2143 case 0x81:
goto yy215;
2145 case 0xB0 ... 0xBE:
goto yy132;
2146 case 0x86:
goto yy156;
2147 case 0xBF:
goto yy157;
2150 if (
YYFILL)
goto yyFillLabel105;
2159 case 0x80:
goto yy158;
2160 case 0x81 ... 0xBF:
goto yy132;
2163 if (
YYFILL)
goto yyFillLabel106;
2172 case 0x80 ... 0x9F:
goto yy132;
2175 if (
YYFILL)
goto yyFillLabel107;
2185 case 0xB8 ... 0xBE:
goto yy132;
2186 case 0xB7:
goto yy159;
2187 case 0xBF:
goto yy160;
2190 if (
YYFILL)
goto yyFillLabel108;
2199 case 0x90 ... 0xBF:
goto yy135;
2202 if (
YYFILL)
goto yyFillLabel109;
2211 case 0x80 ... 0xBF:
goto yy135;
2214 if (
YYFILL)
goto yyFillLabel110;
2223 case 0x80 ... 0xAF:
goto yy135;
2226 if (
YYFILL)
goto yyFillLabel111;
2237 if (
YYFILL)
goto yyFillLabel112;
2241 case 's':
goto yy216;
2242 default:
goto yy128;
2251 if (
YYFILL)
goto yyFillLabel113;
2255 case 'a':
goto yy217;
2256 default:
goto yy128;
2265 if (
YYFILL)
goto yyFillLabel114;
2269 case 'e':
goto yy218;
2270 default:
goto yy128;
2284 if (
YYFILL)
goto yyFillLabel115;
2289 case '\r':
goto yy31;
2290 case ']':
goto yy219;
2291 case 0xC2 ... 0xDF:
goto yy220;
2292 case 0xE0:
goto yy221;
2293 case 0xE1 ... 0xEF:
goto yy222;
2294 case 0xF0:
goto yy223;
2295 case 0xF1 ... 0xF3:
goto yy224;
2296 case 0xF4:
goto yy225;
2302#line 131 "ttl_action_def.re.inc"
2304#line 2305 "parser_trig.c"
2307#line 151 "ttl_action_def.re.inc"
2309#line 2310 "parser_trig.c"
2322 case 0xEF ... 0xF3:
goto yy227;
2323 case 0xCD:
goto yy231;
2324 case 0xE2:
goto yy234;
2327 if (
YYFILL)
goto yyFillLabel116;
2338 if (
YYFILL)
goto yyFillLabel117;
2341 case 'l':
goto yy241;
2342 default:
goto yy128;
2351 if (
YYFILL)
goto yyFillLabel118;
2354 case 'u':
goto yy242;
2355 default:
goto yy128;
2368 if (
YYFILL)
goto yyFillLabel119;
2373 case '\r':
goto yy40;
2374 case 0xC2 ... 0xDF:
goto yy243;
2375 case 0xE0:
goto yy244;
2376 case 0xE1 ... 0xEF:
goto yy245;
2377 case 0xF0:
goto yy246;
2378 case 0xF1 ... 0xF3:
goto yy247;
2379 case 0xF4:
goto yy248;
2387 case 0x8C ... 0x8D:
goto yy127;
2390 if (
YYFILL)
goto yyFillLabel120;
2399 case 0xB0 ... 0xBF:
goto yy127;
2402 if (
YYFILL)
goto yyFillLabel121;
2411 case 0x80 ... 0x8F:
goto yy127;
2414 if (
YYFILL)
goto yyFillLabel122;
2423 case 0x80 ... 0xAF:
goto yy127;
2426 if (
YYFILL)
goto yyFillLabel123;
2435 case 0x81 ... 0xBF:
goto yy127;
2438 if (
YYFILL)
goto yyFillLabel124;
2448 case 0xB0 ... 0xBF:
goto yy127;
2451 if (
YYFILL)
goto yyFillLabel125;
2460 case 0x80 ... 0xBD:
goto yy127;
2463 if (
YYFILL)
goto yyFillLabel126;
2479 if (
YYFILL)
goto yyFillLabel127;
2484 case '\r':
goto yy3;
2485 case '}':
goto yy161;
2486 case 0xC2 ... 0xDF:
goto yy162;
2487 case 0xE0:
goto yy163;
2488 case 0xE1 ... 0xEF:
goto yy164;
2489 case 0xF0:
goto yy165;
2490 case 0xF1 ... 0xF3:
goto yy166;
2491 case 0xF4:
goto yy167;
2499 case 0x80 ... 0xBF:
goto yy56;
2502 if (
YYFILL)
goto yyFillLabel128;
2511 case 0xA0 ... 0xBF:
goto yy162;
2514 if (
YYFILL)
goto yyFillLabel129;
2523 case 0x80 ... 0xBF:
goto yy162;
2526 if (
YYFILL)
goto yyFillLabel130;
2535 case 0x90 ... 0xBF:
goto yy164;
2538 if (
YYFILL)
goto yyFillLabel131;
2547 case 0x80 ... 0xBF:
goto yy164;
2550 if (
YYFILL)
goto yyFillLabel132;
2559 case 0x80 ... 0x8F:
goto yy164;
2562 if (
YYFILL)
goto yyFillLabel133;
2579 if (
YYFILL)
goto yyFillLabel134;
2583 case '"':
goto yy249;
2584 case '\\':
goto yy250;
2585 case 0xC2 ... 0xDF:
goto yy251;
2586 case 0xE0:
goto yy252;
2587 case 0xE1 ... 0xEF:
goto yy253;
2588 case 0xF0:
goto yy254;
2589 case 0xF1 ... 0xF3:
goto yy255;
2590 case 0xF4:
goto yy256;
2600 case 'a' ...
'f':
goto yy257;
2603 if (
YYFILL)
goto yyFillLabel135;
2614 case 'a' ...
'f':
goto yy258;
2617 if (
YYFILL)
goto yyFillLabel136;
2631 if (
YYFILL)
goto yyFillLabel137;
2635 case '\'':
goto yy259;
2636 case '\\':
goto yy260;
2637 case 0xC2 ... 0xDF:
goto yy261;
2638 case 0xE0:
goto yy262;
2639 case 0xE1 ... 0xEF:
goto yy263;
2640 case 0xF0:
goto yy264;
2641 case 0xF1 ... 0xF3:
goto yy265;
2642 case 0xF4:
goto yy266;
2652 case 'a' ...
'f':
goto yy267;
2655 if (
YYFILL)
goto yyFillLabel138;
2666 case 'a' ...
'f':
goto yy268;
2669 if (
YYFILL)
goto yyFillLabel139;
2678 case 0x80 ... 0xBF:
goto yy87;
2681 if (
YYFILL)
goto yyFillLabel140;
2690 case 0xA0 ... 0xBF:
goto yy175;
2693 if (
YYFILL)
goto yyFillLabel141;
2702 case 0x80 ... 0xBF:
goto yy175;
2705 if (
YYFILL)
goto yyFillLabel142;
2714 case 0x90 ... 0xBF:
goto yy177;
2717 if (
YYFILL)
goto yyFillLabel143;
2726 case 0x80 ... 0xBF:
goto yy177;
2729 if (
YYFILL)
goto yyFillLabel144;
2738 case 0x80 ... 0x8F:
goto yy177;
2741 if (
YYFILL)
goto yyFillLabel145;
2750 case '0' ...
'9':
goto yy91;
2752 case 'e':
goto yy93;
2755 if (
YYFILL)
goto yyFillLabel146;
2764 case 0x80 ... 0xBF:
goto yy90;
2767 if (
YYFILL)
goto yyFillLabel147;
2776 case 0xA0 ... 0xBF:
goto yy182;
2779 if (
YYFILL)
goto yyFillLabel148;
2788 case 0x80 ... 0xBF:
goto yy182;
2791 if (
YYFILL)
goto yyFillLabel149;
2800 case 0x90 ... 0xBF:
goto yy184;
2803 if (
YYFILL)
goto yyFillLabel150;
2812 case 0x80 ... 0xBF:
goto yy184;
2815 if (
YYFILL)
goto yyFillLabel151;
2824 case 0x80 ... 0x8F:
goto yy184;
2827 if (
YYFILL)
goto yyFillLabel152;
2836 case '0' ...
'9':
goto yy189;
2839 if (
YYFILL)
goto yyFillLabel153;
2848 case '0' ...
'9':
goto yy189;
2851 if (
YYFILL)
goto yyFillLabel154;
2856#line 95 "ttl_action_def.re.inc"
2859 size_t offset = *it->
tok ==
'+' ? 1 : 0;
2866#line 2867 "parser_trig.c"
2874 case 'a' ...
'f':
goto yy95;
2877 if (
YYFILL)
goto yyFillLabel155;
2886 case '%':
goto yy94;
2891 case 'a' ...
'z':
goto yy95;
2892 case '.':
goto yy192;
2893 case '\\':
goto yy98;
2894 case 0xC2:
goto yy193;
2895 case 0xC3:
goto yy99;
2897 case 0xCE ... 0xDF:
goto yy100;
2898 case 0xCD:
goto yy194;
2899 case 0xE0:
goto yy102;
2901 case 0xE4 ... 0xEC:
goto yy103;
2902 case 0xE2:
goto yy195;
2903 case 0xE3:
goto yy105;
2904 case 0xED:
goto yy106;
2905 case 0xEF:
goto yy107;
2906 case 0xF0:
goto yy108;
2907 case 0xF1 ... 0xF2:
goto yy109;
2908 case 0xF3:
goto yy110;
2911 if (
YYFILL)
goto yyFillLabel156;
2920 case 0xB7:
goto yy95;
2923 if (
YYFILL)
goto yyFillLabel157;
2933 case 0xBF:
goto yy95;
2936 if (
YYFILL)
goto yyFillLabel158;
2945 case 0x80:
goto yy269;
2946 case 0x81:
goto yy270;
2948 case 0xB0 ... 0xBE:
goto yy100;
2949 case 0x86:
goto yy198;
2950 case 0xBF:
goto yy199;
2953 if (
YYFILL)
goto yyFillLabel159;
2962 case 0x8C ... 0x8D:
goto yy95;
2965 if (
YYFILL)
goto yyFillLabel160;
2974 case 0xB0 ... 0xBF:
goto yy95;
2977 if (
YYFILL)
goto yyFillLabel161;
2986 case 0x80 ... 0x8F:
goto yy95;
2989 if (
YYFILL)
goto yyFillLabel162;
2998 case 0x80 ... 0xAF:
goto yy95;
3001 if (
YYFILL)
goto yyFillLabel163;
3010 case 0x81 ... 0xBF:
goto yy95;
3013 if (
YYFILL)
goto yyFillLabel164;
3023 case 0xB0 ... 0xBF:
goto yy95;
3026 if (
YYFILL)
goto yyFillLabel165;
3035 case 0x80 ... 0xBD:
goto yy95;
3038 if (
YYFILL)
goto yyFillLabel166;
3047 case 0x80 ... 0xBF:
goto yy111;
3050 if (
YYFILL)
goto yyFillLabel167;
3059 case 0xA0 ... 0xBF:
goto yy203;
3062 if (
YYFILL)
goto yyFillLabel168;
3071 case 0x80 ... 0xBF:
goto yy203;
3074 if (
YYFILL)
goto yyFillLabel169;
3083 case 0x90 ... 0xBF:
goto yy205;
3086 if (
YYFILL)
goto yyFillLabel170;
3095 case 0x80 ... 0xBF:
goto yy205;
3098 if (
YYFILL)
goto yyFillLabel171;
3107 case 0x80 ... 0x8F:
goto yy205;
3110 if (
YYFILL)
goto yyFillLabel172;
3121 case 'a' ...
'f':
goto yy271;
3124 if (
YYFILL)
goto yyFillLabel173;
3135 case 'a' ...
'f':
goto yy272;
3138 if (
YYFILL)
goto yyFillLabel174;
3149 case 'a' ...
'z':
goto yy273;
3152 if (
YYFILL)
goto yyFillLabel175;
3164 if (
YYFILL)
goto yyFillLabel176;
3167 case 's':
goto yy274;
3168 default:
goto yy123;
3178 if (
YYFILL)
goto yyFillLabel177;
3181 case 'e':
goto yy275;
3182 default:
goto yy123;
3190 case 0xBF:
goto yy127;
3193 if (
YYFILL)
goto yyFillLabel178;
3203 case 0xB0 ... 0xBF:
goto yy127;
3206 if (
YYFILL)
goto yyFillLabel179;
3217 if (
YYFILL)
goto yyFillLabel180;
3221 case 'e':
goto yy276;
3222 default:
goto yy128;
3231 if (
YYFILL)
goto yyFillLabel181;
3235 case 'p':
goto yy278;
3236 default:
goto yy128;
3245 if (
YYFILL)
goto yyFillLabel182;
3249 case 'f':
goto yy279;
3250 default:
goto yy128;
3264 if (
YYFILL)
goto yyFillLabel183;
3269 case '\r':
goto yy31;
3270 case ']':
goto yy219;
3271 case 0xC2 ... 0xDF:
goto yy220;
3272 case 0xE0:
goto yy221;
3273 case 0xE1 ... 0xEF:
goto yy222;
3274 case 0xF0:
goto yy223;
3275 case 0xF1 ... 0xF3:
goto yy224;
3276 case 0xF4:
goto yy225;
3277 default:
goto yy148;
3284 case 0x80 ... 0xBF:
goto yy146;
3287 if (
YYFILL)
goto yyFillLabel184;
3296 case 0xA0 ... 0xBF:
goto yy220;
3299 if (
YYFILL)
goto yyFillLabel185;
3308 case 0x80 ... 0xBF:
goto yy220;
3311 if (
YYFILL)
goto yyFillLabel186;
3320 case 0x90 ... 0xBF:
goto yy222;
3323 if (
YYFILL)
goto yyFillLabel187;
3332 case 0x80 ... 0xBF:
goto yy222;
3335 if (
YYFILL)
goto yyFillLabel188;
3344 case 0x80 ... 0x8F:
goto yy222;
3347 if (
YYFILL)
goto yyFillLabel189;
3362 case 'a' ...
'z':
goto yy226;
3363 case '.':
goto yy280;
3364 case 0xC2:
goto yy281;
3365 case 0xC3:
goto yy229;
3367 case 0xCE ... 0xDF:
goto yy230;
3368 case 0xCD:
goto yy282;
3369 case 0xE0:
goto yy232;
3371 case 0xE4 ... 0xEC:
goto yy233;
3372 case 0xE2:
goto yy283;
3373 case 0xE3:
goto yy235;
3374 case 0xED:
goto yy236;
3375 case 0xEF:
goto yy237;
3376 case 0xF0:
goto yy238;
3377 case 0xF1 ... 0xF2:
goto yy239;
3378 case 0xF3:
goto yy240;
3381 if (
YYFILL)
goto yyFillLabel190;
3386#line 42 "ttl_action_def.re.inc"
3393#line 3394 "parser_trig.c"
3401 case 0xB8 ... 0xBF:
goto yy226;
3404 if (
YYFILL)
goto yyFillLabel191;
3413 case 0x80 ... 0xBF:
goto yy226;
3416 if (
YYFILL)
goto yyFillLabel192;
3426 case 0xBF:
goto yy226;
3429 if (
YYFILL)
goto yyFillLabel193;
3438 case 0xA0 ... 0xBF:
goto yy230;
3441 if (
YYFILL)
goto yyFillLabel194;
3450 case 0x80 ... 0xBF:
goto yy230;
3453 if (
YYFILL)
goto yyFillLabel195;
3462 case 0x80:
goto yy284;
3463 case 0x81:
goto yy285;
3465 case 0xB0 ... 0xBE:
goto yy230;
3466 case 0x86:
goto yy286;
3467 case 0xBF:
goto yy287;
3470 if (
YYFILL)
goto yyFillLabel196;
3479 case 0x80:
goto yy288;
3480 case 0x81 ... 0xBF:
goto yy230;
3483 if (
YYFILL)
goto yyFillLabel197;
3492 case 0x80 ... 0x9F:
goto yy230;
3495 if (
YYFILL)
goto yyFillLabel198;
3505 case 0xB8 ... 0xBE:
goto yy230;
3506 case 0xB7:
goto yy289;
3507 case 0xBF:
goto yy290;
3510 if (
YYFILL)
goto yyFillLabel199;
3519 case 0x90 ... 0xBF:
goto yy233;
3522 if (
YYFILL)
goto yyFillLabel200;
3531 case 0x80 ... 0xBF:
goto yy233;
3534 if (
YYFILL)
goto yyFillLabel201;
3543 case 0x80 ... 0xAF:
goto yy233;
3546 if (
YYFILL)
goto yyFillLabel202;
3557 if (
YYFILL)
goto yyFillLabel203;
3560 case 's':
goto yy242;
3561 default:
goto yy128;
3570 if (
YYFILL)
goto yyFillLabel204;
3573 case 'e':
goto yy291;
3574 default:
goto yy128;
3581 case 0x80 ... 0xBF:
goto yy153;
3584 if (
YYFILL)
goto yyFillLabel205;
3593 case 0xA0 ... 0xBF:
goto yy243;
3596 if (
YYFILL)
goto yyFillLabel206;
3605 case 0x80 ... 0xBF:
goto yy243;
3608 if (
YYFILL)
goto yyFillLabel207;
3617 case 0x90 ... 0xBF:
goto yy245;
3620 if (
YYFILL)
goto yyFillLabel208;
3629 case 0x80 ... 0xBF:
goto yy245;
3632 if (
YYFILL)
goto yyFillLabel209;
3641 case 0x80 ... 0x8F:
goto yy245;
3644 if (
YYFILL)
goto yyFillLabel210;
3658 if (
YYFILL)
goto yyFillLabel211;
3662 case '"':
goto yy293;
3663 case '\\':
goto yy250;
3664 case 0xC2 ... 0xDF:
goto yy251;
3665 case 0xE0:
goto yy252;
3666 case 0xE1 ... 0xEF:
goto yy253;
3667 case 0xF0:
goto yy254;
3668 case 0xF1 ... 0xF3:
goto yy255;
3669 case 0xF4:
goto yy256;
3684 case 't':
goto yy169;
3685 case 'U':
goto yy294;
3686 case 'u':
goto yy295;
3689 if (
YYFILL)
goto yyFillLabel212;
3698 case 0x80 ... 0xBF:
goto yy169;
3701 if (
YYFILL)
goto yyFillLabel213;
3710 case 0xA0 ... 0xBF:
goto yy251;
3713 if (
YYFILL)
goto yyFillLabel214;
3722 case 0x80 ... 0xBF:
goto yy251;
3725 if (
YYFILL)
goto yyFillLabel215;
3734 case 0x90 ... 0xBF:
goto yy253;
3737 if (
YYFILL)
goto yyFillLabel216;
3746 case 0x80 ... 0xBF:
goto yy253;
3749 if (
YYFILL)
goto yyFillLabel217;
3758 case 0x80 ... 0x8F:
goto yy253;
3761 if (
YYFILL)
goto yyFillLabel218;
3772 case 'a' ...
'f':
goto yy296;
3775 if (
YYFILL)
goto yyFillLabel219;
3786 case 'a' ...
'f':
goto yy297;
3789 if (
YYFILL)
goto yyFillLabel220;
3803 if (
YYFILL)
goto yyFillLabel221;
3807 case '\'':
goto yy298;
3808 case '\\':
goto yy260;
3809 case 0xC2 ... 0xDF:
goto yy261;
3810 case 0xE0:
goto yy262;
3811 case 0xE1 ... 0xEF:
goto yy263;
3812 case 0xF0:
goto yy264;
3813 case 0xF1 ... 0xF3:
goto yy265;
3814 case 0xF4:
goto yy266;
3829 case 't':
goto yy172;
3830 case 'U':
goto yy299;
3831 case 'u':
goto yy300;
3834 if (
YYFILL)
goto yyFillLabel222;
3843 case 0x80 ... 0xBF:
goto yy172;
3846 if (
YYFILL)
goto yyFillLabel223;
3855 case 0xA0 ... 0xBF:
goto yy261;
3858 if (
YYFILL)
goto yyFillLabel224;
3867 case 0x80 ... 0xBF:
goto yy261;
3870 if (
YYFILL)
goto yyFillLabel225;
3879 case 0x90 ... 0xBF:
goto yy263;
3882 if (
YYFILL)
goto yyFillLabel226;
3891 case 0x80 ... 0xBF:
goto yy263;
3894 if (
YYFILL)
goto yyFillLabel227;
3903 case 0x80 ... 0x8F:
goto yy263;
3906 if (
YYFILL)
goto yyFillLabel228;
3917 case 'a' ...
'f':
goto yy301;
3920 if (
YYFILL)
goto yyFillLabel229;
3931 case 'a' ...
'f':
goto yy302;
3934 if (
YYFILL)
goto yyFillLabel230;
3944 case 0xBF:
goto yy95;
3947 if (
YYFILL)
goto yyFillLabel231;
3957 case 0xB0 ... 0xBF:
goto yy95;
3960 if (
YYFILL)
goto yyFillLabel232;
3971 case 'a' ...
'f':
goto yy303;
3974 if (
YYFILL)
goto yyFillLabel233;
3985 case 'a' ...
'f':
goto yy304;
3988 if (
YYFILL)
goto yyFillLabel234;
3998 case '-':
goto yy211;
4001 case 'a' ...
'z':
goto yy273;
4004 if (
YYFILL)
goto yyFillLabel235;
4016 if (
YYFILL)
goto yyFillLabel236;
4019 case 'e':
goto yy305;
4020 default:
goto yy123;
4030 if (
YYFILL)
goto yyFillLabel237;
4033 case 'f':
goto yy306;
4034 default:
goto yy123;
4048 case 0xEF ... 0xF3:
goto yy128;
4051 if (
YYFILL)
goto yyFillLabel238;
4056#line 49 "ttl_action_def.re.inc"
4062#line 4063 "parser_trig.c"
4070 if (
YYFILL)
goto yyFillLabel239;
4074 case 'h':
goto yy307;
4075 default:
goto yy128;
4084 if (
YYFILL)
goto yyFillLabel240;
4088 case 'i':
goto yy309;
4089 default:
goto yy128;
4100 case 'a' ...
'z':
goto yy226;
4101 case '.':
goto yy280;
4102 case 0xC2:
goto yy281;
4103 case 0xC3:
goto yy229;
4105 case 0xCE ... 0xDF:
goto yy230;
4106 case 0xCD:
goto yy282;
4107 case 0xE0:
goto yy232;
4109 case 0xE4 ... 0xEC:
goto yy233;
4110 case 0xE2:
goto yy283;
4111 case 0xE3:
goto yy235;
4112 case 0xED:
goto yy236;
4113 case 0xEF:
goto yy237;
4114 case 0xF0:
goto yy238;
4115 case 0xF1 ... 0xF2:
goto yy239;
4116 case 0xF3:
goto yy240;
4119 if (
YYFILL)
goto yyFillLabel241;
4128 case 0xB7:
goto yy226;
4131 if (
YYFILL)
goto yyFillLabel242;
4141 case 0xBF:
goto yy226;
4144 if (
YYFILL)
goto yyFillLabel243;
4153 case 0x80:
goto yy310;
4154 case 0x81:
goto yy311;
4156 case 0xB0 ... 0xBE:
goto yy230;
4157 case 0x86:
goto yy286;
4158 case 0xBF:
goto yy287;
4161 if (
YYFILL)
goto yyFillLabel244;
4170 case 0x8C ... 0x8D:
goto yy226;
4173 if (
YYFILL)
goto yyFillLabel245;
4182 case 0xB0 ... 0xBF:
goto yy226;
4185 if (
YYFILL)
goto yyFillLabel246;
4194 case 0x80 ... 0x8F:
goto yy226;
4197 if (
YYFILL)
goto yyFillLabel247;
4206 case 0x80 ... 0xAF:
goto yy226;
4209 if (
YYFILL)
goto yyFillLabel248;
4218 case 0x81 ... 0xBF:
goto yy226;
4221 if (
YYFILL)
goto yyFillLabel249;
4231 case 0xB0 ... 0xBF:
goto yy226;
4234 if (
YYFILL)
goto yyFillLabel250;
4243 case 0x80 ... 0xBD:
goto yy226;
4246 if (
YYFILL)
goto yyFillLabel251;
4262 case 0xEF ... 0xF3:
goto yy128;
4265 if (
YYFILL)
goto yyFillLabel252;
4270#line 120 "ttl_action_def.re.inc"
4277#line 4278 "parser_trig.c"
4288 if (
YYFILL)
goto yyFillLabel253;
4292 case '"':
goto yy312;
4293 case '\\':
goto yy250;
4294 case 0xC2 ... 0xDF:
goto yy251;
4295 case 0xE0:
goto yy252;
4296 case 0xE1 ... 0xEF:
goto yy253;
4297 case 0xF0:
goto yy254;
4298 case 0xF1 ... 0xF3:
goto yy255;
4299 case 0xF4:
goto yy256;
4309 case 'a' ...
'f':
goto yy313;
4312 if (
YYFILL)
goto yyFillLabel254;
4323 case 'a' ...
'f':
goto yy314;
4326 if (
YYFILL)
goto yyFillLabel255;
4337 case 'a' ...
'f':
goto yy315;
4340 if (
YYFILL)
goto yyFillLabel256;
4351 case 'a' ...
'f':
goto yy316;
4354 if (
YYFILL)
goto yyFillLabel257;
4368 if (
YYFILL)
goto yyFillLabel258;
4372 case '\'':
goto yy312;
4373 case '\\':
goto yy260;
4374 case 0xC2 ... 0xDF:
goto yy261;
4375 case 0xE0:
goto yy262;
4376 case 0xE1 ... 0xEF:
goto yy263;
4377 case 0xF0:
goto yy264;
4378 case 0xF1 ... 0xF3:
goto yy265;
4379 case 0xF4:
goto yy266;
4389 case 'a' ...
'f':
goto yy317;
4392 if (
YYFILL)
goto yyFillLabel259;
4403 case 'a' ...
'f':
goto yy318;
4406 if (
YYFILL)
goto yyFillLabel260;
4417 case 'a' ...
'f':
goto yy319;
4420 if (
YYFILL)
goto yyFillLabel261;
4431 case 'a' ...
'f':
goto yy320;
4434 if (
YYFILL)
goto yyFillLabel262;
4445 case 'a' ...
'f':
goto yy321;
4448 if (
YYFILL)
goto yyFillLabel263;
4459 case 'a' ...
'f':
goto yy322;
4462 if (
YYFILL)
goto yyFillLabel264;
4472 case '-':
goto yy211;
4474 case 'a' ...
'z':
goto yy122;
4477 if (
YYFILL)
goto yyFillLabel265;
4489 if (
YYFILL)
goto yyFillLabel266;
4492 case 'i':
goto yy323;
4493 default:
goto yy123;
4507 case 0xEF ... 0xF3:
goto yy128;
4510 if (
YYFILL)
goto yyFillLabel267;
4515#line 43 "lexer_trig.re"
4521#line 4522 "parser_trig.c"
4529 if (
YYFILL)
goto yyFillLabel268;
4533 case 'x':
goto yy324;
4534 default:
goto yy128;
4542 case 0xBF:
goto yy226;
4545 if (
YYFILL)
goto yyFillLabel269;
4555 case 0xB0 ... 0xBF:
goto yy226;
4558 if (
YYFILL)
goto yyFillLabel270;
4564#line 1 "ttl_action_def.re.inc"
4571#line 4572 "parser_trig.c"
4579 case 'a' ...
'f':
goto yy326;
4582 if (
YYFILL)
goto yyFillLabel271;
4593 case 'a' ...
'f':
goto yy327;
4596 if (
YYFILL)
goto yyFillLabel272;
4607 case 'a' ...
'f':
goto yy171;
4610 if (
YYFILL)
goto yyFillLabel273;
4621 case 'a' ...
'f':
goto yy58;
4624 if (
YYFILL)
goto yyFillLabel274;
4635 case 'a' ...
'f':
goto yy328;
4638 if (
YYFILL)
goto yyFillLabel275;
4649 case 'a' ...
'f':
goto yy329;
4652 if (
YYFILL)
goto yyFillLabel276;
4663 case 'a' ...
'f':
goto yy174;
4666 if (
YYFILL)
goto yyFillLabel277;
4677 case 'a' ...
'f':
goto yy77;
4680 if (
YYFILL)
goto yyFillLabel278;
4691 case 'a' ...
'f':
goto yy210;
4694 if (
YYFILL)
goto yyFillLabel279;
4705 case 'a' ...
'f':
goto yy112;
4708 if (
YYFILL)
goto yyFillLabel280;
4720 if (
YYFILL)
goto yyFillLabel281;
4723 case 'x':
goto yy330;
4724 default:
goto yy123;
4738 case 0xEF ... 0xF3:
goto yy128;
4741 if (
YYFILL)
goto yyFillLabel282;
4746#line 29 "ttl_action_def.re.inc"
4752#line 4753 "parser_trig.c"
4760 case 'a' ...
'f':
goto yy331;
4763 if (
YYFILL)
goto yyFillLabel283;
4774 case 'a' ...
'f':
goto yy332;
4777 if (
YYFILL)
goto yyFillLabel284;
4788 case 'a' ...
'f':
goto yy333;
4791 if (
YYFILL)
goto yyFillLabel285;
4802 case 'a' ...
'f':
goto yy334;
4805 if (
YYFILL)
goto yyFillLabel286;
4815 case '-':
goto yy211;
4817 case 'a' ...
'z':
goto yy122;
4820 if (
YYFILL)
goto yyFillLabel287;
4831 case 'a' ...
'f':
goto yy295;
4834 if (
YYFILL)
goto yyFillLabel288;
4845 case 'a' ...
'f':
goto yy169;
4848 if (
YYFILL)
goto yyFillLabel289;
4859 case 'a' ...
'f':
goto yy300;
4862 if (
YYFILL)
goto yyFillLabel290;
4873 case 'a' ...
'f':
goto yy172;
4876 if (
YYFILL)
goto yyFillLabel291;
4881#line 158 "ttl_action_def.re.inc"
4886#line 4887 "parser_trig.c"
4888#line 60 "lexer_trig.re"
4895 FILE *fh,
const char *sh,
VOLK_Store *store,
void *txn,
4896 size_t *ct,
char **err_p)
4901 log_error (
"Neither file handle nor string input provided.");
4907 state->
store = store;
4921 parse_init (&parse_it, fh, sh);
4927#ifdef VOLK_CODEC_DEBUG
4932 int ttype = lex (&parse_it, &token);
4935 char err_token[16] = {
'\0'};
4936 strncpy (err_token, (
const char *)parse_it.
tok, 15);
4938 char *err_start =
"Lexical error near token `";
4942 err_info,
"[...]' at line %u, character %ld.\n",
4945 size_t err_size = strlen (err_start) + 16 + strlen(err_info);
4946 char *err_str = malloc (err_size);
4947 sprintf (err_str,
"%s%s%s", err_start, err_token, err_info);
4948 log_error (err_str);
4956 TrigParse (parser, ttype, token, state);
4958 if (ttype ==
T_EOF)
break;
4961 if (ct) *ct = state->
ct;
4969 log_info (
"Parsed %u triples.", state->
ct);
4977 free (parse_it.
buf);
Codec interface definition and basic elements common to all codecs.
#define T_EOF
Lemon parser grammar for N-Triples.
void TrigParseTrace(FILE *TraceFILE, char *zTracePrompt)
uint8_t * uint8_ndup(const uint8_t *str, size_t size)
strndup() for unsigned char.
uint8_t * unescape_unicode(const uint8_t *esc_str, size_t size)
Replace \uxxxx and \Uxxxxxxxx with Unicode bytes.
const VOLK_Graph * VOLK_graph_iter_graph(VOLK_GraphIterator *it)
Return the graph related to an iterator.
void VOLK_graph_free(VOLK_Graph *gr)
Free a graph.
VOLK_GraphIterator * VOLK_graph_add_init_txn(void *txn, VOLK_Graph *gr)
Initialize an iterator to add triples.
void VOLK_graph_iter_free(VOLK_GraphIterator *it)
Free a graph iterator.
VOLK_Graph * VOLK_graph_new(VOLK_Store *store, const char *uri_str)
Create new graph.
#define RCCK(exp)
Return exp return value if it is of VOLK_rc type and nonzero.
#define NLRCCK(exp, _rc)
Return rc return code if exp is NULL.
#define VOLK_VALUE_ERR
An invalid input value was provided.
#define VOLK_MEM_ERR
Memory allocation error.
#define VOLK_NORESULT
No result yielded.
#define VOLK_PARSE_ERR
Codec parser error.
const char * VOLK_strerror(VOLK_rc rc)
Return an error message for a return code.
size_t VOLK_store_size(const VOLK_Store *store)
Store size in triples.
VOLK_rc VOLK_store_begin(VOLK_Store *store, VOLK_StoreFlags flags, void **txn)
Begin a transaction.
VOLK_rc VOLK_store_commit(VOLK_Store *store, void *txn)
Commit a transaction.
void VOLK_term_free(VOLK_Term *term)
VOLK_Term * VOLK_default_ctx
Default context.
#define YYCTYPE
TTL is UTF-8 encoded.
VOLK_rc VOLK_trig_parse_doc(FILE *fh, const char *sh, VOLK_Store *store, void *txn, size_t *ct, char **err_p)
Parse an RDF document in TriG format.
#define YYCTYPE
TTL is UTF-8 encoded.
FILE * fh
Input file handle.
size_t buf_size
Initial allocation for buffer.
unsigned line
Current line no. (for debugging).
YYCTYPE * cur
Next input character to be read (YYCURSOR).
const char * sh
Input string. Exclusive with fh.
bool eof
if we have reached EOF.
YYCTYPE * buf
Start of buffer.
unsigned ct
Number of statements parsed.
YYCTYPE * mar
Most recent match (YYMARKER).
YYCTYPE * tok
Start of current token.
VOLK_Term * base
Base IRI used in the document.
VOLK_Store * store
Store to write to.
VOLK_Term * cur_subj
Current LMap subject.
size_t ct
Statements parsed.
VOLK_rc rc
Internal return code.