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_ttl.c"
49#line 41 "../../include/volksdata/codec/parser_common.h"
66static void parse_init (
ParseIterator *it, FILE *fh,
const char *sh)
74 if (!it->
buf) log_error (
"Error allocating lexer buffer.");
93#line 94 "parser_ttl.c"
94#line 83 "../../include/volksdata/codec/parser_common.h"
103 if (it->
eof)
return 1;
105 size_t shift = it->
tok - it->
buf;
106 size_t used = it->
lim - it->
tok;
114 cur_off = it->
cur - it->
buf,
115 tok_off = it->
tok - it->
buf,
116 lim_off = it->
lim - it->
buf,
117 mar_off = it->
mar - it->
buf;
122 log_error (
"Memory allocation error.");
127 it->
cur = it->
buf + cur_off;
128 it->
tok = it->
buf + tok_off;
129 it->
lim = it->
buf + lim_off;
130 it->
mar = it->
buf + mar_off;
132 log_debug (
"Shifting bytes: %zu", shift);
133 memmove (it->
buf, it->
tok, used);
134 log_trace (
"Limit offset before reading data: %zu", it->
lim - it->
tok);
142#line 143 "parser_ttl.c"
143#line 129 "../../include/volksdata/codec/parser_common.h"
154#line 4 "lexer_ttl.re"
167#ifdef VOLK_CODEC_DEBUG
184 #line 44 "lexer_ttl.re"
193#line 194 "parser_ttl.c"
196 unsigned int yyaccept = 0;
206 case '\'':
goto yy10;
213 case '0' ...
'9':
goto yy19;
224 case 'u' ...
'z':
goto yy27;
236 case 0xC3:
goto yy39;
238 case 0xCE ... 0xDF:
goto yy40;
239 case 0xCD:
goto yy41;
240 case 0xE0:
goto yy42;
242 case 0xE4 ... 0xEC:
goto yy43;
243 case 0xE2:
goto yy44;
244 case 0xE3:
goto yy45;
245 case 0xED:
goto yy46;
246 case 0xEF:
goto yy47;
247 case 0xF0:
goto yy48;
248 case 0xF1 ... 0xF2:
goto yy49;
249 case 0xF3:
goto yy50;
252 if (
YYFILL)
goto yyFillLabel0;
260#line 163 "ttl_action_def.re.inc"
263 "Invalid token @ %lu: %s (\\x%x)",
268#line 269 "parser_ttl.c"
285 if (
YYFILL)
goto yyFillLabel1;
290#line 65 "ttl_action_def.re.inc"
297 for (
size_t i = 0; i < strlen ((
char *)ws); i++)
298 if (ws[i] ==
'\n' || ws[i] ==
'\r') newline (it);
303#line 304 "parser_ttl.c"
320 if (
YYFILL)
goto yyFillLabel2;
325#line 60 "ttl_action_def.re.inc"
330#line 331 "parser_ttl.c"
339 if (
YYFILL)
goto yyFillLabel3;
347 case 0xC2 ... 0xF4:
goto yy54;
362 if (
YYFILL)
goto yyFillLabel4;
368 case 0xC2 ... 0xDF:
goto yy65;
369 case 0xE0:
goto yy66;
370 case 0xE1 ... 0xEF:
goto yy67;
371 case 0xF0:
goto yy68;
372 case 0xF1 ... 0xF3:
goto yy69;
373 case 0xF4:
goto yy70;
377#line 55 "ttl_action_def.re.inc"
382#line 383 "parser_ttl.c"
391 if (
YYFILL)
goto yyFillLabel5;
399 case 0xC2 ... 0xF4:
goto yy72;
400 case '\'':
goto yy73;
414 if (
YYFILL)
goto yyFillLabel6;
419#line 127 "ttl_action_def.re.inc"
421#line 422 "parser_ttl.c"
424#line 129 "ttl_action_def.re.inc"
426#line 427 "parser_ttl.c"
434 case '0' ...
'9':
goto yy83;
437 if (
YYFILL)
goto yyFillLabel7;
452 if (
YYFILL)
goto yyFillLabel8;
457#line 143 "ttl_action_def.re.inc"
459#line 460 "parser_ttl.c"
465 case '0' ...
'9':
goto yy85;
468 if (
YYFILL)
goto yyFillLabel9;
473#line 145 "ttl_action_def.re.inc"
479#line 480 "parser_ttl.c"
487 case '0' ...
'9':
goto yy19;
492 if (
YYFILL)
goto yyFillLabel10;
497#line 85 "ttl_action_def.re.inc"
500 size_t offset = *it->
tok ==
'+' ? 1 : 0;
507#line 508 "parser_ttl.c"
523 case 0xEF ... 0xF3:
goto yy90;
524 case 0xCD:
goto yy95;
525 case 0xE2:
goto yy98;
528 if (
YYFILL)
goto yyFillLabel11;
533#line 35 "ttl_action_def.re.inc"
536 log_trace (
"Prefix declaration: '%s'", *token_p);
540#line 541 "parser_ttl.c"
549 case '#':
goto yy105;
552 if (
YYFILL)
goto yyFillLabel12;
557#line 137 "ttl_action_def.re.inc"
563#line 564 "parser_ttl.c"
576 case 0xC2 ... 0xF4:
goto yy107;
579 if (
YYFILL)
goto yyFillLabel13;
591 case 'q' ...
'z':
goto yy116;
592 case 'b':
goto yy119;
593 case 'p':
goto yy120;
596 if (
YYFILL)
goto yyFillLabel14;
612 case 0xEF ... 0xF3:
goto yy122;
615 if (
YYFILL)
goto yyFillLabel15;
631 case 0xEF ... 0xF3:
goto yy122;
633 case 'a':
goto yy137;
636 if (
YYFILL)
goto yyFillLabel16;
654 case 0xEF ... 0xF3:
goto yy122;
656 case 'r':
goto yy138;
659 if (
YYFILL)
goto yyFillLabel17;
671 case '#':
goto yy139;
672 case ']':
goto yy140;
675 if (
YYFILL)
goto yyFillLabel18;
680#line 133 "ttl_action_def.re.inc"
682#line 683 "parser_ttl.c"
685#line 135 "ttl_action_def.re.inc"
687#line 688 "parser_ttl.c"
693 case '^':
goto yy141;
696 if (
YYFILL)
goto yyFillLabel19;
706 case ':':
goto yy142;
709 if (
YYFILL)
goto yyFillLabel20;
725 case 0xEF ... 0xF3:
goto yy122;
728 if (
YYFILL)
goto yyFillLabel21;
733#line 153 "ttl_action_def.re.inc"
738#line 739 "parser_ttl.c"
751 case 0xEF ... 0xF3:
goto yy122;
752 case 'a':
goto yy143;
755 if (
YYFILL)
goto yyFillLabel22;
772 case 0xEF ... 0xF3:
goto yy122;
773 case 'r':
goto yy144;
776 if (
YYFILL)
goto yyFillLabel23;
788 case 0xB8 ... 0xBF:
goto yy121;
791 if (
YYFILL)
goto yyFillLabel24;
801 case 0x80 ... 0xBF:
goto yy121;
804 if (
YYFILL)
goto yyFillLabel25;
815 case 0xBF:
goto yy121;
818 if (
YYFILL)
goto yyFillLabel26;
828 case 0xA0 ... 0xBF:
goto yy126;
831 if (
YYFILL)
goto yyFillLabel27;
841 case 0x80 ... 0xBF:
goto yy126;
844 if (
YYFILL)
goto yyFillLabel28;
854 case 0x80:
goto yy145;
855 case 0x81:
goto yy146;
857 case 0xB0 ... 0xBE:
goto yy126;
858 case 0x86:
goto yy147;
859 case 0xBF:
goto yy148;
862 if (
YYFILL)
goto yyFillLabel29;
872 case 0x80:
goto yy149;
873 case 0x81 ... 0xBF:
goto yy126;
876 if (
YYFILL)
goto yyFillLabel30;
886 case 0x80 ... 0x9F:
goto yy126;
889 if (
YYFILL)
goto yyFillLabel31;
900 case 0xB8 ... 0xBE:
goto yy126;
901 case 0xB7:
goto yy150;
902 case 0xBF:
goto yy151;
905 if (
YYFILL)
goto yyFillLabel32;
915 case 0x90 ... 0xBF:
goto yy129;
918 if (
YYFILL)
goto yyFillLabel33;
928 case 0x80 ... 0xBF:
goto yy129;
931 if (
YYFILL)
goto yyFillLabel34;
941 case 0x80 ... 0xAF:
goto yy129;
944 if (
YYFILL)
goto yyFillLabel35;
959 if (
YYFILL)
goto yyFillLabel36;
965 case 0xC2 ... 0xDF:
goto yy152;
966 case 0xE0:
goto yy153;
967 case 0xE1 ... 0xEF:
goto yy154;
968 case 0xF0:
goto yy155;
969 case 0xF1 ... 0xF3:
goto yy156;
970 case 0xF4:
goto yy157;
989 if (
YYFILL)
goto yyFillLabel37;
993 case '"':
goto yy158;
994 case '\\':
goto yy58;
995 case 0xC2 ... 0xDF:
goto yy59;
996 case 0xE0:
goto yy60;
997 case 0xE1 ... 0xEF:
goto yy61;
998 case 0xF0:
goto yy62;
999 case 0xF1 ... 0xF3:
goto yy63;
1000 case 0xF4:
goto yy64;
1018 case 12:
goto yy118;
1020 case 14:
goto yy217;
1021 case 15:
goto yy260;
1022 case 16:
goto yy274;
1023 default:
goto yy305;
1031 case '"':
goto yy159;
1034 if (
YYFILL)
goto yyFillLabel38;
1039#line 8 "ttl_action_def.re.inc"
1046#line 1047 "parser_ttl.c"
1059 case 't':
goto yy53;
1060 case 'U':
goto yy160;
1061 case 'u':
goto yy161;
1064 if (
YYFILL)
goto yyFillLabel39;
1073 case 0x80 ... 0xBF:
goto yy53;
1076 if (
YYFILL)
goto yyFillLabel40;
1085 case 0xA0 ... 0xBF:
goto yy59;
1088 if (
YYFILL)
goto yyFillLabel41;
1097 case 0x80 ... 0xBF:
goto yy59;
1100 if (
YYFILL)
goto yyFillLabel42;
1109 case 0x90 ... 0xBF:
goto yy61;
1112 if (
YYFILL)
goto yyFillLabel43;
1121 case 0x80 ... 0xBF:
goto yy61;
1124 if (
YYFILL)
goto yyFillLabel44;
1133 case 0x80 ... 0x8F:
goto yy61;
1136 if (
YYFILL)
goto yyFillLabel45;
1145 case 0x80 ... 0xBF:
goto yy8;
1148 if (
YYFILL)
goto yyFillLabel46;
1157 case 0xA0 ... 0xBF:
goto yy65;
1160 if (
YYFILL)
goto yyFillLabel47;
1169 case 0x80 ... 0xBF:
goto yy65;
1172 if (
YYFILL)
goto yyFillLabel48;
1181 case 0x90 ... 0xBF:
goto yy67;
1184 if (
YYFILL)
goto yyFillLabel49;
1193 case 0x80 ... 0xBF:
goto yy67;
1196 if (
YYFILL)
goto yyFillLabel50;
1205 case 0x80 ... 0x8F:
goto yy67;
1208 if (
YYFILL)
goto yyFillLabel51;
1225 if (
YYFILL)
goto yyFillLabel52;
1229 case '\'':
goto yy158;
1230 case '\\':
goto yy74;
1231 case 0xC2 ... 0xDF:
goto yy75;
1232 case 0xE0:
goto yy76;
1233 case 0xE1 ... 0xEF:
goto yy77;
1234 case 0xF0:
goto yy78;
1235 case 0xF1 ... 0xF3:
goto yy79;
1236 case 0xF4:
goto yy80;
1245 case '\'':
goto yy162;
1248 if (
YYFILL)
goto yyFillLabel53;
1264 case 't':
goto yy71;
1265 case 'U':
goto yy163;
1266 case 'u':
goto yy164;
1269 if (
YYFILL)
goto yyFillLabel54;
1278 case 0x80 ... 0xBF:
goto yy71;
1281 if (
YYFILL)
goto yyFillLabel55;
1290 case 0xA0 ... 0xBF:
goto yy75;
1293 if (
YYFILL)
goto yyFillLabel56;
1302 case 0x80 ... 0xBF:
goto yy75;
1305 if (
YYFILL)
goto yyFillLabel57;
1314 case 0x90 ... 0xBF:
goto yy77;
1317 if (
YYFILL)
goto yyFillLabel58;
1326 case 0x80 ... 0xBF:
goto yy77;
1329 if (
YYFILL)
goto yyFillLabel59;
1338 case 0x80 ... 0x8F:
goto yy77;
1341 if (
YYFILL)
goto yyFillLabel60;
1356 if (
YYFILL)
goto yyFillLabel61;
1361 case '\r':
goto yy11;
1362 case 0xC2 ... 0xDF:
goto yy165;
1363 case 0xE0:
goto yy166;
1364 case 0xE1 ... 0xEF:
goto yy167;
1365 case 0xF0:
goto yy168;
1366 case 0xF1 ... 0xF3:
goto yy169;
1367 case 0xF4:
goto yy170;
1375 case '0' ...
'9':
goto yy85;
1378 if (
YYFILL)
goto yyFillLabel62;
1388 case '.':
goto yy171;
1389 case '0' ...
'9':
goto yy83;
1391 case 'e':
goto yy87;
1394 if (
YYFILL)
goto yyFillLabel63;
1409 if (
YYFILL)
goto yyFillLabel64;
1414 case '\r':
goto yy15;
1415 case 0xC2 ... 0xDF:
goto yy172;
1416 case 0xE0:
goto yy173;
1417 case 0xE1 ... 0xEF:
goto yy174;
1418 case 0xF0:
goto yy175;
1419 case 0xF1 ... 0xF3:
goto yy176;
1420 case 0xF4:
goto yy177;
1429 case '0' ...
'9':
goto yy85;
1431 case 'e':
goto yy87;
1434 if (
YYFILL)
goto yyFillLabel65;
1439#line 105 "ttl_action_def.re.inc"
1446 if (strchr ((
char *)it->
tok,
'.'))
1454#line 1455 "parser_ttl.c"
1461 case '-':
goto yy178;
1462 case '0' ...
'9':
goto yy179;
1465 if (
YYFILL)
goto yyFillLabel66;
1476 case 'a' ...
'f':
goto yy181;
1479 if (
YYFILL)
goto yyFillLabel67;
1490 case '%':
goto yy88;
1495 case 'a' ...
'z':
goto yy89;
1496 case '.':
goto yy182;
1497 case '\\':
goto yy92;
1498 case 0xC2:
goto yy183;
1499 case 0xC3:
goto yy93;
1501 case 0xCE ... 0xDF:
goto yy94;
1502 case 0xCD:
goto yy184;
1503 case 0xE0:
goto yy96;
1505 case 0xE4 ... 0xEC:
goto yy97;
1506 case 0xE2:
goto yy185;
1507 case 0xE3:
goto yy99;
1508 case 0xED:
goto yy100;
1509 case 0xEF:
goto yy101;
1510 case 0xF0:
goto yy102;
1511 case 0xF1 ... 0xF2:
goto yy103;
1512 case 0xF3:
goto yy104;
1515 if (
YYFILL)
goto yyFillLabel68;
1520#line 22 "ttl_action_def.re.inc"
1527#line 1528 "parser_ttl.c"
1539 case '~':
goto yy89;
1542 if (
YYFILL)
goto yyFillLabel69;
1553 case 0xB8 ... 0xBF:
goto yy89;
1556 if (
YYFILL)
goto yyFillLabel70;
1565 case 0x80 ... 0xBF:
goto yy89;
1568 if (
YYFILL)
goto yyFillLabel71;
1578 case 0xBF:
goto yy89;
1581 if (
YYFILL)
goto yyFillLabel72;
1590 case 0xA0 ... 0xBF:
goto yy94;
1593 if (
YYFILL)
goto yyFillLabel73;
1602 case 0x80 ... 0xBF:
goto yy94;
1605 if (
YYFILL)
goto yyFillLabel74;
1614 case 0x80:
goto yy186;
1615 case 0x81:
goto yy187;
1617 case 0xB0 ... 0xBE:
goto yy94;
1618 case 0x86:
goto yy188;
1619 case 0xBF:
goto yy189;
1622 if (
YYFILL)
goto yyFillLabel75;
1631 case 0x80:
goto yy190;
1632 case 0x81 ... 0xBF:
goto yy94;
1635 if (
YYFILL)
goto yyFillLabel76;
1644 case 0x80 ... 0x9F:
goto yy94;
1647 if (
YYFILL)
goto yyFillLabel77;
1657 case 0xB8 ... 0xBE:
goto yy94;
1658 case 0xB7:
goto yy191;
1659 case 0xBF:
goto yy192;
1662 if (
YYFILL)
goto yyFillLabel78;
1671 case 0x90 ... 0xBF:
goto yy97;
1674 if (
YYFILL)
goto yyFillLabel79;
1683 case 0x80 ... 0xBF:
goto yy97;
1686 if (
YYFILL)
goto yyFillLabel80;
1695 case 0x80 ... 0xAF:
goto yy97;
1698 if (
YYFILL)
goto yyFillLabel81;
1713 if (
YYFILL)
goto yyFillLabel82;
1718 case '\r':
goto yy23;
1719 case 0xC2 ... 0xDF:
goto yy193;
1720 case 0xE0:
goto yy194;
1721 case 0xE1 ... 0xEF:
goto yy195;
1722 case 0xF0:
goto yy196;
1723 case 0xF1 ... 0xF3:
goto yy197;
1724 case 0xF4:
goto yy198;
1740 case '~' ... 0x7F:
goto yy106;
1741 case '>':
goto yy108;
1742 case '\\':
goto yy109;
1743 case 0xC2 ... 0xDF:
goto yy110;
1744 case 0xE0:
goto yy111;
1745 case 0xE1 ... 0xEF:
goto yy112;
1746 case 0xF0:
goto yy113;
1747 case 0xF1 ... 0xF3:
goto yy114;
1748 case 0xF4:
goto yy115;
1751 if (
YYFILL)
goto yyFillLabel83;
1757#line 15 "ttl_action_def.re.inc"
1764#line 1765 "parser_ttl.c"
1770 case 'U':
goto yy199;
1771 case 'u':
goto yy200;
1774 if (
YYFILL)
goto yyFillLabel84;
1783 case 0x80 ... 0xBF:
goto yy106;
1786 if (
YYFILL)
goto yyFillLabel85;
1795 case 0xA0 ... 0xBF:
goto yy110;
1798 if (
YYFILL)
goto yyFillLabel86;
1807 case 0x80 ... 0xBF:
goto yy110;
1810 if (
YYFILL)
goto yyFillLabel87;
1819 case 0x90 ... 0xBF:
goto yy112;
1822 if (
YYFILL)
goto yyFillLabel88;
1831 case 0x80 ... 0xBF:
goto yy112;
1834 if (
YYFILL)
goto yyFillLabel89;
1843 case 0x80 ... 0x8F:
goto yy112;
1846 if (
YYFILL)
goto yyFillLabel90;
1857 case '-':
goto yy201;
1859 case 'a' ...
'z':
goto yy116;
1862 if (
YYFILL)
goto yyFillLabel91;
1867#line 78 "ttl_action_def.re.inc"
1874#line 1875 "parser_ttl.c"
1883 if (
YYFILL)
goto yyFillLabel92;
1886 case 'a':
goto yy202;
1887 default:
goto yy117;
1897 if (
YYFILL)
goto yyFillLabel93;
1900 case 'r':
goto yy203;
1901 default:
goto yy117;
1913 case 'a' ...
'z':
goto yy121;
1914 case '.':
goto yy123;
1915 case ':':
goto yy21;
1916 case 0xC2:
goto yy124;
1917 case 0xC3:
goto yy125;
1919 case 0xCE ... 0xDF:
goto yy126;
1920 case 0xCD:
goto yy127;
1921 case 0xE0:
goto yy128;
1923 case 0xE4 ... 0xEC:
goto yy129;
1924 case 0xE2:
goto yy130;
1925 case 0xE3:
goto yy131;
1926 case 0xED:
goto yy132;
1927 case 0xEF:
goto yy133;
1928 case 0xF0:
goto yy134;
1929 case 0xF1 ... 0xF2:
goto yy135;
1930 case 0xF3:
goto yy136;
1933 if (
YYFILL)
goto yyFillLabel94;
1946 case 'a' ...
'z':
goto yy121;
1947 case '.':
goto yy123;
1948 case 0xC2:
goto yy124;
1949 case 0xC3:
goto yy125;
1951 case 0xCE ... 0xDF:
goto yy126;
1952 case 0xCD:
goto yy127;
1953 case 0xE0:
goto yy128;
1955 case 0xE4 ... 0xEC:
goto yy129;
1956 case 0xE2:
goto yy130;
1957 case 0xE3:
goto yy131;
1958 case 0xED:
goto yy132;
1959 case 0xEF:
goto yy133;
1960 case 0xF0:
goto yy134;
1961 case 0xF1 ... 0xF2:
goto yy135;
1962 case 0xF3:
goto yy136;
1965 if (
YYFILL)
goto yyFillLabel95;
1974 case 0xB7:
goto yy121;
1977 if (
YYFILL)
goto yyFillLabel96;
1988 case 0xB8 ... 0xBF:
goto yy121;
1991 if (
YYFILL)
goto yyFillLabel97;
2000 case 0x80 ... 0xBF:
goto yy121;
2003 if (
YYFILL)
goto yyFillLabel98;
2013 case 0xBF:
goto yy121;
2016 if (
YYFILL)
goto yyFillLabel99;
2025 case 0xA0 ... 0xBF:
goto yy126;
2028 if (
YYFILL)
goto yyFillLabel100;
2037 case 0x80 ... 0xBF:
goto yy126;
2040 if (
YYFILL)
goto yyFillLabel101;
2049 case 0x80:
goto yy204;
2050 case 0x81:
goto yy205;
2052 case 0xB0 ... 0xBE:
goto yy126;
2053 case 0x86:
goto yy147;
2054 case 0xBF:
goto yy148;
2057 if (
YYFILL)
goto yyFillLabel102;
2066 case 0x80:
goto yy149;
2067 case 0x81 ... 0xBF:
goto yy126;
2070 if (
YYFILL)
goto yyFillLabel103;
2079 case 0x80 ... 0x9F:
goto yy126;
2082 if (
YYFILL)
goto yyFillLabel104;
2092 case 0xB8 ... 0xBE:
goto yy126;
2093 case 0xB7:
goto yy150;
2094 case 0xBF:
goto yy151;
2097 if (
YYFILL)
goto yyFillLabel105;
2106 case 0x90 ... 0xBF:
goto yy129;
2109 if (
YYFILL)
goto yyFillLabel106;
2118 case 0x80 ... 0xBF:
goto yy129;
2121 if (
YYFILL)
goto yyFillLabel107;
2130 case 0x80 ... 0xAF:
goto yy129;
2133 if (
YYFILL)
goto yyFillLabel108;
2144 if (
YYFILL)
goto yyFillLabel109;
2148 case 's':
goto yy206;
2149 default:
goto yy122;
2158 if (
YYFILL)
goto yyFillLabel110;
2162 case 'e':
goto yy207;
2163 default:
goto yy122;
2176 if (
YYFILL)
goto yyFillLabel111;
2181 case '\r':
goto yy208;
2182 case 0xC2 ... 0xDF:
goto yy209;
2183 case 0xE0:
goto yy210;
2184 case 0xE1 ... 0xEF:
goto yy211;
2185 case 0xF0:
goto yy212;
2186 case 0xF1 ... 0xF3:
goto yy213;
2187 case 0xF4:
goto yy214;
2192#line 131 "ttl_action_def.re.inc"
2194#line 2195 "parser_ttl.c"
2197#line 151 "ttl_action_def.re.inc"
2199#line 2200 "parser_ttl.c"
2212 case 0xEF ... 0xF3:
goto yy216;
2213 case 0xCD:
goto yy220;
2214 case 0xE2:
goto yy223;
2217 if (
YYFILL)
goto yyFillLabel112;
2228 if (
YYFILL)
goto yyFillLabel113;
2231 case 'l':
goto yy230;
2232 default:
goto yy122;
2241 if (
YYFILL)
goto yyFillLabel114;
2244 case 'u':
goto yy231;
2245 default:
goto yy122;
2252 case 0x8C ... 0x8D:
goto yy121;
2255 if (
YYFILL)
goto yyFillLabel115;
2264 case 0xB0 ... 0xBF:
goto yy121;
2267 if (
YYFILL)
goto yyFillLabel116;
2276 case 0x80 ... 0x8F:
goto yy121;
2279 if (
YYFILL)
goto yyFillLabel117;
2288 case 0x80 ... 0xAF:
goto yy121;
2291 if (
YYFILL)
goto yyFillLabel118;
2300 case 0x81 ... 0xBF:
goto yy121;
2303 if (
YYFILL)
goto yyFillLabel119;
2313 case 0xB0 ... 0xBF:
goto yy121;
2316 if (
YYFILL)
goto yyFillLabel120;
2325 case 0x80 ... 0xBD:
goto yy121;
2328 if (
YYFILL)
goto yyFillLabel121;
2337 case 0x80 ... 0xBF:
goto yy51;
2340 if (
YYFILL)
goto yyFillLabel122;
2349 case 0xA0 ... 0xBF:
goto yy152;
2352 if (
YYFILL)
goto yyFillLabel123;
2361 case 0x80 ... 0xBF:
goto yy152;
2364 if (
YYFILL)
goto yyFillLabel124;
2373 case 0x90 ... 0xBF:
goto yy154;
2376 if (
YYFILL)
goto yyFillLabel125;
2385 case 0x80 ... 0xBF:
goto yy154;
2388 if (
YYFILL)
goto yyFillLabel126;
2397 case 0x80 ... 0x8F:
goto yy154;
2400 if (
YYFILL)
goto yyFillLabel127;
2417 if (
YYFILL)
goto yyFillLabel128;
2421 case '"':
goto yy232;
2422 case '\\':
goto yy233;
2423 case 0xC2 ... 0xDF:
goto yy234;
2424 case 0xE0:
goto yy235;
2425 case 0xE1 ... 0xEF:
goto yy236;
2426 case 0xF0:
goto yy237;
2427 case 0xF1 ... 0xF3:
goto yy238;
2428 case 0xF4:
goto yy239;
2438 case 'a' ...
'f':
goto yy240;
2441 if (
YYFILL)
goto yyFillLabel129;
2452 case 'a' ...
'f':
goto yy241;
2455 if (
YYFILL)
goto yyFillLabel130;
2469 if (
YYFILL)
goto yyFillLabel131;
2473 case '\'':
goto yy242;
2474 case '\\':
goto yy243;
2475 case 0xC2 ... 0xDF:
goto yy244;
2476 case 0xE0:
goto yy245;
2477 case 0xE1 ... 0xEF:
goto yy246;
2478 case 0xF0:
goto yy247;
2479 case 0xF1 ... 0xF3:
goto yy248;
2480 case 0xF4:
goto yy249;
2490 case 'a' ...
'f':
goto yy250;
2493 if (
YYFILL)
goto yyFillLabel132;
2504 case 'a' ...
'f':
goto yy251;
2507 if (
YYFILL)
goto yyFillLabel133;
2516 case 0x80 ... 0xBF:
goto yy81;
2519 if (
YYFILL)
goto yyFillLabel134;
2528 case 0xA0 ... 0xBF:
goto yy165;
2531 if (
YYFILL)
goto yyFillLabel135;
2540 case 0x80 ... 0xBF:
goto yy165;
2543 if (
YYFILL)
goto yyFillLabel136;
2552 case 0x90 ... 0xBF:
goto yy167;
2555 if (
YYFILL)
goto yyFillLabel137;
2564 case 0x80 ... 0xBF:
goto yy167;
2567 if (
YYFILL)
goto yyFillLabel138;
2576 case 0x80 ... 0x8F:
goto yy167;
2579 if (
YYFILL)
goto yyFillLabel139;
2588 case '0' ...
'9':
goto yy85;
2590 case 'e':
goto yy87;
2593 if (
YYFILL)
goto yyFillLabel140;
2602 case 0x80 ... 0xBF:
goto yy84;
2605 if (
YYFILL)
goto yyFillLabel141;
2614 case 0xA0 ... 0xBF:
goto yy172;
2617 if (
YYFILL)
goto yyFillLabel142;
2626 case 0x80 ... 0xBF:
goto yy172;
2629 if (
YYFILL)
goto yyFillLabel143;
2638 case 0x90 ... 0xBF:
goto yy174;
2641 if (
YYFILL)
goto yyFillLabel144;
2650 case 0x80 ... 0xBF:
goto yy174;
2653 if (
YYFILL)
goto yyFillLabel145;
2662 case 0x80 ... 0x8F:
goto yy174;
2665 if (
YYFILL)
goto yyFillLabel146;
2674 case '0' ...
'9':
goto yy179;
2677 if (
YYFILL)
goto yyFillLabel147;
2686 case '0' ...
'9':
goto yy179;
2689 if (
YYFILL)
goto yyFillLabel148;
2694#line 95 "ttl_action_def.re.inc"
2697 size_t offset = *it->
tok ==
'+' ? 1 : 0;
2704#line 2705 "parser_ttl.c"
2712 case 'a' ...
'f':
goto yy89;
2715 if (
YYFILL)
goto yyFillLabel149;
2724 case '%':
goto yy88;
2729 case 'a' ...
'z':
goto yy89;
2730 case '.':
goto yy182;
2731 case '\\':
goto yy92;
2732 case 0xC2:
goto yy183;
2733 case 0xC3:
goto yy93;
2735 case 0xCE ... 0xDF:
goto yy94;
2736 case 0xCD:
goto yy184;
2737 case 0xE0:
goto yy96;
2739 case 0xE4 ... 0xEC:
goto yy97;
2740 case 0xE2:
goto yy185;
2741 case 0xE3:
goto yy99;
2742 case 0xED:
goto yy100;
2743 case 0xEF:
goto yy101;
2744 case 0xF0:
goto yy102;
2745 case 0xF1 ... 0xF2:
goto yy103;
2746 case 0xF3:
goto yy104;
2749 if (
YYFILL)
goto yyFillLabel150;
2758 case 0xB7:
goto yy89;
2761 if (
YYFILL)
goto yyFillLabel151;
2771 case 0xBF:
goto yy89;
2774 if (
YYFILL)
goto yyFillLabel152;
2783 case 0x80:
goto yy252;
2784 case 0x81:
goto yy253;
2786 case 0xB0 ... 0xBE:
goto yy94;
2787 case 0x86:
goto yy188;
2788 case 0xBF:
goto yy189;
2791 if (
YYFILL)
goto yyFillLabel153;
2800 case 0x8C ... 0x8D:
goto yy89;
2803 if (
YYFILL)
goto yyFillLabel154;
2812 case 0xB0 ... 0xBF:
goto yy89;
2815 if (
YYFILL)
goto yyFillLabel155;
2824 case 0x80 ... 0x8F:
goto yy89;
2827 if (
YYFILL)
goto yyFillLabel156;
2836 case 0x80 ... 0xAF:
goto yy89;
2839 if (
YYFILL)
goto yyFillLabel157;
2848 case 0x81 ... 0xBF:
goto yy89;
2851 if (
YYFILL)
goto yyFillLabel158;
2861 case 0xB0 ... 0xBF:
goto yy89;
2864 if (
YYFILL)
goto yyFillLabel159;
2873 case 0x80 ... 0xBD:
goto yy89;
2876 if (
YYFILL)
goto yyFillLabel160;
2885 case 0x80 ... 0xBF:
goto yy105;
2888 if (
YYFILL)
goto yyFillLabel161;
2897 case 0xA0 ... 0xBF:
goto yy193;
2900 if (
YYFILL)
goto yyFillLabel162;
2909 case 0x80 ... 0xBF:
goto yy193;
2912 if (
YYFILL)
goto yyFillLabel163;
2921 case 0x90 ... 0xBF:
goto yy195;
2924 if (
YYFILL)
goto yyFillLabel164;
2933 case 0x80 ... 0xBF:
goto yy195;
2936 if (
YYFILL)
goto yyFillLabel165;
2945 case 0x80 ... 0x8F:
goto yy195;
2948 if (
YYFILL)
goto yyFillLabel166;
2959 case 'a' ...
'f':
goto yy254;
2962 if (
YYFILL)
goto yyFillLabel167;
2973 case 'a' ...
'f':
goto yy255;
2976 if (
YYFILL)
goto yyFillLabel168;
2987 case 'a' ...
'z':
goto yy256;
2990 if (
YYFILL)
goto yyFillLabel169;
3002 if (
YYFILL)
goto yyFillLabel170;
3005 case 's':
goto yy257;
3006 default:
goto yy117;
3016 if (
YYFILL)
goto yyFillLabel171;
3019 case 'e':
goto yy258;
3020 default:
goto yy117;
3028 case 0xBF:
goto yy121;
3031 if (
YYFILL)
goto yyFillLabel172;
3041 case 0xB0 ... 0xBF:
goto yy121;
3044 if (
YYFILL)
goto yyFillLabel173;
3055 if (
YYFILL)
goto yyFillLabel174;
3059 case 'e':
goto yy259;
3060 default:
goto yy122;
3069 if (
YYFILL)
goto yyFillLabel175;
3073 case 'f':
goto yy261;
3074 default:
goto yy122;
3083 case ' ':
goto yy208;
3084 case '#':
goto yy139;
3087 if (
YYFILL)
goto yyFillLabel176;
3096 case 0x80 ... 0xBF:
goto yy139;
3099 if (
YYFILL)
goto yyFillLabel177;
3108 case 0xA0 ... 0xBF:
goto yy209;
3111 if (
YYFILL)
goto yyFillLabel178;
3120 case 0x80 ... 0xBF:
goto yy209;
3123 if (
YYFILL)
goto yyFillLabel179;
3132 case 0x90 ... 0xBF:
goto yy211;
3135 if (
YYFILL)
goto yyFillLabel180;
3144 case 0x80 ... 0xBF:
goto yy211;
3147 if (
YYFILL)
goto yyFillLabel181;
3156 case 0x80 ... 0x8F:
goto yy211;
3159 if (
YYFILL)
goto yyFillLabel182;
3174 case 'a' ...
'z':
goto yy215;
3175 case '.':
goto yy262;
3176 case 0xC2:
goto yy263;
3177 case 0xC3:
goto yy218;
3179 case 0xCE ... 0xDF:
goto yy219;
3180 case 0xCD:
goto yy264;
3181 case 0xE0:
goto yy221;
3183 case 0xE4 ... 0xEC:
goto yy222;
3184 case 0xE2:
goto yy265;
3185 case 0xE3:
goto yy224;
3186 case 0xED:
goto yy225;
3187 case 0xEF:
goto yy226;
3188 case 0xF0:
goto yy227;
3189 case 0xF1 ... 0xF2:
goto yy228;
3190 case 0xF3:
goto yy229;
3193 if (
YYFILL)
goto yyFillLabel183;
3198#line 42 "ttl_action_def.re.inc"
3205#line 3206 "parser_ttl.c"
3213 case 0xB8 ... 0xBF:
goto yy215;
3216 if (
YYFILL)
goto yyFillLabel184;
3225 case 0x80 ... 0xBF:
goto yy215;
3228 if (
YYFILL)
goto yyFillLabel185;
3238 case 0xBF:
goto yy215;
3241 if (
YYFILL)
goto yyFillLabel186;
3250 case 0xA0 ... 0xBF:
goto yy219;
3253 if (
YYFILL)
goto yyFillLabel187;
3262 case 0x80 ... 0xBF:
goto yy219;
3265 if (
YYFILL)
goto yyFillLabel188;
3274 case 0x80:
goto yy266;
3275 case 0x81:
goto yy267;
3277 case 0xB0 ... 0xBE:
goto yy219;
3278 case 0x86:
goto yy268;
3279 case 0xBF:
goto yy269;
3282 if (
YYFILL)
goto yyFillLabel189;
3291 case 0x80:
goto yy270;
3292 case 0x81 ... 0xBF:
goto yy219;
3295 if (
YYFILL)
goto yyFillLabel190;
3304 case 0x80 ... 0x9F:
goto yy219;
3307 if (
YYFILL)
goto yyFillLabel191;
3317 case 0xB8 ... 0xBE:
goto yy219;
3318 case 0xB7:
goto yy271;
3319 case 0xBF:
goto yy272;
3322 if (
YYFILL)
goto yyFillLabel192;
3331 case 0x90 ... 0xBF:
goto yy222;
3334 if (
YYFILL)
goto yyFillLabel193;
3343 case 0x80 ... 0xBF:
goto yy222;
3346 if (
YYFILL)
goto yyFillLabel194;
3355 case 0x80 ... 0xAF:
goto yy222;
3358 if (
YYFILL)
goto yyFillLabel195;
3369 if (
YYFILL)
goto yyFillLabel196;
3372 case 's':
goto yy231;
3373 default:
goto yy122;
3382 if (
YYFILL)
goto yyFillLabel197;
3385 case 'e':
goto yy273;
3386 default:
goto yy122;
3398 if (
YYFILL)
goto yyFillLabel198;
3402 case '"':
goto yy275;
3403 case '\\':
goto yy233;
3404 case 0xC2 ... 0xDF:
goto yy234;
3405 case 0xE0:
goto yy235;
3406 case 0xE1 ... 0xEF:
goto yy236;
3407 case 0xF0:
goto yy237;
3408 case 0xF1 ... 0xF3:
goto yy238;
3409 case 0xF4:
goto yy239;
3424 case 't':
goto yy159;
3425 case 'U':
goto yy276;
3426 case 'u':
goto yy277;
3429 if (
YYFILL)
goto yyFillLabel199;
3438 case 0x80 ... 0xBF:
goto yy159;
3441 if (
YYFILL)
goto yyFillLabel200;
3450 case 0xA0 ... 0xBF:
goto yy234;
3453 if (
YYFILL)
goto yyFillLabel201;
3462 case 0x80 ... 0xBF:
goto yy234;
3465 if (
YYFILL)
goto yyFillLabel202;
3474 case 0x90 ... 0xBF:
goto yy236;
3477 if (
YYFILL)
goto yyFillLabel203;
3486 case 0x80 ... 0xBF:
goto yy236;
3489 if (
YYFILL)
goto yyFillLabel204;
3498 case 0x80 ... 0x8F:
goto yy236;
3501 if (
YYFILL)
goto yyFillLabel205;
3512 case 'a' ...
'f':
goto yy278;
3515 if (
YYFILL)
goto yyFillLabel206;
3526 case 'a' ...
'f':
goto yy279;
3529 if (
YYFILL)
goto yyFillLabel207;
3543 if (
YYFILL)
goto yyFillLabel208;
3547 case '\'':
goto yy280;
3548 case '\\':
goto yy243;
3549 case 0xC2 ... 0xDF:
goto yy244;
3550 case 0xE0:
goto yy245;
3551 case 0xE1 ... 0xEF:
goto yy246;
3552 case 0xF0:
goto yy247;
3553 case 0xF1 ... 0xF3:
goto yy248;
3554 case 0xF4:
goto yy249;
3569 case 't':
goto yy162;
3570 case 'U':
goto yy281;
3571 case 'u':
goto yy282;
3574 if (
YYFILL)
goto yyFillLabel209;
3583 case 0x80 ... 0xBF:
goto yy162;
3586 if (
YYFILL)
goto yyFillLabel210;
3595 case 0xA0 ... 0xBF:
goto yy244;
3598 if (
YYFILL)
goto yyFillLabel211;
3607 case 0x80 ... 0xBF:
goto yy244;
3610 if (
YYFILL)
goto yyFillLabel212;
3619 case 0x90 ... 0xBF:
goto yy246;
3622 if (
YYFILL)
goto yyFillLabel213;
3631 case 0x80 ... 0xBF:
goto yy246;
3634 if (
YYFILL)
goto yyFillLabel214;
3643 case 0x80 ... 0x8F:
goto yy246;
3646 if (
YYFILL)
goto yyFillLabel215;
3657 case 'a' ...
'f':
goto yy283;
3660 if (
YYFILL)
goto yyFillLabel216;
3671 case 'a' ...
'f':
goto yy284;
3674 if (
YYFILL)
goto yyFillLabel217;
3684 case 0xBF:
goto yy89;
3687 if (
YYFILL)
goto yyFillLabel218;
3697 case 0xB0 ... 0xBF:
goto yy89;
3700 if (
YYFILL)
goto yyFillLabel219;
3711 case 'a' ...
'f':
goto yy285;
3714 if (
YYFILL)
goto yyFillLabel220;
3725 case 'a' ...
'f':
goto yy286;
3728 if (
YYFILL)
goto yyFillLabel221;
3738 case '-':
goto yy201;
3741 case 'a' ...
'z':
goto yy256;
3744 if (
YYFILL)
goto yyFillLabel222;
3756 if (
YYFILL)
goto yyFillLabel223;
3759 case 'e':
goto yy287;
3760 default:
goto yy117;
3770 if (
YYFILL)
goto yyFillLabel224;
3773 case 'f':
goto yy288;
3774 default:
goto yy117;
3788 case 0xEF ... 0xF3:
goto yy122;
3791 if (
YYFILL)
goto yyFillLabel225;
3796#line 49 "ttl_action_def.re.inc"
3802#line 3803 "parser_ttl.c"
3810 if (
YYFILL)
goto yyFillLabel226;
3814 case 'i':
goto yy289;
3815 default:
goto yy122;
3826 case 'a' ...
'z':
goto yy215;
3827 case '.':
goto yy262;
3828 case 0xC2:
goto yy263;
3829 case 0xC3:
goto yy218;
3831 case 0xCE ... 0xDF:
goto yy219;
3832 case 0xCD:
goto yy264;
3833 case 0xE0:
goto yy221;
3835 case 0xE4 ... 0xEC:
goto yy222;
3836 case 0xE2:
goto yy265;
3837 case 0xE3:
goto yy224;
3838 case 0xED:
goto yy225;
3839 case 0xEF:
goto yy226;
3840 case 0xF0:
goto yy227;
3841 case 0xF1 ... 0xF2:
goto yy228;
3842 case 0xF3:
goto yy229;
3845 if (
YYFILL)
goto yyFillLabel227;
3854 case 0xB7:
goto yy215;
3857 if (
YYFILL)
goto yyFillLabel228;
3867 case 0xBF:
goto yy215;
3870 if (
YYFILL)
goto yyFillLabel229;
3879 case 0x80:
goto yy290;
3880 case 0x81:
goto yy291;
3882 case 0xB0 ... 0xBE:
goto yy219;
3883 case 0x86:
goto yy268;
3884 case 0xBF:
goto yy269;
3887 if (
YYFILL)
goto yyFillLabel230;
3896 case 0x8C ... 0x8D:
goto yy215;
3899 if (
YYFILL)
goto yyFillLabel231;
3908 case 0xB0 ... 0xBF:
goto yy215;
3911 if (
YYFILL)
goto yyFillLabel232;
3920 case 0x80 ... 0x8F:
goto yy215;
3923 if (
YYFILL)
goto yyFillLabel233;
3932 case 0x80 ... 0xAF:
goto yy215;
3935 if (
YYFILL)
goto yyFillLabel234;
3944 case 0x81 ... 0xBF:
goto yy215;
3947 if (
YYFILL)
goto yyFillLabel235;
3957 case 0xB0 ... 0xBF:
goto yy215;
3960 if (
YYFILL)
goto yyFillLabel236;
3969 case 0x80 ... 0xBD:
goto yy215;
3972 if (
YYFILL)
goto yyFillLabel237;
3988 case 0xEF ... 0xF3:
goto yy122;
3991 if (
YYFILL)
goto yyFillLabel238;
3996#line 120 "ttl_action_def.re.inc"
4003#line 4004 "parser_ttl.c"
4014 if (
YYFILL)
goto yyFillLabel239;
4018 case '"':
goto yy292;
4019 case '\\':
goto yy233;
4020 case 0xC2 ... 0xDF:
goto yy234;
4021 case 0xE0:
goto yy235;
4022 case 0xE1 ... 0xEF:
goto yy236;
4023 case 0xF0:
goto yy237;
4024 case 0xF1 ... 0xF3:
goto yy238;
4025 case 0xF4:
goto yy239;
4035 case 'a' ...
'f':
goto yy293;
4038 if (
YYFILL)
goto yyFillLabel240;
4049 case 'a' ...
'f':
goto yy294;
4052 if (
YYFILL)
goto yyFillLabel241;
4063 case 'a' ...
'f':
goto yy295;
4066 if (
YYFILL)
goto yyFillLabel242;
4077 case 'a' ...
'f':
goto yy296;
4080 if (
YYFILL)
goto yyFillLabel243;
4094 if (
YYFILL)
goto yyFillLabel244;
4098 case '\'':
goto yy292;
4099 case '\\':
goto yy243;
4100 case 0xC2 ... 0xDF:
goto yy244;
4101 case 0xE0:
goto yy245;
4102 case 0xE1 ... 0xEF:
goto yy246;
4103 case 0xF0:
goto yy247;
4104 case 0xF1 ... 0xF3:
goto yy248;
4105 case 0xF4:
goto yy249;
4115 case 'a' ...
'f':
goto yy297;
4118 if (
YYFILL)
goto yyFillLabel245;
4129 case 'a' ...
'f':
goto yy298;
4132 if (
YYFILL)
goto yyFillLabel246;
4143 case 'a' ...
'f':
goto yy299;
4146 if (
YYFILL)
goto yyFillLabel247;
4157 case 'a' ...
'f':
goto yy300;
4160 if (
YYFILL)
goto yyFillLabel248;
4171 case 'a' ...
'f':
goto yy301;
4174 if (
YYFILL)
goto yyFillLabel249;
4185 case 'a' ...
'f':
goto yy302;
4188 if (
YYFILL)
goto yyFillLabel250;
4198 case '-':
goto yy201;
4200 case 'a' ...
'z':
goto yy116;
4203 if (
YYFILL)
goto yyFillLabel251;
4215 if (
YYFILL)
goto yyFillLabel252;
4218 case 'i':
goto yy303;
4219 default:
goto yy117;
4228 if (
YYFILL)
goto yyFillLabel253;
4232 case 'x':
goto yy304;
4233 default:
goto yy122;
4241 case 0xBF:
goto yy215;
4244 if (
YYFILL)
goto yyFillLabel254;
4254 case 0xB0 ... 0xBF:
goto yy215;
4257 if (
YYFILL)
goto yyFillLabel255;
4263#line 1 "ttl_action_def.re.inc"
4270#line 4271 "parser_ttl.c"
4278 case 'a' ...
'f':
goto yy306;
4281 if (
YYFILL)
goto yyFillLabel256;
4292 case 'a' ...
'f':
goto yy307;
4295 if (
YYFILL)
goto yyFillLabel257;
4306 case 'a' ...
'f':
goto yy161;
4309 if (
YYFILL)
goto yyFillLabel258;
4320 case 'a' ...
'f':
goto yy53;
4323 if (
YYFILL)
goto yyFillLabel259;
4334 case 'a' ...
'f':
goto yy308;
4337 if (
YYFILL)
goto yyFillLabel260;
4348 case 'a' ...
'f':
goto yy309;
4351 if (
YYFILL)
goto yyFillLabel261;
4362 case 'a' ...
'f':
goto yy164;
4365 if (
YYFILL)
goto yyFillLabel262;
4376 case 'a' ...
'f':
goto yy71;
4379 if (
YYFILL)
goto yyFillLabel263;
4390 case 'a' ...
'f':
goto yy200;
4393 if (
YYFILL)
goto yyFillLabel264;
4404 case 'a' ...
'f':
goto yy106;
4407 if (
YYFILL)
goto yyFillLabel265;
4419 if (
YYFILL)
goto yyFillLabel266;
4422 case 'x':
goto yy310;
4423 default:
goto yy117;
4437 case 0xEF ... 0xF3:
goto yy122;
4440 if (
YYFILL)
goto yyFillLabel267;
4445#line 29 "ttl_action_def.re.inc"
4451#line 4452 "parser_ttl.c"
4459 case 'a' ...
'f':
goto yy311;
4462 if (
YYFILL)
goto yyFillLabel268;
4473 case 'a' ...
'f':
goto yy312;
4476 if (
YYFILL)
goto yyFillLabel269;
4487 case 'a' ...
'f':
goto yy313;
4490 if (
YYFILL)
goto yyFillLabel270;
4501 case 'a' ...
'f':
goto yy314;
4504 if (
YYFILL)
goto yyFillLabel271;
4514 case '-':
goto yy201;
4516 case 'a' ...
'z':
goto yy116;
4519 if (
YYFILL)
goto yyFillLabel272;
4530 case 'a' ...
'f':
goto yy277;
4533 if (
YYFILL)
goto yyFillLabel273;
4544 case 'a' ...
'f':
goto yy159;
4547 if (
YYFILL)
goto yyFillLabel274;
4558 case 'a' ...
'f':
goto yy282;
4561 if (
YYFILL)
goto yyFillLabel275;
4572 case 'a' ...
'f':
goto yy162;
4575 if (
YYFILL)
goto yyFillLabel276;
4580#line 158 "ttl_action_def.re.inc"
4585#line 4586 "parser_ttl.c"
4587#line 53 "lexer_ttl.re"
4594 FILE *fh,
const char *sh, VOLK_Graph *gr,
size_t *ct,
char **err_p)
4599 log_error (
"Neither file handle nor string input provided.");
4608 parse_init (&parse_it, fh, sh);
4620#ifdef VOLK_CODEC_DEBUG
4625 int ttype = ttl_lex (&parse_it, &token);
4628 char err_token[16] = {
'\0'};
4629 strncpy (err_token, (
const char *)parse_it.
tok, 15);
4631 char *err_start =
"Lexer error near token `";
4635 err_info,
"[...]' at line %u, character %ld.\n",
4638 size_t err_size = strlen (err_start) + 16 + strlen(err_info);
4639 char *err_str = malloc (err_size);
4640 sprintf (err_str,
"%s%s%s", err_start, err_token, err_info);
4641 log_error (err_str);
4649 TTLParse (parser, ttype, token, state);
4651 if (ttype ==
T_EOF)
break;
4654 if (ct) *ct = state->
ct;
4656 log_info (
"Parsed %u triples.", state->
ct);
4663 free (parse_it.
buf);
Codec interface definition and basic elements common to all codecs.
#define T_EOF
Lemon parser grammar for N-Triples.
void TTLParseTrace(FILE *TraceFILE, char *zTracePrompt)
#define T_PERIOD
Lemon parser grammar for Turtle.
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.
#define VOLK_graph_add_init(...)
Non-transactional version of VOLK_graph_add_init_txn().
void VOLK_graph_free(VOLK_Graph *gr)
Free a graph.
void VOLK_graph_iter_free(VOLK_GraphIterator *it)
Free a graph iterator.
size_t VOLK_graph_size(const VOLK_Graph *gr)
Number of triples in a graph.
#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.
void VOLK_term_free(VOLK_Term *term)
#define YYCTYPE
TTL is UTF-8 encoded.
#define YYCTYPE
TTL is UTF-8 encoded.
VOLK_rc ttl_parse_doc(FILE *fh, const char *sh, VOLK_Graph *gr, size_t *ct, char **err_p)
Parse an RDF document in Turtle format.
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_GraphIterator * it
Iterator used to build the graph.
VOLK_rc rc
Internal return code.
size_t ct
Statements parsed.
VOLK_Term * base
Base IRI used in the document.