6#line 1 "../../include/volksdata/codec/parser_common.h"
7#ifndef _VOLK_PARSER_COMMON_H
8#define _VOLK_PARSER_COMMON_H
20#define YYCTYPE uint8_t
21#define YYCURSOR it->cur
22#define YYMARKER it->mar
23#define YYLIMIT it->lim
24#define YYFILL fill(it) == 0
43#line 44 "parser_ttl.c"
45#line 36 "../../include/volksdata/codec/parser_common.h"
62static void parse_init (
ParseIterator *it, FILE *fh,
const char *sh)
70 if (!it->
buf) log_error (
"Error allocating lexer buffer.");
89#line 90 "parser_ttl.c"
91#line 78 "../../include/volksdata/codec/parser_common.h"
99 log_debug (
"Filling codec buffer @ %p.", it->
buf);
100 if (it->
eof)
return 1;
102 size_t shift = it->
tok - it->
buf;
103 size_t used = it->
lim - it->
tok;
111 cur_off = it->
cur - it->
buf,
112 tok_off = it->
tok - it->
buf,
113 lim_off = it->
lim - it->
buf,
114 mar_off = it->
mar - it->
buf;
119 log_error (
"Memory allocation error.");
124 it->
cur = it->
buf + cur_off;
125 it->
tok = it->
buf + tok_off;
126 it->
lim = it->
buf + lim_off;
127 it->
mar = it->
buf + mar_off;
130 memmove (it->
buf, it->
tok, used);
131 LOG_TRACE (
"Limit offset before reading data: %zu", it->
lim - it->
tok);
139#line 140 "parser_ttl.c"
141#line 124 "../../include/volksdata/codec/parser_common.h"
152#line 4 "lexer_ttl.re"
182 #line 73 "lexer_ttl.re"
191#line 192 "parser_ttl.c"
194 unsigned int yyaccept = 0;
210 case '0' ...
'9':
goto yy19;
218 case 'u' ...
'z':
goto yy27;
226 case 0xC3:
goto yy37;
228 case 0xCE ... 0xDF:
goto yy38;
229 case 0xCD:
goto yy39;
230 case 0xE0:
goto yy40;
232 case 0xE4 ... 0xEC:
goto yy41;
233 case 0xE2:
goto yy42;
234 case 0xE3:
goto yy43;
235 case 0xED:
goto yy44;
236 case 0xEF:
goto yy45;
237 case 0xF0:
goto yy46;
238 case 0xF1 ... 0xF2:
goto yy47;
239 case 0xF3:
goto yy48;
242 if (
YYFILL)
goto yyFillLabel0;
250#line 82 "lexer_ttl.re"
253 "Invalid token @ %lu: %s (\\x%x)",
258#line 259 "parser_ttl.c"
275 if (
YYFILL)
goto yyFillLabel1;
280#line 150 "lexer_ttl.re"
287 for (
size_t i = 0; i < strlen ((
char *)ws); i++)
288 if (ws[i] ==
'\n' || ws[i] ==
'\r') newline (it);
293#line 294 "parser_ttl.c"
310 if (
YYFILL)
goto yyFillLabel2;
315#line 95 "lexer_ttl.re"
320#line 321 "parser_ttl.c"
330 if (
YYFILL)
goto yyFillLabel3;
335#line 102 "lexer_ttl.re"
337#line 338 "parser_ttl.c"
349 if (
YYFILL)
goto yyFillLabel4;
355 case 0xC2 ... 0xDF:
goto yy53;
356 case 0xE0:
goto yy54;
357 case 0xE1 ... 0xEF:
goto yy55;
358 case 0xF0:
goto yy56;
359 case 0xF1 ... 0xF3:
goto yy57;
360 case 0xF4:
goto yy58;
364#line 145 "lexer_ttl.re"
369#line 370 "parser_ttl.c"
381 if (
YYFILL)
goto yyFillLabel5;
386#line 205 "lexer_ttl.re"
388#line 389 "parser_ttl.c"
391#line 207 "lexer_ttl.re"
393#line 394 "parser_ttl.c"
401 case '0' ...
'9':
goto yy19;
404 if (
YYFILL)
goto yyFillLabel6;
419 if (
YYFILL)
goto yyFillLabel7;
424#line 223 "lexer_ttl.re"
426#line 427 "parser_ttl.c"
432 case '0' ...
'9':
goto yy62;
435 if (
YYFILL)
goto yyFillLabel8;
440#line 225 "lexer_ttl.re"
446#line 447 "parser_ttl.c"
454 case '0' ...
'9':
goto yy19;
459 if (
YYFILL)
goto yyFillLabel9;
464#line 170 "lexer_ttl.re"
467 size_t offset = *it->
tok ==
'+' ? 1 : 0;
474#line 475 "parser_ttl.c"
486 if (
YYFILL)
goto yyFillLabel10;
489 case 0xCD:
goto yy69;
490 case 0xE2:
goto yy72;
494#line 131 "lexer_ttl.re"
501#line 502 "parser_ttl.c"
513 if (
YYFILL)
goto yyFillLabel11;
518#line 217 "lexer_ttl.re"
524#line 525 "parser_ttl.c"
532 case 0xC2 ... 0xF4:
goto yy81;
535 if (
YYFILL)
goto yyFillLabel12;
549 case 'q' ...
'z':
goto yy93;
554 if (
YYFILL)
goto yyFillLabel13;
570 case 0xEF ... 0xF3:
goto yy99;
573 if (
YYFILL)
goto yyFillLabel14;
585 case '#':
goto yy113;
586 case ']':
goto yy114;
589 if (
YYFILL)
goto yyFillLabel15;
594#line 211 "lexer_ttl.re"
596#line 597 "parser_ttl.c"
599#line 213 "lexer_ttl.re"
601#line 602 "parser_ttl.c"
607 case '^':
goto yy116;
610 if (
YYFILL)
goto yyFillLabel16;
620 case ':':
goto yy117;
623 if (
YYFILL)
goto yyFillLabel17;
639 case 0xEF ... 0xF3:
goto yy99;
642 if (
YYFILL)
goto yyFillLabel18;
647#line 233 "lexer_ttl.re"
652#line 653 "parser_ttl.c"
665 case 0xEF ... 0xF3:
goto yy99;
666 case 'a':
goto yy118;
669 if (
YYFILL)
goto yyFillLabel19;
686 case 0xEF ... 0xF3:
goto yy99;
687 case 'r':
goto yy119;
690 if (
YYFILL)
goto yyFillLabel20;
702 case 0xB8 ... 0xBF:
goto yy98;
705 if (
YYFILL)
goto yyFillLabel21;
715 case 0x80 ... 0xBF:
goto yy98;
718 if (
YYFILL)
goto yyFillLabel22;
729 case 0xBF:
goto yy98;
732 if (
YYFILL)
goto yyFillLabel23;
742 case 0xA0 ... 0xBF:
goto yy102;
745 if (
YYFILL)
goto yyFillLabel24;
755 case 0x80 ... 0xBF:
goto yy102;
758 if (
YYFILL)
goto yyFillLabel25;
768 case 0x80:
goto yy120;
769 case 0x81:
goto yy121;
771 case 0xB0 ... 0xBE:
goto yy102;
772 case 0x86:
goto yy122;
773 case 0xBF:
goto yy123;
776 if (
YYFILL)
goto yyFillLabel26;
786 case 0x80:
goto yy124;
787 case 0x81 ... 0xBF:
goto yy102;
790 if (
YYFILL)
goto yyFillLabel27;
800 case 0x80 ... 0x9F:
goto yy102;
803 if (
YYFILL)
goto yyFillLabel28;
814 case 0xB8 ... 0xBE:
goto yy102;
815 case 0xB7:
goto yy125;
816 case 0xBF:
goto yy126;
819 if (
YYFILL)
goto yyFillLabel29;
829 case 0x90 ... 0xBF:
goto yy105;
832 if (
YYFILL)
goto yyFillLabel30;
842 case 0x80 ... 0xBF:
goto yy105;
845 if (
YYFILL)
goto yyFillLabel31;
855 case 0x80 ... 0xAF:
goto yy105;
858 if (
YYFILL)
goto yyFillLabel32;
873 if (
YYFILL)
goto yyFillLabel33;
879 case 0xC2 ... 0xDF:
goto yy127;
880 case 0xE0:
goto yy128;
881 case 0xE1 ... 0xEF:
goto yy129;
882 case 0xF0:
goto yy130;
883 case 0xF1 ... 0xF3:
goto yy131;
884 case 0xF4:
goto yy132;
895 case '"':
goto yy133;
898 if (
YYFILL)
goto yyFillLabel34;
930 case 0x80 ... 0xBF:
goto yy9;
933 if (
YYFILL)
goto yyFillLabel35;
942 case 0xA0 ... 0xBF:
goto yy53;
945 if (
YYFILL)
goto yyFillLabel36;
954 case 0x80 ... 0xBF:
goto yy53;
957 if (
YYFILL)
goto yyFillLabel37;
966 case 0x90 ... 0xBF:
goto yy55;
969 if (
YYFILL)
goto yyFillLabel38;
978 case 0x80 ... 0xBF:
goto yy55;
981 if (
YYFILL)
goto yyFillLabel39;
990 case 0x80 ... 0x8F:
goto yy55;
993 if (
YYFILL)
goto yyFillLabel40;
1008 if (
YYFILL)
goto yyFillLabel41;
1013 case '\r':
goto yy11;
1014 case 0xC2 ... 0xDF:
goto yy134;
1015 case 0xE0:
goto yy135;
1016 case 0xE1 ... 0xEF:
goto yy136;
1017 case 0xF0:
goto yy137;
1018 case 0xF1 ... 0xF3:
goto yy138;
1019 case 0xF4:
goto yy139;
1027 case '0' ...
'9':
goto yy62;
1030 if (
YYFILL)
goto yyFillLabel42;
1045 if (
YYFILL)
goto yyFillLabel43;
1050 case '\r':
goto yy15;
1051 case 0xC2 ... 0xDF:
goto yy140;
1052 case 0xE0:
goto yy141;
1053 case 0xE1 ... 0xEF:
goto yy142;
1054 case 0xF0:
goto yy143;
1055 case 0xF1 ... 0xF3:
goto yy144;
1056 case 0xF4:
goto yy145;
1065 case '0' ...
'9':
goto yy62;
1067 case 'e':
goto yy64;
1070 if (
YYFILL)
goto yyFillLabel44;
1075#line 190 "lexer_ttl.re"
1082 if (strchr ((
char *)it->
tok,
'.'))
1090#line 1091 "parser_ttl.c"
1097 case '-':
goto yy146;
1098 case '0' ...
'9':
goto yy147;
1101 if (
YYFILL)
goto yyFillLabel45;
1116 case 'a' ...
'z':
goto yy65;
1117 case 0xC2:
goto yy149;
1118 case 0xC3:
goto yy67;
1120 case 0xCE ... 0xDF:
goto yy68;
1121 case 0xCD:
goto yy150;
1122 case 0xE0:
goto yy70;
1124 case 0xE4 ... 0xEC:
goto yy71;
1125 case 0xE2:
goto yy151;
1126 case 0xE3:
goto yy73;
1127 case 0xED:
goto yy74;
1128 case 0xEF:
goto yy75;
1129 case 0xF0:
goto yy76;
1130 case 0xF1 ... 0xF2:
goto yy77;
1131 case 0xF3:
goto yy78;
1134 if (
YYFILL)
goto yyFillLabel46;
1145 case 0xB8 ... 0xBF:
goto yy65;
1148 if (
YYFILL)
goto yyFillLabel47;
1157 case 0x80 ... 0xBF:
goto yy65;
1160 if (
YYFILL)
goto yyFillLabel48;
1170 case 0xBF:
goto yy65;
1173 if (
YYFILL)
goto yyFillLabel49;
1182 case 0xA0 ... 0xBF:
goto yy68;
1185 if (
YYFILL)
goto yyFillLabel50;
1194 case 0x80 ... 0xBF:
goto yy68;
1197 if (
YYFILL)
goto yyFillLabel51;
1206 case 0x80:
goto yy152;
1207 case 0x81:
goto yy153;
1209 case 0xB0 ... 0xBE:
goto yy68;
1210 case 0x86:
goto yy154;
1211 case 0xBF:
goto yy155;
1214 if (
YYFILL)
goto yyFillLabel52;
1223 case 0x80:
goto yy156;
1224 case 0x81 ... 0xBF:
goto yy68;
1227 if (
YYFILL)
goto yyFillLabel53;
1236 case 0x80 ... 0x9F:
goto yy68;
1239 if (
YYFILL)
goto yyFillLabel54;
1249 case 0xB8 ... 0xBE:
goto yy68;
1250 case 0xB7:
goto yy157;
1251 case 0xBF:
goto yy158;
1254 if (
YYFILL)
goto yyFillLabel55;
1263 case 0x90 ... 0xBF:
goto yy71;
1266 if (
YYFILL)
goto yyFillLabel56;
1275 case 0x80 ... 0xBF:
goto yy71;
1278 if (
YYFILL)
goto yyFillLabel57;
1287 case 0x80 ... 0xAF:
goto yy71;
1290 if (
YYFILL)
goto yyFillLabel58;
1305 if (
YYFILL)
goto yyFillLabel59;
1310 case '\r':
goto yy23;
1311 case 0xC2 ... 0xDF:
goto yy159;
1312 case 0xE0:
goto yy160;
1313 case 0xE1 ... 0xEF:
goto yy161;
1314 case 0xF0:
goto yy162;
1315 case 0xF1 ... 0xF3:
goto yy163;
1316 case 0xF4:
goto yy164;
1327 case ']' ... 0x7F:
goto yy80;
1328 case '>':
goto yy82;
1329 case '\\':
goto yy84;
1330 case 0xC2 ... 0xDF:
goto yy85;
1331 case 0xE0:
goto yy86;
1332 case 0xE1 ... 0xEF:
goto yy87;
1333 case 0xF0:
goto yy88;
1334 case 0xF1 ... 0xF3:
goto yy89;
1335 case 0xF4:
goto yy90;
1338 if (
YYFILL)
goto yyFillLabel60;
1345#line 111 "lexer_ttl.re"
1352#line 1353 "parser_ttl.c"
1360 case ']' ... 0x7F:
goto yy80;
1361 case '>':
goto yy165;
1362 case '\\':
goto yy84;
1363 case 0xC2 ... 0xDF:
goto yy85;
1364 case 0xE0:
goto yy86;
1365 case 0xE1 ... 0xEF:
goto yy87;
1366 case 0xF0:
goto yy88;
1367 case 0xF1 ... 0xF3:
goto yy89;
1368 case 0xF4:
goto yy90;
1371 if (
YYFILL)
goto yyFillLabel61;
1380 case 0x80 ... 0xBF:
goto yy80;
1383 if (
YYFILL)
goto yyFillLabel62;
1392 case 0xA0 ... 0xBF:
goto yy85;
1395 if (
YYFILL)
goto yyFillLabel63;
1404 case 0x80 ... 0xBF:
goto yy85;
1407 if (
YYFILL)
goto yyFillLabel64;
1416 case 0x90 ... 0xBF:
goto yy87;
1419 if (
YYFILL)
goto yyFillLabel65;
1428 case 0x80 ... 0xBF:
goto yy87;
1431 if (
YYFILL)
goto yyFillLabel66;
1440 case 0x80 ... 0x8F:
goto yy87;
1443 if (
YYFILL)
goto yyFillLabel67;
1453 case 'a':
goto yy166;
1456 if (
YYFILL)
goto yyFillLabel68;
1466 case 'r':
goto yy167;
1469 if (
YYFILL)
goto yyFillLabel69;
1480 case '-':
goto yy168;
1481 case 'a' ...
'z':
goto yy93;
1484 if (
YYFILL)
goto yyFillLabel70;
1489#line 163 "lexer_ttl.re"
1496#line 1497 "parser_ttl.c"
1505 if (
YYFILL)
goto yyFillLabel71;
1508 case 'A':
goto yy166;
1509 case 'a':
goto yy169;
1520 if (
YYFILL)
goto yyFillLabel72;
1523 case 'R':
goto yy167;
1524 case 'r':
goto yy170;
1537 case 'a' ...
'z':
goto yy98;
1538 case ':':
goto yy21;
1539 case 0xC2:
goto yy100;
1540 case 0xC3:
goto yy101;
1542 case 0xCE ... 0xDF:
goto yy102;
1543 case 0xCD:
goto yy103;
1544 case 0xE0:
goto yy104;
1546 case 0xE4 ... 0xEC:
goto yy105;
1547 case 0xE2:
goto yy106;
1548 case 0xE3:
goto yy107;
1549 case 0xED:
goto yy108;
1550 case 0xEF:
goto yy109;
1551 case 0xF0:
goto yy110;
1552 case 0xF1 ... 0xF2:
goto yy111;
1553 case 0xF3:
goto yy112;
1556 if (
YYFILL)
goto yyFillLabel73;
1565 case 0xB7:
goto yy98;
1568 if (
YYFILL)
goto yyFillLabel74;
1579 case 0xB8 ... 0xBF:
goto yy98;
1582 if (
YYFILL)
goto yyFillLabel75;
1591 case 0x80 ... 0xBF:
goto yy98;
1594 if (
YYFILL)
goto yyFillLabel76;
1604 case 0xBF:
goto yy98;
1607 if (
YYFILL)
goto yyFillLabel77;
1616 case 0xA0 ... 0xBF:
goto yy102;
1619 if (
YYFILL)
goto yyFillLabel78;
1628 case 0x80 ... 0xBF:
goto yy102;
1631 if (
YYFILL)
goto yyFillLabel79;
1640 case 0x80:
goto yy171;
1641 case 0x81:
goto yy172;
1643 case 0xB0 ... 0xBE:
goto yy102;
1644 case 0x86:
goto yy122;
1645 case 0xBF:
goto yy123;
1648 if (
YYFILL)
goto yyFillLabel80;
1657 case 0x80:
goto yy124;
1658 case 0x81 ... 0xBF:
goto yy102;
1661 if (
YYFILL)
goto yyFillLabel81;
1670 case 0x80 ... 0x9F:
goto yy102;
1673 if (
YYFILL)
goto yyFillLabel82;
1683 case 0xB8 ... 0xBE:
goto yy102;
1684 case 0xB7:
goto yy125;
1685 case 0xBF:
goto yy126;
1688 if (
YYFILL)
goto yyFillLabel83;
1697 case 0x90 ... 0xBF:
goto yy105;
1700 if (
YYFILL)
goto yyFillLabel84;
1709 case 0x80 ... 0xBF:
goto yy105;
1712 if (
YYFILL)
goto yyFillLabel85;
1721 case 0x80 ... 0xAF:
goto yy105;
1724 if (
YYFILL)
goto yyFillLabel86;
1740 if (
YYFILL)
goto yyFillLabel87;
1745 case '\r':
goto yy28;
1746 case ']':
goto yy173;
1747 case 0xC2 ... 0xDF:
goto yy174;
1748 case 0xE0:
goto yy175;
1749 case 0xE1 ... 0xEF:
goto yy176;
1750 case 0xF0:
goto yy177;
1751 case 0xF1 ... 0xF3:
goto yy178;
1752 case 0xF4:
goto yy179;
1758#line 209 "lexer_ttl.re"
1760#line 1761 "parser_ttl.c"
1763#line 231 "lexer_ttl.re"
1765#line 1766 "parser_ttl.c"
1778 case 0xEF ... 0xF3:
goto yy181;
1779 case 0xCD:
goto yy185;
1780 case 0xE2:
goto yy188;
1783 if (
YYFILL)
goto yyFillLabel88;
1794 if (
YYFILL)
goto yyFillLabel89;
1797 case 'l':
goto yy195;
1807 if (
YYFILL)
goto yyFillLabel90;
1810 case 'u':
goto yy196;
1818 case 0x8C ... 0x8D:
goto yy98;
1821 if (
YYFILL)
goto yyFillLabel91;
1830 case 0xB0 ... 0xBF:
goto yy98;
1833 if (
YYFILL)
goto yyFillLabel92;
1842 case 0x80 ... 0x8F:
goto yy98;
1845 if (
YYFILL)
goto yyFillLabel93;
1854 case 0x80 ... 0xAF:
goto yy98;
1857 if (
YYFILL)
goto yyFillLabel94;
1866 case 0x81 ... 0xBF:
goto yy98;
1869 if (
YYFILL)
goto yyFillLabel95;
1879 case 0xB0 ... 0xBF:
goto yy98;
1882 if (
YYFILL)
goto yyFillLabel96;
1891 case 0x80 ... 0xBD:
goto yy98;
1894 if (
YYFILL)
goto yyFillLabel97;
1903 case 0x80 ... 0xBF:
goto yy49;
1906 if (
YYFILL)
goto yyFillLabel98;
1915 case 0xA0 ... 0xBF:
goto yy127;
1918 if (
YYFILL)
goto yyFillLabel99;
1927 case 0x80 ... 0xBF:
goto yy127;
1930 if (
YYFILL)
goto yyFillLabel100;
1939 case 0x90 ... 0xBF:
goto yy129;
1942 if (
YYFILL)
goto yyFillLabel101;
1951 case 0x80 ... 0xBF:
goto yy129;
1954 if (
YYFILL)
goto yyFillLabel102;
1963 case 0x80 ... 0x8F:
goto yy129;
1966 if (
YYFILL)
goto yyFillLabel103;
1972#line 100 "lexer_ttl.re"
1974#line 1975 "parser_ttl.c"
1980 case 0x80 ... 0xBF:
goto yy59;
1983 if (
YYFILL)
goto yyFillLabel104;
1992 case 0xA0 ... 0xBF:
goto yy134;
1995 if (
YYFILL)
goto yyFillLabel105;
2004 case 0x80 ... 0xBF:
goto yy134;
2007 if (
YYFILL)
goto yyFillLabel106;
2016 case 0x90 ... 0xBF:
goto yy136;
2019 if (
YYFILL)
goto yyFillLabel107;
2028 case 0x80 ... 0xBF:
goto yy136;
2031 if (
YYFILL)
goto yyFillLabel108;
2040 case 0x80 ... 0x8F:
goto yy136;
2043 if (
YYFILL)
goto yyFillLabel109;
2052 case 0x80 ... 0xBF:
goto yy61;
2055 if (
YYFILL)
goto yyFillLabel110;
2064 case 0xA0 ... 0xBF:
goto yy140;
2067 if (
YYFILL)
goto yyFillLabel111;
2076 case 0x80 ... 0xBF:
goto yy140;
2079 if (
YYFILL)
goto yyFillLabel112;
2088 case 0x90 ... 0xBF:
goto yy142;
2091 if (
YYFILL)
goto yyFillLabel113;
2100 case 0x80 ... 0xBF:
goto yy142;
2103 if (
YYFILL)
goto yyFillLabel114;
2112 case 0x80 ... 0x8F:
goto yy142;
2115 if (
YYFILL)
goto yyFillLabel115;
2124 case '0' ...
'9':
goto yy147;
2127 if (
YYFILL)
goto yyFillLabel116;
2136 case '0' ...
'9':
goto yy147;
2139 if (
YYFILL)
goto yyFillLabel117;
2144#line 180 "lexer_ttl.re"
2147 size_t offset = *it->
tok ==
'+' ? 1 : 0;
2154#line 2155 "parser_ttl.c"
2160 case 0xB7:
goto yy65;
2163 if (
YYFILL)
goto yyFillLabel118;
2173 case 0xBF:
goto yy65;
2176 if (
YYFILL)
goto yyFillLabel119;
2185 case 0x80:
goto yy197;
2186 case 0x81:
goto yy198;
2188 case 0xB0 ... 0xBE:
goto yy68;
2189 case 0x86:
goto yy154;
2190 case 0xBF:
goto yy155;
2193 if (
YYFILL)
goto yyFillLabel120;
2202 case 0x8C ... 0x8D:
goto yy65;
2205 if (
YYFILL)
goto yyFillLabel121;
2214 case 0xB0 ... 0xBF:
goto yy65;
2217 if (
YYFILL)
goto yyFillLabel122;
2226 case 0x80 ... 0x8F:
goto yy65;
2229 if (
YYFILL)
goto yyFillLabel123;
2238 case 0x80 ... 0xAF:
goto yy65;
2241 if (
YYFILL)
goto yyFillLabel124;
2250 case 0x81 ... 0xBF:
goto yy65;
2253 if (
YYFILL)
goto yyFillLabel125;
2263 case 0xB0 ... 0xBF:
goto yy65;
2266 if (
YYFILL)
goto yyFillLabel126;
2275 case 0x80 ... 0xBD:
goto yy65;
2278 if (
YYFILL)
goto yyFillLabel127;
2287 case 0x80 ... 0xBF:
goto yy79;
2290 if (
YYFILL)
goto yyFillLabel128;
2299 case 0xA0 ... 0xBF:
goto yy159;
2302 if (
YYFILL)
goto yyFillLabel129;
2311 case 0x80 ... 0xBF:
goto yy159;
2314 if (
YYFILL)
goto yyFillLabel130;
2323 case 0x90 ... 0xBF:
goto yy161;
2326 if (
YYFILL)
goto yyFillLabel131;
2335 case 0x80 ... 0xBF:
goto yy161;
2338 if (
YYFILL)
goto yyFillLabel132;
2347 case 0x80 ... 0x8F:
goto yy161;
2350 if (
YYFILL)
goto yyFillLabel133;
2362 case ']' ... 0x7F:
goto yy80;
2363 case '>':
goto yy82;
2364 case '\\':
goto yy84;
2365 case 0xC2 ... 0xDF:
goto yy85;
2366 case 0xE0:
goto yy86;
2367 case 0xE1 ... 0xEF:
goto yy87;
2368 case 0xF0:
goto yy88;
2369 case 0xF1 ... 0xF3:
goto yy89;
2370 case 0xF4:
goto yy90;
2373 if (
YYFILL)
goto yyFillLabel134;
2383 case 's':
goto yy199;
2386 if (
YYFILL)
goto yyFillLabel135;
2396 case 'e':
goto yy200;
2399 if (
YYFILL)
goto yyFillLabel136;
2410 case 'a' ...
'z':
goto yy201;
2413 if (
YYFILL)
goto yyFillLabel137;
2425 if (
YYFILL)
goto yyFillLabel138;
2428 case 'S':
goto yy199;
2429 case 's':
goto yy202;
2440 if (
YYFILL)
goto yyFillLabel139;
2443 case 'E':
goto yy200;
2444 case 'e':
goto yy203;
2453 case 0xBF:
goto yy98;
2456 if (
YYFILL)
goto yyFillLabel140;
2466 case 0xB0 ... 0xBF:
goto yy98;
2469 if (
YYFILL)
goto yyFillLabel141;
2485 if (
YYFILL)
goto yyFillLabel142;
2490 case '\r':
goto yy28;
2491 case ']':
goto yy173;
2492 case 0xC2 ... 0xDF:
goto yy174;
2493 case 0xE0:
goto yy175;
2494 case 0xE1 ... 0xEF:
goto yy176;
2495 case 0xF0:
goto yy177;
2496 case 0xF1 ... 0xF3:
goto yy178;
2497 case 0xF4:
goto yy179;
2498 default:
goto yy115;
2505 case 0x80 ... 0xBF:
goto yy113;
2508 if (
YYFILL)
goto yyFillLabel143;
2517 case 0xA0 ... 0xBF:
goto yy174;
2520 if (
YYFILL)
goto yyFillLabel144;
2529 case 0x80 ... 0xBF:
goto yy174;
2532 if (
YYFILL)
goto yyFillLabel145;
2541 case 0x90 ... 0xBF:
goto yy176;
2544 if (
YYFILL)
goto yyFillLabel146;
2553 case 0x80 ... 0xBF:
goto yy176;
2556 if (
YYFILL)
goto yyFillLabel147;
2565 case 0x80 ... 0x8F:
goto yy176;
2568 if (
YYFILL)
goto yyFillLabel148;
2583 case 'a' ...
'z':
goto yy180;
2584 case 0xC2:
goto yy204;
2585 case 0xC3:
goto yy183;
2587 case 0xCE ... 0xDF:
goto yy184;
2588 case 0xCD:
goto yy205;
2589 case 0xE0:
goto yy186;
2591 case 0xE4 ... 0xEC:
goto yy187;
2592 case 0xE2:
goto yy206;
2593 case 0xE3:
goto yy189;
2594 case 0xED:
goto yy190;
2595 case 0xEF:
goto yy191;
2596 case 0xF0:
goto yy192;
2597 case 0xF1 ... 0xF2:
goto yy193;
2598 case 0xF3:
goto yy194;
2601 if (
YYFILL)
goto yyFillLabel149;
2606#line 138 "lexer_ttl.re"
2613#line 2614 "parser_ttl.c"
2621 case 0xB8 ... 0xBF:
goto yy180;
2624 if (
YYFILL)
goto yyFillLabel150;
2633 case 0x80 ... 0xBF:
goto yy180;
2636 if (
YYFILL)
goto yyFillLabel151;
2646 case 0xBF:
goto yy180;
2649 if (
YYFILL)
goto yyFillLabel152;
2658 case 0xA0 ... 0xBF:
goto yy184;
2661 if (
YYFILL)
goto yyFillLabel153;
2670 case 0x80 ... 0xBF:
goto yy184;
2673 if (
YYFILL)
goto yyFillLabel154;
2682 case 0x80:
goto yy207;
2683 case 0x81:
goto yy208;
2685 case 0xB0 ... 0xBE:
goto yy184;
2686 case 0x86:
goto yy209;
2687 case 0xBF:
goto yy210;
2690 if (
YYFILL)
goto yyFillLabel155;
2699 case 0x80:
goto yy211;
2700 case 0x81 ... 0xBF:
goto yy184;
2703 if (
YYFILL)
goto yyFillLabel156;
2712 case 0x80 ... 0x9F:
goto yy184;
2715 if (
YYFILL)
goto yyFillLabel157;
2725 case 0xB8 ... 0xBE:
goto yy184;
2726 case 0xB7:
goto yy212;
2727 case 0xBF:
goto yy213;
2730 if (
YYFILL)
goto yyFillLabel158;
2739 case 0x90 ... 0xBF:
goto yy187;
2742 if (
YYFILL)
goto yyFillLabel159;
2751 case 0x80 ... 0xBF:
goto yy187;
2754 if (
YYFILL)
goto yyFillLabel160;
2763 case 0x80 ... 0xAF:
goto yy187;
2766 if (
YYFILL)
goto yyFillLabel161;
2777 if (
YYFILL)
goto yyFillLabel162;
2780 case 's':
goto yy196;
2790 if (
YYFILL)
goto yyFillLabel163;
2793 case 'e':
goto yy214;
2802 case 0xBF:
goto yy65;
2805 if (
YYFILL)
goto yyFillLabel164;
2815 case 0xB0 ... 0xBF:
goto yy65;
2818 if (
YYFILL)
goto yyFillLabel165;
2828 case 'e':
goto yy216;
2831 if (
YYFILL)
goto yyFillLabel166;
2841 case 'f':
goto yy218;
2844 if (
YYFILL)
goto yyFillLabel167;
2854 case '-':
goto yy168;
2857 case 'a' ...
'z':
goto yy201;
2860 if (
YYFILL)
goto yyFillLabel168;
2872 if (
YYFILL)
goto yyFillLabel169;
2875 case 'E':
goto yy216;
2876 case 'e':
goto yy219;
2887 if (
YYFILL)
goto yyFillLabel170;
2890 case 'F':
goto yy218;
2891 case 'f':
goto yy220;
2899 case 0xB7:
goto yy180;
2902 if (
YYFILL)
goto yyFillLabel171;
2912 case 0xBF:
goto yy180;
2915 if (
YYFILL)
goto yyFillLabel172;
2924 case 0x80:
goto yy221;
2925 case 0x81:
goto yy222;
2927 case 0xB0 ... 0xBE:
goto yy184;
2928 case 0x86:
goto yy209;
2929 case 0xBF:
goto yy210;
2932 if (
YYFILL)
goto yyFillLabel173;
2941 case 0x8C ... 0x8D:
goto yy180;
2944 if (
YYFILL)
goto yyFillLabel174;
2953 case 0xB0 ... 0xBF:
goto yy180;
2956 if (
YYFILL)
goto yyFillLabel175;
2965 case 0x80 ... 0x8F:
goto yy180;
2968 if (
YYFILL)
goto yyFillLabel176;
2977 case 0x80 ... 0xAF:
goto yy180;
2980 if (
YYFILL)
goto yyFillLabel177;
2989 case 0x81 ... 0xBF:
goto yy180;
2992 if (
YYFILL)
goto yyFillLabel178;
3002 case 0xB0 ... 0xBF:
goto yy180;
3005 if (
YYFILL)
goto yyFillLabel179;
3014 case 0x80 ... 0xBD:
goto yy180;
3017 if (
YYFILL)
goto yyFillLabel180;
3033 case 0xEF ... 0xF3:
goto yy99;
3036 if (
YYFILL)
goto yyFillLabel181;
3041#line 104 "lexer_ttl.re"
3048#line 3049 "parser_ttl.c"
3052#line 125 "lexer_ttl.re"
3058#line 3059 "parser_ttl.c"
3065 case 'i':
goto yy223;
3068 if (
YYFILL)
goto yyFillLabel182;
3078 case '-':
goto yy168;
3079 case 'a' ...
'z':
goto yy93;
3082 if (
YYFILL)
goto yyFillLabel183;
3094 if (
YYFILL)
goto yyFillLabel184;
3097 case 'I':
goto yy223;
3098 case 'i':
goto yy224;
3107 case 0xBF:
goto yy180;
3110 if (
YYFILL)
goto yyFillLabel185;
3120 case 0xB0 ... 0xBF:
goto yy180;
3123 if (
YYFILL)
goto yyFillLabel186;
3133 case 'x':
goto yy225;
3136 if (
YYFILL)
goto yyFillLabel187;
3148 if (
YYFILL)
goto yyFillLabel188;
3151 case 'X':
goto yy225;
3152 case 'x':
goto yy226;
3162 case ' ':
goto yy227;
3163 case '#':
goto yy228;
3166 if (
YYFILL)
goto yyFillLabel189;
3178 if (
YYFILL)
goto yyFillLabel190;
3183 case ' ':
goto yy227;
3184 case '#':
goto yy228;
3194 case ' ':
goto yy227;
3195 case '#':
goto yy228;
3243 if (
YYFILL)
goto yyFillLabel191;
3258 if (
YYFILL)
goto yyFillLabel192;
3263 case '\r':
goto yy227;
3267 case 0xC2 ... 0xDF:
goto yy245;
3268 case 0xE0:
goto yy246;
3269 case 0xE1 ... 0xEF:
goto yy247;
3270 case 0xF0:
goto yy248;
3271 case 0xF1 ... 0xF3:
goto yy249;
3272 case 0xF4:
goto yy250;
3280#line 118 "lexer_ttl.re"
3283 LOG_TRACE(
"Prefix declaration: '%s'", *token_p);
3287#line 3288 "parser_ttl.c"
3297 case 'a' ...
'z':
goto yy231;
3298 case ':':
goto yy229;
3299 case 0xC2:
goto yy251;
3300 case 0xC3:
goto yy232;
3302 case 0xCE ... 0xDF:
goto yy233;
3303 case 0xCD:
goto yy252;
3304 case 0xE0:
goto yy235;
3306 case 0xE4 ... 0xEC:
goto yy236;
3307 case 0xE2:
goto yy253;
3308 case 0xE3:
goto yy238;
3309 case 0xED:
goto yy239;
3310 case 0xEF:
goto yy240;
3311 case 0xF0:
goto yy241;
3312 case 0xF1 ... 0xF2:
goto yy242;
3313 case 0xF3:
goto yy243;
3316 if (
YYFILL)
goto yyFillLabel193;
3327 case 0xB8 ... 0xBF:
goto yy231;
3330 if (
YYFILL)
goto yyFillLabel194;
3339 case 0x80 ... 0xBF:
goto yy231;
3342 if (
YYFILL)
goto yyFillLabel195;
3352 case 0xBF:
goto yy231;
3355 if (
YYFILL)
goto yyFillLabel196;
3364 case 0xA0 ... 0xBF:
goto yy233;
3367 if (
YYFILL)
goto yyFillLabel197;
3376 case 0x80 ... 0xBF:
goto yy233;
3379 if (
YYFILL)
goto yyFillLabel198;
3388 case 0x80:
goto yy254;
3389 case 0x81:
goto yy255;
3391 case 0xB0 ... 0xBE:
goto yy233;
3392 case 0x86:
goto yy256;
3393 case 0xBF:
goto yy257;
3396 if (
YYFILL)
goto yyFillLabel199;
3405 case 0x80:
goto yy258;
3406 case 0x81 ... 0xBF:
goto yy233;
3409 if (
YYFILL)
goto yyFillLabel200;
3418 case 0x80 ... 0x9F:
goto yy233;
3421 if (
YYFILL)
goto yyFillLabel201;
3431 case 0xB8 ... 0xBE:
goto yy233;
3432 case 0xB7:
goto yy259;
3433 case 0xBF:
goto yy260;
3436 if (
YYFILL)
goto yyFillLabel202;
3445 case 0x90 ... 0xBF:
goto yy236;
3448 if (
YYFILL)
goto yyFillLabel203;
3457 case 0x80 ... 0xBF:
goto yy236;
3460 if (
YYFILL)
goto yyFillLabel204;
3469 case 0x80 ... 0xAF:
goto yy236;
3472 if (
YYFILL)
goto yyFillLabel205;
3488 if (
YYFILL)
goto yyFillLabel206;
3493 case '\r':
goto yy227;
3497 case 0xC2 ... 0xDF:
goto yy245;
3498 case 0xE0:
goto yy246;
3499 case 0xE1 ... 0xEF:
goto yy247;
3500 case 0xF0:
goto yy248;
3501 case 0xF1 ... 0xF3:
goto yy249;
3502 case 0xF4:
goto yy250;
3503 default:
goto yy230;
3510 case 0x80 ... 0xBF:
goto yy228;
3513 if (
YYFILL)
goto yyFillLabel207;
3522 case 0xA0 ... 0xBF:
goto yy245;
3525 if (
YYFILL)
goto yyFillLabel208;
3534 case 0x80 ... 0xBF:
goto yy245;
3537 if (
YYFILL)
goto yyFillLabel209;
3546 case 0x90 ... 0xBF:
goto yy247;
3549 if (
YYFILL)
goto yyFillLabel210;
3558 case 0x80 ... 0xBF:
goto yy247;
3561 if (
YYFILL)
goto yyFillLabel211;
3570 case 0x80 ... 0x8F:
goto yy247;
3573 if (
YYFILL)
goto yyFillLabel212;
3582 case 0xB7:
goto yy231;
3585 if (
YYFILL)
goto yyFillLabel213;
3595 case 0xBF:
goto yy231;
3598 if (
YYFILL)
goto yyFillLabel214;
3607 case 0x80:
goto yy261;
3608 case 0x81:
goto yy262;
3610 case 0xB0 ... 0xBE:
goto yy233;
3611 case 0x86:
goto yy256;
3612 case 0xBF:
goto yy257;
3615 if (
YYFILL)
goto yyFillLabel215;
3624 case 0x8C ... 0x8D:
goto yy231;
3627 if (
YYFILL)
goto yyFillLabel216;
3636 case 0xB0 ... 0xBF:
goto yy231;
3639 if (
YYFILL)
goto yyFillLabel217;
3648 case 0x80 ... 0x8F:
goto yy231;
3651 if (
YYFILL)
goto yyFillLabel218;
3660 case 0x80 ... 0xAF:
goto yy231;
3663 if (
YYFILL)
goto yyFillLabel219;
3672 case 0x81 ... 0xBF:
goto yy231;
3675 if (
YYFILL)
goto yyFillLabel220;
3685 case 0xB0 ... 0xBF:
goto yy231;
3688 if (
YYFILL)
goto yyFillLabel221;
3697 case 0x80 ... 0xBD:
goto yy231;
3700 if (
YYFILL)
goto yyFillLabel222;
3710 case 0xBF:
goto yy231;
3713 if (
YYFILL)
goto yyFillLabel223;
3723 case 0xB0 ... 0xBF:
goto yy231;
3726 if (
YYFILL)
goto yyFillLabel224;
3731#line 90 "lexer_ttl.re"
3736#line 3737 "parser_ttl.c"
3738#line 238 "lexer_ttl.re"
3743#line 3744 "parser_ttl.c"
3746 unsigned int yyaccept = 0;
3752 case ']' ... 0x7F:
goto yy267;
3753 case '"':
goto yy269;
3754 case '\\':
goto yy270;
3755 case 0xC2 ... 0xDF:
goto yy271;
3756 case 0xE0:
goto yy272;
3757 case 0xE1 ... 0xEF:
goto yy273;
3758 case 0xF0:
goto yy274;
3759 case 0xF1 ... 0xF3:
goto yy275;
3760 case 0xF4:
goto yy276;
3763 if (
YYFILL)
goto yyFillLabel225;
3771#line 243 "lexer_ttl.re"
3774 "Invalid token in string @ %lu: %s (\\x%x)",
3779#line 3780 "parser_ttl.c"
3783#line 257 "lexer_ttl.re"
3785#line 3786 "parser_ttl.c"
3788#line 259 "lexer_ttl.re"
3795#line 3796 "parser_ttl.c"
3802 case '"':
goto yy267;
3803 case 'U':
goto yy277;
3804 case 'u':
goto yy279;
3807 if (
YYFILL)
goto yyFillLabel226;
3816 case 0x80 ... 0xBF:
goto yy267;
3819 if (
YYFILL)
goto yyFillLabel227;
3829 case 0xA0 ... 0xBF:
goto yy280;
3832 if (
YYFILL)
goto yyFillLabel228;
3842 case 0x80 ... 0xBF:
goto yy280;
3845 if (
YYFILL)
goto yyFillLabel229;
3855 case 0x90 ... 0xBF:
goto yy281;
3858 if (
YYFILL)
goto yyFillLabel230;
3868 case 0x80 ... 0xBF:
goto yy281;
3871 if (
YYFILL)
goto yyFillLabel231;
3881 case 0x80 ... 0x8F:
goto yy281;
3884 if (
YYFILL)
goto yyFillLabel232;
3894 case 'A' ...
'F':
goto yy282;
3897 if (
YYFILL)
goto yyFillLabel233;
3903 if (yyaccept == 0)
goto yy268;
3911 case 'A' ...
'F':
goto yy283;
3914 if (
YYFILL)
goto yyFillLabel234;
3923 case 0x80 ... 0xBF:
goto yy267;
3926 if (
YYFILL)
goto yyFillLabel235;
3935 case 0x80 ... 0xBF:
goto yy280;
3938 if (
YYFILL)
goto yyFillLabel236;
3948 case 'A' ...
'F':
goto yy284;
3951 if (
YYFILL)
goto yyFillLabel237;
3961 case 'A' ...
'F':
goto yy285;
3964 if (
YYFILL)
goto yyFillLabel238;
3974 case 'A' ...
'F':
goto yy286;
3977 if (
YYFILL)
goto yyFillLabel239;
3987 case 'A' ...
'F':
goto yy287;
3990 if (
YYFILL)
goto yyFillLabel240;
4000 case 'A' ...
'F':
goto yy279;
4003 if (
YYFILL)
goto yyFillLabel241;
4013 case 'A' ...
'F':
goto yy267;
4016 if (
YYFILL)
goto yyFillLabel242;
4021#line 251 "lexer_ttl.re"
4023 log_warn (
"Unterminated string!");
4027#line 4028 "parser_ttl.c"
4029#line 266 "lexer_ttl.re"
4034#line 4035 "parser_ttl.c"
4037 unsigned int yyaccept = 0;
4045 case ']' ... 0x7F:
goto yy292;
4046 case '"':
goto yy294;
4047 case '\\':
goto yy295;
4048 case 0xC2 ... 0xDF:
goto yy296;
4049 case 0xE0:
goto yy297;
4050 case 0xE1 ... 0xEF:
goto yy298;
4051 case 0xF0:
goto yy299;
4052 case 0xF1 ... 0xF3:
goto yy300;
4053 case 0xF4:
goto yy301;
4056 if (
YYFILL)
goto yyFillLabel243;
4064#line 286 "lexer_ttl.re"
4067 "Invalid token in long string @ %lu: %s (\\x%x)",
4072#line 4073 "parser_ttl.c"
4076#line 277 "lexer_ttl.re"
4078#line 4079 "parser_ttl.c"
4085 case '"':
goto yy302;
4088 if (
YYFILL)
goto yyFillLabel244;
4101 case 't':
goto yy292;
4102 case 'U':
goto yy304;
4103 case 'u':
goto yy305;
4106 if (
YYFILL)
goto yyFillLabel245;
4115 case 0x80 ... 0xBF:
goto yy292;
4118 if (
YYFILL)
goto yyFillLabel246;
4128 case 0xA0 ... 0xBF:
goto yy306;
4131 if (
YYFILL)
goto yyFillLabel247;
4141 case 0x80 ... 0xBF:
goto yy306;
4144 if (
YYFILL)
goto yyFillLabel248;
4154 case 0x90 ... 0xBF:
goto yy307;
4157 if (
YYFILL)
goto yyFillLabel249;
4167 case 0x80 ... 0xBF:
goto yy307;
4170 if (
YYFILL)
goto yyFillLabel250;
4180 case 0x80 ... 0x8F:
goto yy307;
4183 if (
YYFILL)
goto yyFillLabel251;
4192 case '"':
goto yy308;
4195 if (
YYFILL)
goto yyFillLabel252;
4201 if (yyaccept == 0)
goto yy293;
4209 case 'A' ...
'F':
goto yy309;
4212 if (
YYFILL)
goto yyFillLabel253;
4222 case 'A' ...
'F':
goto yy310;
4225 if (
YYFILL)
goto yyFillLabel254;
4234 case 0x80 ... 0xBF:
goto yy292;
4237 if (
YYFILL)
goto yyFillLabel255;
4246 case 0x80 ... 0xBF:
goto yy306;
4249 if (
YYFILL)
goto yyFillLabel256;
4255#line 279 "lexer_ttl.re"
4262#line 4263 "parser_ttl.c"
4269 case 'A' ...
'F':
goto yy311;
4272 if (
YYFILL)
goto yyFillLabel257;
4282 case 'A' ...
'F':
goto yy312;
4285 if (
YYFILL)
goto yyFillLabel258;
4295 case 'A' ...
'F':
goto yy313;
4298 if (
YYFILL)
goto yyFillLabel259;
4308 case 'A' ...
'F':
goto yy314;
4311 if (
YYFILL)
goto yyFillLabel260;
4321 case 'A' ...
'F':
goto yy305;
4324 if (
YYFILL)
goto yyFillLabel261;
4334 case 'A' ...
'F':
goto yy292;
4337 if (
YYFILL)
goto yyFillLabel262;
4342#line 271 "lexer_ttl.re"
4344 log_warn (
"Unterminated long string!");
4348#line 4349 "parser_ttl.c"
4350#line 294 "lexer_ttl.re"
4357 FILE *fh,
const char *sh, VOLK_Graph **gr_p,
size_t *ct,
char **err_p)
4363 log_error (
"Neither file handle nor string input provided.");
4372 parse_init (&parse_it, fh, sh);
4393 int ttype = lex (&parse_it, &token);
4396 char err_token[16] = {
'\0'};
4397 strncpy (err_token, (
const char *)parse_it.
tok, 15);
4399 char *err_start =
"Lexer error near token `";
4403 err_info,
"[...]' at line %u, character %ld.\n",
4406 size_t err_size = strlen (err_start) + 16 + strlen(err_info);
4407 char *err_str = malloc (err_size);
4408 sprintf (err_str,
"%s%s%s", err_start, err_token, err_info);
4409 log_error (err_str);
4417 TTLParse (parser, ttype, token, state);
4419 if (ttype ==
T_EOF)
break;
4422 if (ct) *ct = state->
ct;
4424 log_info (
"Parsed %u triples.", state->
ct);
4433 free (parse_it.
buf);
#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.
VOLK_Graph * VOLK_graph_new(VOLK_Store *store, const char *uri_str)
Create new graph.
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.
VOLK_rc VOLK_ttl_parse_doc(FILE *fh, const char *sh, VOLK_Graph **gr_p, size_t *ct, char **err_p)
Parse an RDF document in Turtle 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_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.