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"
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_ttl.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_ttl.c"
150#line 136 "../../include/volksdata/codec/parser_common.h"
161#line 4 "lexer_ttl.re"
174#ifdef VOLK_CODEC_DEBUG
184 #line 37 "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 yy142;
696 if (
YYFILL)
goto yyFillLabel19;
706 case ':':
goto yy143;
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 yy144;
755 if (
YYFILL)
goto yyFillLabel22;
772 case 0xEF ... 0xF3:
goto yy122;
773 case 'r':
goto yy145;
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 yy146;
855 case 0x81:
goto yy147;
857 case 0xB0 ... 0xBE:
goto yy126;
858 case 0x86:
goto yy148;
859 case 0xBF:
goto yy149;
862 if (
YYFILL)
goto yyFillLabel29;
872 case 0x80:
goto yy150;
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 yy151;
902 case 0xBF:
goto yy152;
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 yy153;
966 case 0xE0:
goto yy154;
967 case 0xE1 ... 0xEF:
goto yy155;
968 case 0xF0:
goto yy156;
969 case 0xF1 ... 0xF3:
goto yy157;
970 case 0xF4:
goto yy158;
989 if (
YYFILL)
goto yyFillLabel37;
993 case '"':
goto yy159;
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 yy141;
1021 case 15:
goto yy218;
1022 case 16:
goto yy261;
1023 case 17:
goto yy275;
1024 default:
goto yy306;
1032 case '"':
goto yy160;
1035 if (
YYFILL)
goto yyFillLabel38;
1040#line 8 "ttl_action_def.re.inc"
1047#line 1048 "parser_ttl.c"
1060 case 't':
goto yy53;
1061 case 'U':
goto yy161;
1062 case 'u':
goto yy162;
1065 if (
YYFILL)
goto yyFillLabel39;
1074 case 0x80 ... 0xBF:
goto yy53;
1077 if (
YYFILL)
goto yyFillLabel40;
1086 case 0xA0 ... 0xBF:
goto yy59;
1089 if (
YYFILL)
goto yyFillLabel41;
1098 case 0x80 ... 0xBF:
goto yy59;
1101 if (
YYFILL)
goto yyFillLabel42;
1110 case 0x90 ... 0xBF:
goto yy61;
1113 if (
YYFILL)
goto yyFillLabel43;
1122 case 0x80 ... 0xBF:
goto yy61;
1125 if (
YYFILL)
goto yyFillLabel44;
1134 case 0x80 ... 0x8F:
goto yy61;
1137 if (
YYFILL)
goto yyFillLabel45;
1146 case 0x80 ... 0xBF:
goto yy8;
1149 if (
YYFILL)
goto yyFillLabel46;
1158 case 0xA0 ... 0xBF:
goto yy65;
1161 if (
YYFILL)
goto yyFillLabel47;
1170 case 0x80 ... 0xBF:
goto yy65;
1173 if (
YYFILL)
goto yyFillLabel48;
1182 case 0x90 ... 0xBF:
goto yy67;
1185 if (
YYFILL)
goto yyFillLabel49;
1194 case 0x80 ... 0xBF:
goto yy67;
1197 if (
YYFILL)
goto yyFillLabel50;
1206 case 0x80 ... 0x8F:
goto yy67;
1209 if (
YYFILL)
goto yyFillLabel51;
1226 if (
YYFILL)
goto yyFillLabel52;
1230 case '\'':
goto yy159;
1231 case '\\':
goto yy74;
1232 case 0xC2 ... 0xDF:
goto yy75;
1233 case 0xE0:
goto yy76;
1234 case 0xE1 ... 0xEF:
goto yy77;
1235 case 0xF0:
goto yy78;
1236 case 0xF1 ... 0xF3:
goto yy79;
1237 case 0xF4:
goto yy80;
1246 case '\'':
goto yy163;
1249 if (
YYFILL)
goto yyFillLabel53;
1265 case 't':
goto yy71;
1266 case 'U':
goto yy164;
1267 case 'u':
goto yy165;
1270 if (
YYFILL)
goto yyFillLabel54;
1279 case 0x80 ... 0xBF:
goto yy71;
1282 if (
YYFILL)
goto yyFillLabel55;
1291 case 0xA0 ... 0xBF:
goto yy75;
1294 if (
YYFILL)
goto yyFillLabel56;
1303 case 0x80 ... 0xBF:
goto yy75;
1306 if (
YYFILL)
goto yyFillLabel57;
1315 case 0x90 ... 0xBF:
goto yy77;
1318 if (
YYFILL)
goto yyFillLabel58;
1327 case 0x80 ... 0xBF:
goto yy77;
1330 if (
YYFILL)
goto yyFillLabel59;
1339 case 0x80 ... 0x8F:
goto yy77;
1342 if (
YYFILL)
goto yyFillLabel60;
1357 if (
YYFILL)
goto yyFillLabel61;
1362 case '\r':
goto yy11;
1363 case 0xC2 ... 0xDF:
goto yy166;
1364 case 0xE0:
goto yy167;
1365 case 0xE1 ... 0xEF:
goto yy168;
1366 case 0xF0:
goto yy169;
1367 case 0xF1 ... 0xF3:
goto yy170;
1368 case 0xF4:
goto yy171;
1376 case '0' ...
'9':
goto yy85;
1379 if (
YYFILL)
goto yyFillLabel62;
1389 case '.':
goto yy172;
1390 case '0' ...
'9':
goto yy83;
1392 case 'e':
goto yy87;
1395 if (
YYFILL)
goto yyFillLabel63;
1410 if (
YYFILL)
goto yyFillLabel64;
1415 case '\r':
goto yy15;
1416 case 0xC2 ... 0xDF:
goto yy173;
1417 case 0xE0:
goto yy174;
1418 case 0xE1 ... 0xEF:
goto yy175;
1419 case 0xF0:
goto yy176;
1420 case 0xF1 ... 0xF3:
goto yy177;
1421 case 0xF4:
goto yy178;
1430 case '0' ...
'9':
goto yy85;
1432 case 'e':
goto yy87;
1435 if (
YYFILL)
goto yyFillLabel65;
1440#line 105 "ttl_action_def.re.inc"
1447 if (strchr ((
char *)it->
tok,
'.'))
1455#line 1456 "parser_ttl.c"
1462 case '-':
goto yy179;
1463 case '0' ...
'9':
goto yy180;
1466 if (
YYFILL)
goto yyFillLabel66;
1477 case 'a' ...
'f':
goto yy182;
1480 if (
YYFILL)
goto yyFillLabel67;
1491 case '%':
goto yy88;
1496 case 'a' ...
'z':
goto yy89;
1497 case '.':
goto yy183;
1498 case '\\':
goto yy92;
1499 case 0xC2:
goto yy184;
1500 case 0xC3:
goto yy93;
1502 case 0xCE ... 0xDF:
goto yy94;
1503 case 0xCD:
goto yy185;
1504 case 0xE0:
goto yy96;
1506 case 0xE4 ... 0xEC:
goto yy97;
1507 case 0xE2:
goto yy186;
1508 case 0xE3:
goto yy99;
1509 case 0xED:
goto yy100;
1510 case 0xEF:
goto yy101;
1511 case 0xF0:
goto yy102;
1512 case 0xF1 ... 0xF2:
goto yy103;
1513 case 0xF3:
goto yy104;
1516 if (
YYFILL)
goto yyFillLabel68;
1521#line 22 "ttl_action_def.re.inc"
1528#line 1529 "parser_ttl.c"
1540 case '~':
goto yy89;
1543 if (
YYFILL)
goto yyFillLabel69;
1554 case 0xB8 ... 0xBF:
goto yy89;
1557 if (
YYFILL)
goto yyFillLabel70;
1566 case 0x80 ... 0xBF:
goto yy89;
1569 if (
YYFILL)
goto yyFillLabel71;
1579 case 0xBF:
goto yy89;
1582 if (
YYFILL)
goto yyFillLabel72;
1591 case 0xA0 ... 0xBF:
goto yy94;
1594 if (
YYFILL)
goto yyFillLabel73;
1603 case 0x80 ... 0xBF:
goto yy94;
1606 if (
YYFILL)
goto yyFillLabel74;
1615 case 0x80:
goto yy187;
1616 case 0x81:
goto yy188;
1618 case 0xB0 ... 0xBE:
goto yy94;
1619 case 0x86:
goto yy189;
1620 case 0xBF:
goto yy190;
1623 if (
YYFILL)
goto yyFillLabel75;
1632 case 0x80:
goto yy191;
1633 case 0x81 ... 0xBF:
goto yy94;
1636 if (
YYFILL)
goto yyFillLabel76;
1645 case 0x80 ... 0x9F:
goto yy94;
1648 if (
YYFILL)
goto yyFillLabel77;
1658 case 0xB8 ... 0xBE:
goto yy94;
1659 case 0xB7:
goto yy192;
1660 case 0xBF:
goto yy193;
1663 if (
YYFILL)
goto yyFillLabel78;
1672 case 0x90 ... 0xBF:
goto yy97;
1675 if (
YYFILL)
goto yyFillLabel79;
1684 case 0x80 ... 0xBF:
goto yy97;
1687 if (
YYFILL)
goto yyFillLabel80;
1696 case 0x80 ... 0xAF:
goto yy97;
1699 if (
YYFILL)
goto yyFillLabel81;
1714 if (
YYFILL)
goto yyFillLabel82;
1719 case '\r':
goto yy23;
1720 case 0xC2 ... 0xDF:
goto yy194;
1721 case 0xE0:
goto yy195;
1722 case 0xE1 ... 0xEF:
goto yy196;
1723 case 0xF0:
goto yy197;
1724 case 0xF1 ... 0xF3:
goto yy198;
1725 case 0xF4:
goto yy199;
1741 case '~' ... 0x7F:
goto yy106;
1742 case '>':
goto yy108;
1743 case '\\':
goto yy109;
1744 case 0xC2 ... 0xDF:
goto yy110;
1745 case 0xE0:
goto yy111;
1746 case 0xE1 ... 0xEF:
goto yy112;
1747 case 0xF0:
goto yy113;
1748 case 0xF1 ... 0xF3:
goto yy114;
1749 case 0xF4:
goto yy115;
1752 if (
YYFILL)
goto yyFillLabel83;
1758#line 15 "ttl_action_def.re.inc"
1765#line 1766 "parser_ttl.c"
1771 case 'U':
goto yy200;
1772 case 'u':
goto yy201;
1775 if (
YYFILL)
goto yyFillLabel84;
1784 case 0x80 ... 0xBF:
goto yy106;
1787 if (
YYFILL)
goto yyFillLabel85;
1796 case 0xA0 ... 0xBF:
goto yy110;
1799 if (
YYFILL)
goto yyFillLabel86;
1808 case 0x80 ... 0xBF:
goto yy110;
1811 if (
YYFILL)
goto yyFillLabel87;
1820 case 0x90 ... 0xBF:
goto yy112;
1823 if (
YYFILL)
goto yyFillLabel88;
1832 case 0x80 ... 0xBF:
goto yy112;
1835 if (
YYFILL)
goto yyFillLabel89;
1844 case 0x80 ... 0x8F:
goto yy112;
1847 if (
YYFILL)
goto yyFillLabel90;
1858 case '-':
goto yy202;
1860 case 'a' ...
'z':
goto yy116;
1863 if (
YYFILL)
goto yyFillLabel91;
1868#line 78 "ttl_action_def.re.inc"
1875#line 1876 "parser_ttl.c"
1884 if (
YYFILL)
goto yyFillLabel92;
1887 case 'a':
goto yy203;
1888 default:
goto yy117;
1898 if (
YYFILL)
goto yyFillLabel93;
1901 case 'r':
goto yy204;
1902 default:
goto yy117;
1914 case 'a' ...
'z':
goto yy121;
1915 case '.':
goto yy123;
1916 case ':':
goto yy21;
1917 case 0xC2:
goto yy124;
1918 case 0xC3:
goto yy125;
1920 case 0xCE ... 0xDF:
goto yy126;
1921 case 0xCD:
goto yy127;
1922 case 0xE0:
goto yy128;
1924 case 0xE4 ... 0xEC:
goto yy129;
1925 case 0xE2:
goto yy130;
1926 case 0xE3:
goto yy131;
1927 case 0xED:
goto yy132;
1928 case 0xEF:
goto yy133;
1929 case 0xF0:
goto yy134;
1930 case 0xF1 ... 0xF2:
goto yy135;
1931 case 0xF3:
goto yy136;
1934 if (
YYFILL)
goto yyFillLabel94;
1947 case 'a' ...
'z':
goto yy121;
1948 case '.':
goto yy123;
1949 case 0xC2:
goto yy124;
1950 case 0xC3:
goto yy125;
1952 case 0xCE ... 0xDF:
goto yy126;
1953 case 0xCD:
goto yy127;
1954 case 0xE0:
goto yy128;
1956 case 0xE4 ... 0xEC:
goto yy129;
1957 case 0xE2:
goto yy130;
1958 case 0xE3:
goto yy131;
1959 case 0xED:
goto yy132;
1960 case 0xEF:
goto yy133;
1961 case 0xF0:
goto yy134;
1962 case 0xF1 ... 0xF2:
goto yy135;
1963 case 0xF3:
goto yy136;
1966 if (
YYFILL)
goto yyFillLabel95;
1975 case 0xB7:
goto yy121;
1978 if (
YYFILL)
goto yyFillLabel96;
1989 case 0xB8 ... 0xBF:
goto yy121;
1992 if (
YYFILL)
goto yyFillLabel97;
2001 case 0x80 ... 0xBF:
goto yy121;
2004 if (
YYFILL)
goto yyFillLabel98;
2014 case 0xBF:
goto yy121;
2017 if (
YYFILL)
goto yyFillLabel99;
2026 case 0xA0 ... 0xBF:
goto yy126;
2029 if (
YYFILL)
goto yyFillLabel100;
2038 case 0x80 ... 0xBF:
goto yy126;
2041 if (
YYFILL)
goto yyFillLabel101;
2050 case 0x80:
goto yy205;
2051 case 0x81:
goto yy206;
2053 case 0xB0 ... 0xBE:
goto yy126;
2054 case 0x86:
goto yy148;
2055 case 0xBF:
goto yy149;
2058 if (
YYFILL)
goto yyFillLabel102;
2067 case 0x80:
goto yy150;
2068 case 0x81 ... 0xBF:
goto yy126;
2071 if (
YYFILL)
goto yyFillLabel103;
2080 case 0x80 ... 0x9F:
goto yy126;
2083 if (
YYFILL)
goto yyFillLabel104;
2093 case 0xB8 ... 0xBE:
goto yy126;
2094 case 0xB7:
goto yy151;
2095 case 0xBF:
goto yy152;
2098 if (
YYFILL)
goto yyFillLabel105;
2107 case 0x90 ... 0xBF:
goto yy129;
2110 if (
YYFILL)
goto yyFillLabel106;
2119 case 0x80 ... 0xBF:
goto yy129;
2122 if (
YYFILL)
goto yyFillLabel107;
2131 case 0x80 ... 0xAF:
goto yy129;
2134 if (
YYFILL)
goto yyFillLabel108;
2145 if (
YYFILL)
goto yyFillLabel109;
2149 case 's':
goto yy207;
2150 default:
goto yy122;
2159 if (
YYFILL)
goto yyFillLabel110;
2163 case 'e':
goto yy208;
2164 default:
goto yy122;
2178 if (
YYFILL)
goto yyFillLabel111;
2183 case '\r':
goto yy30;
2184 case ']':
goto yy209;
2185 case 0xC2 ... 0xDF:
goto yy210;
2186 case 0xE0:
goto yy211;
2187 case 0xE1 ... 0xEF:
goto yy212;
2188 case 0xF0:
goto yy213;
2189 case 0xF1 ... 0xF3:
goto yy214;
2190 case 0xF4:
goto yy215;
2196#line 131 "ttl_action_def.re.inc"
2198#line 2199 "parser_ttl.c"
2201#line 151 "ttl_action_def.re.inc"
2203#line 2204 "parser_ttl.c"
2216 case 0xEF ... 0xF3:
goto yy217;
2217 case 0xCD:
goto yy221;
2218 case 0xE2:
goto yy224;
2221 if (
YYFILL)
goto yyFillLabel112;
2232 if (
YYFILL)
goto yyFillLabel113;
2235 case 'l':
goto yy231;
2236 default:
goto yy122;
2245 if (
YYFILL)
goto yyFillLabel114;
2248 case 'u':
goto yy232;
2249 default:
goto yy122;
2256 case 0x8C ... 0x8D:
goto yy121;
2259 if (
YYFILL)
goto yyFillLabel115;
2268 case 0xB0 ... 0xBF:
goto yy121;
2271 if (
YYFILL)
goto yyFillLabel116;
2280 case 0x80 ... 0x8F:
goto yy121;
2283 if (
YYFILL)
goto yyFillLabel117;
2292 case 0x80 ... 0xAF:
goto yy121;
2295 if (
YYFILL)
goto yyFillLabel118;
2304 case 0x81 ... 0xBF:
goto yy121;
2307 if (
YYFILL)
goto yyFillLabel119;
2317 case 0xB0 ... 0xBF:
goto yy121;
2320 if (
YYFILL)
goto yyFillLabel120;
2329 case 0x80 ... 0xBD:
goto yy121;
2332 if (
YYFILL)
goto yyFillLabel121;
2341 case 0x80 ... 0xBF:
goto yy51;
2344 if (
YYFILL)
goto yyFillLabel122;
2353 case 0xA0 ... 0xBF:
goto yy153;
2356 if (
YYFILL)
goto yyFillLabel123;
2365 case 0x80 ... 0xBF:
goto yy153;
2368 if (
YYFILL)
goto yyFillLabel124;
2377 case 0x90 ... 0xBF:
goto yy155;
2380 if (
YYFILL)
goto yyFillLabel125;
2389 case 0x80 ... 0xBF:
goto yy155;
2392 if (
YYFILL)
goto yyFillLabel126;
2401 case 0x80 ... 0x8F:
goto yy155;
2404 if (
YYFILL)
goto yyFillLabel127;
2421 if (
YYFILL)
goto yyFillLabel128;
2425 case '"':
goto yy233;
2426 case '\\':
goto yy234;
2427 case 0xC2 ... 0xDF:
goto yy235;
2428 case 0xE0:
goto yy236;
2429 case 0xE1 ... 0xEF:
goto yy237;
2430 case 0xF0:
goto yy238;
2431 case 0xF1 ... 0xF3:
goto yy239;
2432 case 0xF4:
goto yy240;
2442 case 'a' ...
'f':
goto yy241;
2445 if (
YYFILL)
goto yyFillLabel129;
2456 case 'a' ...
'f':
goto yy242;
2459 if (
YYFILL)
goto yyFillLabel130;
2473 if (
YYFILL)
goto yyFillLabel131;
2477 case '\'':
goto yy243;
2478 case '\\':
goto yy244;
2479 case 0xC2 ... 0xDF:
goto yy245;
2480 case 0xE0:
goto yy246;
2481 case 0xE1 ... 0xEF:
goto yy247;
2482 case 0xF0:
goto yy248;
2483 case 0xF1 ... 0xF3:
goto yy249;
2484 case 0xF4:
goto yy250;
2494 case 'a' ...
'f':
goto yy251;
2497 if (
YYFILL)
goto yyFillLabel132;
2508 case 'a' ...
'f':
goto yy252;
2511 if (
YYFILL)
goto yyFillLabel133;
2520 case 0x80 ... 0xBF:
goto yy81;
2523 if (
YYFILL)
goto yyFillLabel134;
2532 case 0xA0 ... 0xBF:
goto yy166;
2535 if (
YYFILL)
goto yyFillLabel135;
2544 case 0x80 ... 0xBF:
goto yy166;
2547 if (
YYFILL)
goto yyFillLabel136;
2556 case 0x90 ... 0xBF:
goto yy168;
2559 if (
YYFILL)
goto yyFillLabel137;
2568 case 0x80 ... 0xBF:
goto yy168;
2571 if (
YYFILL)
goto yyFillLabel138;
2580 case 0x80 ... 0x8F:
goto yy168;
2583 if (
YYFILL)
goto yyFillLabel139;
2592 case '0' ...
'9':
goto yy85;
2594 case 'e':
goto yy87;
2597 if (
YYFILL)
goto yyFillLabel140;
2606 case 0x80 ... 0xBF:
goto yy84;
2609 if (
YYFILL)
goto yyFillLabel141;
2618 case 0xA0 ... 0xBF:
goto yy173;
2621 if (
YYFILL)
goto yyFillLabel142;
2630 case 0x80 ... 0xBF:
goto yy173;
2633 if (
YYFILL)
goto yyFillLabel143;
2642 case 0x90 ... 0xBF:
goto yy175;
2645 if (
YYFILL)
goto yyFillLabel144;
2654 case 0x80 ... 0xBF:
goto yy175;
2657 if (
YYFILL)
goto yyFillLabel145;
2666 case 0x80 ... 0x8F:
goto yy175;
2669 if (
YYFILL)
goto yyFillLabel146;
2678 case '0' ...
'9':
goto yy180;
2681 if (
YYFILL)
goto yyFillLabel147;
2690 case '0' ...
'9':
goto yy180;
2693 if (
YYFILL)
goto yyFillLabel148;
2698#line 95 "ttl_action_def.re.inc"
2701 size_t offset = *it->
tok ==
'+' ? 1 : 0;
2708#line 2709 "parser_ttl.c"
2716 case 'a' ...
'f':
goto yy89;
2719 if (
YYFILL)
goto yyFillLabel149;
2728 case '%':
goto yy88;
2733 case 'a' ...
'z':
goto yy89;
2734 case '.':
goto yy183;
2735 case '\\':
goto yy92;
2736 case 0xC2:
goto yy184;
2737 case 0xC3:
goto yy93;
2739 case 0xCE ... 0xDF:
goto yy94;
2740 case 0xCD:
goto yy185;
2741 case 0xE0:
goto yy96;
2743 case 0xE4 ... 0xEC:
goto yy97;
2744 case 0xE2:
goto yy186;
2745 case 0xE3:
goto yy99;
2746 case 0xED:
goto yy100;
2747 case 0xEF:
goto yy101;
2748 case 0xF0:
goto yy102;
2749 case 0xF1 ... 0xF2:
goto yy103;
2750 case 0xF3:
goto yy104;
2753 if (
YYFILL)
goto yyFillLabel150;
2762 case 0xB7:
goto yy89;
2765 if (
YYFILL)
goto yyFillLabel151;
2775 case 0xBF:
goto yy89;
2778 if (
YYFILL)
goto yyFillLabel152;
2787 case 0x80:
goto yy253;
2788 case 0x81:
goto yy254;
2790 case 0xB0 ... 0xBE:
goto yy94;
2791 case 0x86:
goto yy189;
2792 case 0xBF:
goto yy190;
2795 if (
YYFILL)
goto yyFillLabel153;
2804 case 0x8C ... 0x8D:
goto yy89;
2807 if (
YYFILL)
goto yyFillLabel154;
2816 case 0xB0 ... 0xBF:
goto yy89;
2819 if (
YYFILL)
goto yyFillLabel155;
2828 case 0x80 ... 0x8F:
goto yy89;
2831 if (
YYFILL)
goto yyFillLabel156;
2840 case 0x80 ... 0xAF:
goto yy89;
2843 if (
YYFILL)
goto yyFillLabel157;
2852 case 0x81 ... 0xBF:
goto yy89;
2855 if (
YYFILL)
goto yyFillLabel158;
2865 case 0xB0 ... 0xBF:
goto yy89;
2868 if (
YYFILL)
goto yyFillLabel159;
2877 case 0x80 ... 0xBD:
goto yy89;
2880 if (
YYFILL)
goto yyFillLabel160;
2889 case 0x80 ... 0xBF:
goto yy105;
2892 if (
YYFILL)
goto yyFillLabel161;
2901 case 0xA0 ... 0xBF:
goto yy194;
2904 if (
YYFILL)
goto yyFillLabel162;
2913 case 0x80 ... 0xBF:
goto yy194;
2916 if (
YYFILL)
goto yyFillLabel163;
2925 case 0x90 ... 0xBF:
goto yy196;
2928 if (
YYFILL)
goto yyFillLabel164;
2937 case 0x80 ... 0xBF:
goto yy196;
2940 if (
YYFILL)
goto yyFillLabel165;
2949 case 0x80 ... 0x8F:
goto yy196;
2952 if (
YYFILL)
goto yyFillLabel166;
2963 case 'a' ...
'f':
goto yy255;
2966 if (
YYFILL)
goto yyFillLabel167;
2977 case 'a' ...
'f':
goto yy256;
2980 if (
YYFILL)
goto yyFillLabel168;
2991 case 'a' ...
'z':
goto yy257;
2994 if (
YYFILL)
goto yyFillLabel169;
3006 if (
YYFILL)
goto yyFillLabel170;
3009 case 's':
goto yy258;
3010 default:
goto yy117;
3020 if (
YYFILL)
goto yyFillLabel171;
3023 case 'e':
goto yy259;
3024 default:
goto yy117;
3032 case 0xBF:
goto yy121;
3035 if (
YYFILL)
goto yyFillLabel172;
3045 case 0xB0 ... 0xBF:
goto yy121;
3048 if (
YYFILL)
goto yyFillLabel173;
3059 if (
YYFILL)
goto yyFillLabel174;
3063 case 'e':
goto yy260;
3064 default:
goto yy122;
3073 if (
YYFILL)
goto yyFillLabel175;
3077 case 'f':
goto yy262;
3078 default:
goto yy122;
3092 if (
YYFILL)
goto yyFillLabel176;
3097 case '\r':
goto yy30;
3098 case ']':
goto yy209;
3099 case 0xC2 ... 0xDF:
goto yy210;
3100 case 0xE0:
goto yy211;
3101 case 0xE1 ... 0xEF:
goto yy212;
3102 case 0xF0:
goto yy213;
3103 case 0xF1 ... 0xF3:
goto yy214;
3104 case 0xF4:
goto yy215;
3105 default:
goto yy141;
3112 case 0x80 ... 0xBF:
goto yy139;
3115 if (
YYFILL)
goto yyFillLabel177;
3124 case 0xA0 ... 0xBF:
goto yy210;
3127 if (
YYFILL)
goto yyFillLabel178;
3136 case 0x80 ... 0xBF:
goto yy210;
3139 if (
YYFILL)
goto yyFillLabel179;
3148 case 0x90 ... 0xBF:
goto yy212;
3151 if (
YYFILL)
goto yyFillLabel180;
3160 case 0x80 ... 0xBF:
goto yy212;
3163 if (
YYFILL)
goto yyFillLabel181;
3172 case 0x80 ... 0x8F:
goto yy212;
3175 if (
YYFILL)
goto yyFillLabel182;
3190 case 'a' ...
'z':
goto yy216;
3191 case '.':
goto yy263;
3192 case 0xC2:
goto yy264;
3193 case 0xC3:
goto yy219;
3195 case 0xCE ... 0xDF:
goto yy220;
3196 case 0xCD:
goto yy265;
3197 case 0xE0:
goto yy222;
3199 case 0xE4 ... 0xEC:
goto yy223;
3200 case 0xE2:
goto yy266;
3201 case 0xE3:
goto yy225;
3202 case 0xED:
goto yy226;
3203 case 0xEF:
goto yy227;
3204 case 0xF0:
goto yy228;
3205 case 0xF1 ... 0xF2:
goto yy229;
3206 case 0xF3:
goto yy230;
3209 if (
YYFILL)
goto yyFillLabel183;
3214#line 42 "ttl_action_def.re.inc"
3221#line 3222 "parser_ttl.c"
3229 case 0xB8 ... 0xBF:
goto yy216;
3232 if (
YYFILL)
goto yyFillLabel184;
3241 case 0x80 ... 0xBF:
goto yy216;
3244 if (
YYFILL)
goto yyFillLabel185;
3254 case 0xBF:
goto yy216;
3257 if (
YYFILL)
goto yyFillLabel186;
3266 case 0xA0 ... 0xBF:
goto yy220;
3269 if (
YYFILL)
goto yyFillLabel187;
3278 case 0x80 ... 0xBF:
goto yy220;
3281 if (
YYFILL)
goto yyFillLabel188;
3290 case 0x80:
goto yy267;
3291 case 0x81:
goto yy268;
3293 case 0xB0 ... 0xBE:
goto yy220;
3294 case 0x86:
goto yy269;
3295 case 0xBF:
goto yy270;
3298 if (
YYFILL)
goto yyFillLabel189;
3307 case 0x80:
goto yy271;
3308 case 0x81 ... 0xBF:
goto yy220;
3311 if (
YYFILL)
goto yyFillLabel190;
3320 case 0x80 ... 0x9F:
goto yy220;
3323 if (
YYFILL)
goto yyFillLabel191;
3333 case 0xB8 ... 0xBE:
goto yy220;
3334 case 0xB7:
goto yy272;
3335 case 0xBF:
goto yy273;
3338 if (
YYFILL)
goto yyFillLabel192;
3347 case 0x90 ... 0xBF:
goto yy223;
3350 if (
YYFILL)
goto yyFillLabel193;
3359 case 0x80 ... 0xBF:
goto yy223;
3362 if (
YYFILL)
goto yyFillLabel194;
3371 case 0x80 ... 0xAF:
goto yy223;
3374 if (
YYFILL)
goto yyFillLabel195;
3385 if (
YYFILL)
goto yyFillLabel196;
3388 case 's':
goto yy232;
3389 default:
goto yy122;
3398 if (
YYFILL)
goto yyFillLabel197;
3401 case 'e':
goto yy274;
3402 default:
goto yy122;
3414 if (
YYFILL)
goto yyFillLabel198;
3418 case '"':
goto yy276;
3419 case '\\':
goto yy234;
3420 case 0xC2 ... 0xDF:
goto yy235;
3421 case 0xE0:
goto yy236;
3422 case 0xE1 ... 0xEF:
goto yy237;
3423 case 0xF0:
goto yy238;
3424 case 0xF1 ... 0xF3:
goto yy239;
3425 case 0xF4:
goto yy240;
3440 case 't':
goto yy160;
3441 case 'U':
goto yy277;
3442 case 'u':
goto yy278;
3445 if (
YYFILL)
goto yyFillLabel199;
3454 case 0x80 ... 0xBF:
goto yy160;
3457 if (
YYFILL)
goto yyFillLabel200;
3466 case 0xA0 ... 0xBF:
goto yy235;
3469 if (
YYFILL)
goto yyFillLabel201;
3478 case 0x80 ... 0xBF:
goto yy235;
3481 if (
YYFILL)
goto yyFillLabel202;
3490 case 0x90 ... 0xBF:
goto yy237;
3493 if (
YYFILL)
goto yyFillLabel203;
3502 case 0x80 ... 0xBF:
goto yy237;
3505 if (
YYFILL)
goto yyFillLabel204;
3514 case 0x80 ... 0x8F:
goto yy237;
3517 if (
YYFILL)
goto yyFillLabel205;
3528 case 'a' ...
'f':
goto yy279;
3531 if (
YYFILL)
goto yyFillLabel206;
3542 case 'a' ...
'f':
goto yy280;
3545 if (
YYFILL)
goto yyFillLabel207;
3559 if (
YYFILL)
goto yyFillLabel208;
3563 case '\'':
goto yy281;
3564 case '\\':
goto yy244;
3565 case 0xC2 ... 0xDF:
goto yy245;
3566 case 0xE0:
goto yy246;
3567 case 0xE1 ... 0xEF:
goto yy247;
3568 case 0xF0:
goto yy248;
3569 case 0xF1 ... 0xF3:
goto yy249;
3570 case 0xF4:
goto yy250;
3585 case 't':
goto yy163;
3586 case 'U':
goto yy282;
3587 case 'u':
goto yy283;
3590 if (
YYFILL)
goto yyFillLabel209;
3599 case 0x80 ... 0xBF:
goto yy163;
3602 if (
YYFILL)
goto yyFillLabel210;
3611 case 0xA0 ... 0xBF:
goto yy245;
3614 if (
YYFILL)
goto yyFillLabel211;
3623 case 0x80 ... 0xBF:
goto yy245;
3626 if (
YYFILL)
goto yyFillLabel212;
3635 case 0x90 ... 0xBF:
goto yy247;
3638 if (
YYFILL)
goto yyFillLabel213;
3647 case 0x80 ... 0xBF:
goto yy247;
3650 if (
YYFILL)
goto yyFillLabel214;
3659 case 0x80 ... 0x8F:
goto yy247;
3662 if (
YYFILL)
goto yyFillLabel215;
3673 case 'a' ...
'f':
goto yy284;
3676 if (
YYFILL)
goto yyFillLabel216;
3687 case 'a' ...
'f':
goto yy285;
3690 if (
YYFILL)
goto yyFillLabel217;
3700 case 0xBF:
goto yy89;
3703 if (
YYFILL)
goto yyFillLabel218;
3713 case 0xB0 ... 0xBF:
goto yy89;
3716 if (
YYFILL)
goto yyFillLabel219;
3727 case 'a' ...
'f':
goto yy286;
3730 if (
YYFILL)
goto yyFillLabel220;
3741 case 'a' ...
'f':
goto yy287;
3744 if (
YYFILL)
goto yyFillLabel221;
3754 case '-':
goto yy202;
3757 case 'a' ...
'z':
goto yy257;
3760 if (
YYFILL)
goto yyFillLabel222;
3772 if (
YYFILL)
goto yyFillLabel223;
3775 case 'e':
goto yy288;
3776 default:
goto yy117;
3786 if (
YYFILL)
goto yyFillLabel224;
3789 case 'f':
goto yy289;
3790 default:
goto yy117;
3804 case 0xEF ... 0xF3:
goto yy122;
3807 if (
YYFILL)
goto yyFillLabel225;
3812#line 49 "ttl_action_def.re.inc"
3818#line 3819 "parser_ttl.c"
3826 if (
YYFILL)
goto yyFillLabel226;
3830 case 'i':
goto yy290;
3831 default:
goto yy122;
3842 case 'a' ...
'z':
goto yy216;
3843 case '.':
goto yy263;
3844 case 0xC2:
goto yy264;
3845 case 0xC3:
goto yy219;
3847 case 0xCE ... 0xDF:
goto yy220;
3848 case 0xCD:
goto yy265;
3849 case 0xE0:
goto yy222;
3851 case 0xE4 ... 0xEC:
goto yy223;
3852 case 0xE2:
goto yy266;
3853 case 0xE3:
goto yy225;
3854 case 0xED:
goto yy226;
3855 case 0xEF:
goto yy227;
3856 case 0xF0:
goto yy228;
3857 case 0xF1 ... 0xF2:
goto yy229;
3858 case 0xF3:
goto yy230;
3861 if (
YYFILL)
goto yyFillLabel227;
3870 case 0xB7:
goto yy216;
3873 if (
YYFILL)
goto yyFillLabel228;
3883 case 0xBF:
goto yy216;
3886 if (
YYFILL)
goto yyFillLabel229;
3895 case 0x80:
goto yy291;
3896 case 0x81:
goto yy292;
3898 case 0xB0 ... 0xBE:
goto yy220;
3899 case 0x86:
goto yy269;
3900 case 0xBF:
goto yy270;
3903 if (
YYFILL)
goto yyFillLabel230;
3912 case 0x8C ... 0x8D:
goto yy216;
3915 if (
YYFILL)
goto yyFillLabel231;
3924 case 0xB0 ... 0xBF:
goto yy216;
3927 if (
YYFILL)
goto yyFillLabel232;
3936 case 0x80 ... 0x8F:
goto yy216;
3939 if (
YYFILL)
goto yyFillLabel233;
3948 case 0x80 ... 0xAF:
goto yy216;
3951 if (
YYFILL)
goto yyFillLabel234;
3960 case 0x81 ... 0xBF:
goto yy216;
3963 if (
YYFILL)
goto yyFillLabel235;
3973 case 0xB0 ... 0xBF:
goto yy216;
3976 if (
YYFILL)
goto yyFillLabel236;
3985 case 0x80 ... 0xBD:
goto yy216;
3988 if (
YYFILL)
goto yyFillLabel237;
4004 case 0xEF ... 0xF3:
goto yy122;
4007 if (
YYFILL)
goto yyFillLabel238;
4012#line 120 "ttl_action_def.re.inc"
4019#line 4020 "parser_ttl.c"
4030 if (
YYFILL)
goto yyFillLabel239;
4034 case '"':
goto yy293;
4035 case '\\':
goto yy234;
4036 case 0xC2 ... 0xDF:
goto yy235;
4037 case 0xE0:
goto yy236;
4038 case 0xE1 ... 0xEF:
goto yy237;
4039 case 0xF0:
goto yy238;
4040 case 0xF1 ... 0xF3:
goto yy239;
4041 case 0xF4:
goto yy240;
4051 case 'a' ...
'f':
goto yy294;
4054 if (
YYFILL)
goto yyFillLabel240;
4065 case 'a' ...
'f':
goto yy295;
4068 if (
YYFILL)
goto yyFillLabel241;
4079 case 'a' ...
'f':
goto yy296;
4082 if (
YYFILL)
goto yyFillLabel242;
4093 case 'a' ...
'f':
goto yy297;
4096 if (
YYFILL)
goto yyFillLabel243;
4110 if (
YYFILL)
goto yyFillLabel244;
4114 case '\'':
goto yy293;
4115 case '\\':
goto yy244;
4116 case 0xC2 ... 0xDF:
goto yy245;
4117 case 0xE0:
goto yy246;
4118 case 0xE1 ... 0xEF:
goto yy247;
4119 case 0xF0:
goto yy248;
4120 case 0xF1 ... 0xF3:
goto yy249;
4121 case 0xF4:
goto yy250;
4131 case 'a' ...
'f':
goto yy298;
4134 if (
YYFILL)
goto yyFillLabel245;
4145 case 'a' ...
'f':
goto yy299;
4148 if (
YYFILL)
goto yyFillLabel246;
4159 case 'a' ...
'f':
goto yy300;
4162 if (
YYFILL)
goto yyFillLabel247;
4173 case 'a' ...
'f':
goto yy301;
4176 if (
YYFILL)
goto yyFillLabel248;
4187 case 'a' ...
'f':
goto yy302;
4190 if (
YYFILL)
goto yyFillLabel249;
4201 case 'a' ...
'f':
goto yy303;
4204 if (
YYFILL)
goto yyFillLabel250;
4214 case '-':
goto yy202;
4216 case 'a' ...
'z':
goto yy116;
4219 if (
YYFILL)
goto yyFillLabel251;
4231 if (
YYFILL)
goto yyFillLabel252;
4234 case 'i':
goto yy304;
4235 default:
goto yy117;
4244 if (
YYFILL)
goto yyFillLabel253;
4248 case 'x':
goto yy305;
4249 default:
goto yy122;
4257 case 0xBF:
goto yy216;
4260 if (
YYFILL)
goto yyFillLabel254;
4270 case 0xB0 ... 0xBF:
goto yy216;
4273 if (
YYFILL)
goto yyFillLabel255;
4279#line 1 "ttl_action_def.re.inc"
4286#line 4287 "parser_ttl.c"
4294 case 'a' ...
'f':
goto yy307;
4297 if (
YYFILL)
goto yyFillLabel256;
4308 case 'a' ...
'f':
goto yy308;
4311 if (
YYFILL)
goto yyFillLabel257;
4322 case 'a' ...
'f':
goto yy162;
4325 if (
YYFILL)
goto yyFillLabel258;
4336 case 'a' ...
'f':
goto yy53;
4339 if (
YYFILL)
goto yyFillLabel259;
4350 case 'a' ...
'f':
goto yy309;
4353 if (
YYFILL)
goto yyFillLabel260;
4364 case 'a' ...
'f':
goto yy310;
4367 if (
YYFILL)
goto yyFillLabel261;
4378 case 'a' ...
'f':
goto yy165;
4381 if (
YYFILL)
goto yyFillLabel262;
4392 case 'a' ...
'f':
goto yy71;
4395 if (
YYFILL)
goto yyFillLabel263;
4406 case 'a' ...
'f':
goto yy201;
4409 if (
YYFILL)
goto yyFillLabel264;
4420 case 'a' ...
'f':
goto yy106;
4423 if (
YYFILL)
goto yyFillLabel265;
4435 if (
YYFILL)
goto yyFillLabel266;
4438 case 'x':
goto yy311;
4439 default:
goto yy117;
4453 case 0xEF ... 0xF3:
goto yy122;
4456 if (
YYFILL)
goto yyFillLabel267;
4461#line 29 "ttl_action_def.re.inc"
4467#line 4468 "parser_ttl.c"
4475 case 'a' ...
'f':
goto yy312;
4478 if (
YYFILL)
goto yyFillLabel268;
4489 case 'a' ...
'f':
goto yy313;
4492 if (
YYFILL)
goto yyFillLabel269;
4503 case 'a' ...
'f':
goto yy314;
4506 if (
YYFILL)
goto yyFillLabel270;
4517 case 'a' ...
'f':
goto yy315;
4520 if (
YYFILL)
goto yyFillLabel271;
4530 case '-':
goto yy202;
4532 case 'a' ...
'z':
goto yy116;
4535 if (
YYFILL)
goto yyFillLabel272;
4546 case 'a' ...
'f':
goto yy278;
4549 if (
YYFILL)
goto yyFillLabel273;
4560 case 'a' ...
'f':
goto yy160;
4563 if (
YYFILL)
goto yyFillLabel274;
4574 case 'a' ...
'f':
goto yy283;
4577 if (
YYFILL)
goto yyFillLabel275;
4588 case 'a' ...
'f':
goto yy163;
4591 if (
YYFILL)
goto yyFillLabel276;
4596#line 158 "ttl_action_def.re.inc"
4601#line 4602 "parser_ttl.c"
4603#line 46 "lexer_ttl.re"
4610 FILE *fh,
const char *sh, VOLK_Graph *gr,
size_t *ct,
char **err_p)
4615 log_error (
"Neither file handle nor string input provided.");
4624 parse_init (&parse_it, fh, sh);
4633#ifdef VOLK_CODEC_DEBUG
4638 int ttype = ttl_lex (&parse_it, &token);
4641 char err_token[16] = {
'\0'};
4642 strncpy (err_token, (
const char *)parse_it.
tok, 15);
4644 char *err_start =
"Lexical error near token `";
4648 err_info,
"[...]' at line %u, character %ld.\n",
4651 size_t err_size = strlen (err_start) + 16 + strlen(err_info);
4652 char *err_str = malloc (err_size);
4653 sprintf (err_str,
"%s%s%s", err_start, err_token, err_info);
4654 log_error (err_str);
4662 TTLParse (parser, ttype, token, state);
4664 if (ttype ==
T_EOF)
break;
4667 if (ct) *ct = state->
ct;
4669 log_info (
"Parsed %u triples.", state->
ct);
4676 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)
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().
#define VOLK_graph_size(...)
Non-transactional version of VOLK_graph_size_txn().
void VOLK_graph_iter_free(VOLK_GraphIterator *it)
Free a graph iterator.
#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.
void VOLK_term_free(VOLK_Term *term)
#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.