Clean up macros in parser.h
This commit is contained in:
parent
80b19cbb83
commit
f601322956
5 changed files with 446 additions and 469 deletions
|
|
@ -35,95 +35,95 @@ HIDDEN_SYMBOLS(11) = {
|
|||
|
||||
LEX_FN() {
|
||||
START_LEXER();
|
||||
switch (LEX_STATE()) {
|
||||
switch (lex_state) {
|
||||
case 0:
|
||||
LEX_ERROR();
|
||||
case 1:
|
||||
if (LOOKAHEAD_CHAR() == '+')
|
||||
if (lookahead == '+')
|
||||
ADVANCE(2);
|
||||
LEX_ERROR();
|
||||
case 2:
|
||||
ACCEPT_TOKEN(ts_sym_plus);
|
||||
case 3:
|
||||
if (LOOKAHEAD_CHAR() == ')')
|
||||
if (lookahead == ')')
|
||||
ADVANCE(4);
|
||||
LEX_ERROR();
|
||||
case 4:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token2);
|
||||
case 5:
|
||||
if (LOOKAHEAD_CHAR() == ')')
|
||||
if (lookahead == ')')
|
||||
ADVANCE(4);
|
||||
if (LOOKAHEAD_CHAR() == '+')
|
||||
if (lookahead == '+')
|
||||
ADVANCE(2);
|
||||
LEX_ERROR();
|
||||
case 6:
|
||||
if (LOOKAHEAD_CHAR() == ')')
|
||||
if (lookahead == ')')
|
||||
ADVANCE(4);
|
||||
if (LOOKAHEAD_CHAR() == '*')
|
||||
if (lookahead == '*')
|
||||
ADVANCE(7);
|
||||
if (LOOKAHEAD_CHAR() == '+')
|
||||
if (lookahead == '+')
|
||||
ADVANCE(2);
|
||||
LEX_ERROR();
|
||||
case 7:
|
||||
ACCEPT_TOKEN(ts_sym_times);
|
||||
case 8:
|
||||
if (LOOKAHEAD_CHAR() == '(')
|
||||
if (lookahead == '(')
|
||||
ADVANCE(9);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(10);
|
||||
if (('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if (('A' <= lookahead && lookahead <= 'Z') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(12);
|
||||
LEX_ERROR();
|
||||
case 9:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token1);
|
||||
case 10:
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(11);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 11:
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(11);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 12:
|
||||
if (('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if (('A' <= lookahead && lookahead <= 'Z') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(13);
|
||||
ACCEPT_TOKEN(ts_sym_variable);
|
||||
case 13:
|
||||
if (('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if (('A' <= lookahead && lookahead <= 'Z') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(13);
|
||||
ACCEPT_TOKEN(ts_sym_variable);
|
||||
case 14:
|
||||
if (LOOKAHEAD_CHAR() == ')')
|
||||
if (lookahead == ')')
|
||||
ADVANCE(4);
|
||||
if (LOOKAHEAD_CHAR() == '*')
|
||||
if (lookahead == '*')
|
||||
ADVANCE(7);
|
||||
LEX_ERROR();
|
||||
case 15:
|
||||
if (LOOKAHEAD_CHAR() == '*')
|
||||
if (lookahead == '*')
|
||||
ADVANCE(7);
|
||||
if (LOOKAHEAD_CHAR() == '+')
|
||||
if (lookahead == '+')
|
||||
ADVANCE(2);
|
||||
LEX_ERROR();
|
||||
case 16:
|
||||
if (LOOKAHEAD_CHAR() == '*')
|
||||
if (lookahead == '*')
|
||||
ADVANCE(7);
|
||||
LEX_ERROR();
|
||||
case ts_lex_state_error:
|
||||
if (LOOKAHEAD_CHAR() == '(')
|
||||
if (lookahead == '(')
|
||||
ADVANCE(9);
|
||||
if (LOOKAHEAD_CHAR() == ')')
|
||||
if (lookahead == ')')
|
||||
ADVANCE(4);
|
||||
if (LOOKAHEAD_CHAR() == '*')
|
||||
if (lookahead == '*')
|
||||
ADVANCE(7);
|
||||
if (LOOKAHEAD_CHAR() == '+')
|
||||
if (lookahead == '+')
|
||||
ADVANCE(2);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(10);
|
||||
if (('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if (('A' <= lookahead && lookahead <= 'Z') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(12);
|
||||
LEX_ERROR();
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -99,449 +99,449 @@ HIDDEN_SYMBOLS(35) = {
|
|||
|
||||
LEX_FN() {
|
||||
START_LEXER();
|
||||
switch (LEX_STATE()) {
|
||||
switch (lex_state) {
|
||||
case 0:
|
||||
if (LOOKAHEAD_CHAR() == ')')
|
||||
if (lookahead == ')')
|
||||
ADVANCE(1);
|
||||
LEX_ERROR();
|
||||
case 1:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token4);
|
||||
case 2:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(8);
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'e') ||
|
||||
('g' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'h') ||
|
||||
('j' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'm') ||
|
||||
('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 's') ||
|
||||
(LOOKAHEAD_CHAR() == 'u') ||
|
||||
('w' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'e') ||
|
||||
('g' <= lookahead && lookahead <= 'h') ||
|
||||
('j' <= lookahead && lookahead <= 'm') ||
|
||||
('o' <= lookahead && lookahead <= 's') ||
|
||||
(lookahead == 'u') ||
|
||||
('w' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(18);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(20);
|
||||
if (LOOKAHEAD_CHAR() == '[')
|
||||
if (lookahead == '[')
|
||||
ADVANCE(25);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(26);
|
||||
if (LOOKAHEAD_CHAR() == 'i')
|
||||
if (lookahead == 'i')
|
||||
ADVANCE(31);
|
||||
if (LOOKAHEAD_CHAR() == 'n')
|
||||
if (lookahead == 'n')
|
||||
ADVANCE(34);
|
||||
if ('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'n')
|
||||
if ('o' <= lookahead && lookahead <= 'n')
|
||||
ADVANCE(41);
|
||||
if (LOOKAHEAD_CHAR() == 't')
|
||||
if (lookahead == 't')
|
||||
ADVANCE(42);
|
||||
if ('u' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 't')
|
||||
if ('u' <= lookahead && lookahead <= 't')
|
||||
ADVANCE(49);
|
||||
if (LOOKAHEAD_CHAR() == 'v')
|
||||
if (lookahead == 'v')
|
||||
ADVANCE(50);
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(55);
|
||||
LEX_ERROR();
|
||||
case 3:
|
||||
if (LOOKAHEAD_CHAR() == 'a')
|
||||
if (lookahead == 'a')
|
||||
ADVANCE(4);
|
||||
LEX_ERROR();
|
||||
case 4:
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(5);
|
||||
LEX_ERROR();
|
||||
case 5:
|
||||
if (LOOKAHEAD_CHAR() == 's')
|
||||
if (lookahead == 's')
|
||||
ADVANCE(6);
|
||||
LEX_ERROR();
|
||||
case 6:
|
||||
if (LOOKAHEAD_CHAR() == 'e')
|
||||
if (lookahead == 'e')
|
||||
ADVANCE(7);
|
||||
LEX_ERROR();
|
||||
case 7:
|
||||
ACCEPT_TOKEN(ts_sym_false);
|
||||
case 8:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(9);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(15);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(17);
|
||||
LEX_ERROR();
|
||||
case 9:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(12);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(14);
|
||||
LEX_ERROR();
|
||||
case 10:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(12);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(14);
|
||||
LEX_ERROR();
|
||||
case 11:
|
||||
ACCEPT_TOKEN(ts_sym_string);
|
||||
case 12:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(13);
|
||||
if ('#' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\"')
|
||||
if ('#' <= lookahead && lookahead <= '\"')
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(12);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(14);
|
||||
LEX_ERROR();
|
||||
case 13:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(12);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(14);
|
||||
ACCEPT_TOKEN(ts_sym_string);
|
||||
case 14:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(10);
|
||||
LEX_ERROR();
|
||||
case 15:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(16);
|
||||
if ('#' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\"')
|
||||
if ('#' <= lookahead && lookahead <= '\"')
|
||||
ADVANCE(9);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(12);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(14);
|
||||
LEX_ERROR();
|
||||
case 16:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(12);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(14);
|
||||
ACCEPT_TOKEN(ts_sym_string);
|
||||
case 17:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(9);
|
||||
LEX_ERROR();
|
||||
case 18:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 19:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 20:
|
||||
if (LOOKAHEAD_CHAR() == '.')
|
||||
if (lookahead == '.')
|
||||
ADVANCE(21);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(24);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 21:
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(22);
|
||||
LEX_ERROR();
|
||||
case 22:
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(23);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 23:
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(23);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 24:
|
||||
if (LOOKAHEAD_CHAR() == '.')
|
||||
if (lookahead == '.')
|
||||
ADVANCE(21);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(24);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 25:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token10);
|
||||
case 26:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('b' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('b' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'a')
|
||||
if (lookahead == 'a')
|
||||
ADVANCE(27);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 27:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'k') ||
|
||||
('m' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'k') ||
|
||||
('m' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(28);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 28:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'r') ||
|
||||
('t' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'r') ||
|
||||
('t' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 's')
|
||||
if (lookahead == 's')
|
||||
ADVANCE(29);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 29:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'd') ||
|
||||
('f' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'd') ||
|
||||
('f' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'e')
|
||||
if (lookahead == 'e')
|
||||
ADVANCE(30);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 30:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 31:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'e') ||
|
||||
('g' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'e') ||
|
||||
('g' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(33);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 32:
|
||||
ACCEPT_TOKEN(ts_sym__IF);
|
||||
case 33:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
ACCEPT_TOKEN(ts_sym__IF);
|
||||
case 34:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 't') ||
|
||||
('v' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 't') ||
|
||||
('v' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'u')
|
||||
if (lookahead == 'u')
|
||||
ADVANCE(35);
|
||||
if ('v' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'u')
|
||||
if ('v' <= lookahead && lookahead <= 'u')
|
||||
ADVANCE(40);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 35:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'k') ||
|
||||
('m' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'k') ||
|
||||
('m' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(36);
|
||||
if ('m' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'l')
|
||||
if ('m' <= lookahead && lookahead <= 'l')
|
||||
ADVANCE(39);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 36:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'k') ||
|
||||
('m' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'k') ||
|
||||
('m' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(37);
|
||||
if ('m' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'l')
|
||||
if ('m' <= lookahead && lookahead <= 'l')
|
||||
ADVANCE(38);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 37:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 38:
|
||||
ACCEPT_TOKEN(ts_sym_null);
|
||||
case 39:
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(38);
|
||||
LEX_ERROR();
|
||||
case 40:
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(39);
|
||||
LEX_ERROR();
|
||||
case 41:
|
||||
if (LOOKAHEAD_CHAR() == 'u')
|
||||
if (lookahead == 'u')
|
||||
ADVANCE(40);
|
||||
LEX_ERROR();
|
||||
case 42:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'q') ||
|
||||
('s' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'q') ||
|
||||
('s' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'r')
|
||||
if (lookahead == 'r')
|
||||
ADVANCE(43);
|
||||
if ('s' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'r')
|
||||
if ('s' <= lookahead && lookahead <= 'r')
|
||||
ADVANCE(48);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 43:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 't') ||
|
||||
('v' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 't') ||
|
||||
('v' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'u')
|
||||
if (lookahead == 'u')
|
||||
ADVANCE(44);
|
||||
if ('v' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'u')
|
||||
if ('v' <= lookahead && lookahead <= 'u')
|
||||
ADVANCE(47);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 44:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'd') ||
|
||||
('f' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'd') ||
|
||||
('f' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'e')
|
||||
if (lookahead == 'e')
|
||||
ADVANCE(45);
|
||||
if ('f' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'e')
|
||||
if ('f' <= lookahead && lookahead <= 'e')
|
||||
ADVANCE(46);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 45:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 46:
|
||||
ACCEPT_TOKEN(ts_sym_true);
|
||||
case 47:
|
||||
if (LOOKAHEAD_CHAR() == 'e')
|
||||
if (lookahead == 'e')
|
||||
ADVANCE(46);
|
||||
LEX_ERROR();
|
||||
case 48:
|
||||
if (LOOKAHEAD_CHAR() == 'u')
|
||||
if (lookahead == 'u')
|
||||
ADVANCE(47);
|
||||
LEX_ERROR();
|
||||
case 49:
|
||||
if (LOOKAHEAD_CHAR() == 'r')
|
||||
if (lookahead == 'r')
|
||||
ADVANCE(48);
|
||||
LEX_ERROR();
|
||||
case 50:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('b' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('b' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'a')
|
||||
if (lookahead == 'a')
|
||||
ADVANCE(53);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 51:
|
||||
if (LOOKAHEAD_CHAR() == 'r')
|
||||
if (lookahead == 'r')
|
||||
ADVANCE(52);
|
||||
LEX_ERROR();
|
||||
case 52:
|
||||
ACCEPT_TOKEN(ts_sym__VAR);
|
||||
case 53:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'q') ||
|
||||
('s' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'q') ||
|
||||
('s' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == 'r')
|
||||
if (lookahead == 'r')
|
||||
ADVANCE(54);
|
||||
ACCEPT_TOKEN(ts_sym_identifier);
|
||||
case 54:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(19);
|
||||
ACCEPT_TOKEN(ts_sym__VAR);
|
||||
case 55:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token5);
|
||||
case 56:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(8);
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'e') ||
|
||||
('g' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'h') ||
|
||||
('j' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'm') ||
|
||||
('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 's') ||
|
||||
(LOOKAHEAD_CHAR() == 'u') ||
|
||||
('w' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'e') ||
|
||||
('g' <= lookahead && lookahead <= 'h') ||
|
||||
('j' <= lookahead && lookahead <= 'm') ||
|
||||
('o' <= lookahead && lookahead <= 's') ||
|
||||
(lookahead == 'u') ||
|
||||
('w' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(18);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(20);
|
||||
if (LOOKAHEAD_CHAR() == '[')
|
||||
if (lookahead == '[')
|
||||
ADVANCE(25);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(26);
|
||||
if (LOOKAHEAD_CHAR() == 'i')
|
||||
if (lookahead == 'i')
|
||||
ADVANCE(31);
|
||||
if (LOOKAHEAD_CHAR() == 'n')
|
||||
if (lookahead == 'n')
|
||||
ADVANCE(34);
|
||||
if ('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'n')
|
||||
if ('o' <= lookahead && lookahead <= 'n')
|
||||
ADVANCE(41);
|
||||
if (LOOKAHEAD_CHAR() == 't')
|
||||
if (lookahead == 't')
|
||||
ADVANCE(42);
|
||||
if ('u' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 't')
|
||||
if ('u' <= lookahead && lookahead <= 't')
|
||||
ADVANCE(49);
|
||||
if (LOOKAHEAD_CHAR() == 'v')
|
||||
if (lookahead == 'v')
|
||||
ADVANCE(50);
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(55);
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(57);
|
||||
LEX_ERROR();
|
||||
case 57:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token6);
|
||||
case 58:
|
||||
if (LOOKAHEAD_CHAR() == '\n')
|
||||
if (lookahead == '\n')
|
||||
ADVANCE(59);
|
||||
if (LOOKAHEAD_CHAR() == ';')
|
||||
if (lookahead == ';')
|
||||
ADVANCE(60);
|
||||
LEX_ERROR();
|
||||
case 59:
|
||||
|
|
@ -549,9 +549,9 @@ LEX_FN() {
|
|||
case 60:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token1);
|
||||
case 61:
|
||||
if (LOOKAHEAD_CHAR() == ',')
|
||||
if (lookahead == ',')
|
||||
ADVANCE(62);
|
||||
if (LOOKAHEAD_CHAR() == ']')
|
||||
if (lookahead == ']')
|
||||
ADVANCE(63);
|
||||
LEX_ERROR();
|
||||
case 62:
|
||||
|
|
@ -559,112 +559,112 @@ LEX_FN() {
|
|||
case 63:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token11);
|
||||
case 64:
|
||||
if (LOOKAHEAD_CHAR() == ']')
|
||||
if (lookahead == ']')
|
||||
ADVANCE(63);
|
||||
LEX_ERROR();
|
||||
case 65:
|
||||
if (LOOKAHEAD_CHAR() == ',')
|
||||
if (lookahead == ',')
|
||||
ADVANCE(62);
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(57);
|
||||
LEX_ERROR();
|
||||
case 66:
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(57);
|
||||
LEX_ERROR();
|
||||
case 67:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(8);
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'e') ||
|
||||
('g' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'm') ||
|
||||
('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 's') ||
|
||||
('u' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'e') ||
|
||||
('g' <= lookahead && lookahead <= 'm') ||
|
||||
('o' <= lookahead && lookahead <= 's') ||
|
||||
('u' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(18);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(20);
|
||||
if (LOOKAHEAD_CHAR() == '[')
|
||||
if (lookahead == '[')
|
||||
ADVANCE(25);
|
||||
if (LOOKAHEAD_CHAR() == ']')
|
||||
if (lookahead == ']')
|
||||
ADVANCE(63);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(26);
|
||||
if (LOOKAHEAD_CHAR() == 'n')
|
||||
if (lookahead == 'n')
|
||||
ADVANCE(34);
|
||||
if ('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'n')
|
||||
if ('o' <= lookahead && lookahead <= 'n')
|
||||
ADVANCE(41);
|
||||
if (LOOKAHEAD_CHAR() == 't')
|
||||
if (lookahead == 't')
|
||||
ADVANCE(42);
|
||||
if ('u' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 't')
|
||||
if ('u' <= lookahead && lookahead <= 't')
|
||||
ADVANCE(49);
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(55);
|
||||
LEX_ERROR();
|
||||
case 68:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(8);
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'e') ||
|
||||
('g' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'm') ||
|
||||
('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 's') ||
|
||||
('u' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'e') ||
|
||||
('g' <= lookahead && lookahead <= 'm') ||
|
||||
('o' <= lookahead && lookahead <= 's') ||
|
||||
('u' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(18);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(20);
|
||||
if (LOOKAHEAD_CHAR() == '[')
|
||||
if (lookahead == '[')
|
||||
ADVANCE(25);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(26);
|
||||
if (LOOKAHEAD_CHAR() == 'n')
|
||||
if (lookahead == 'n')
|
||||
ADVANCE(34);
|
||||
if ('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'n')
|
||||
if ('o' <= lookahead && lookahead <= 'n')
|
||||
ADVANCE(41);
|
||||
if (LOOKAHEAD_CHAR() == 't')
|
||||
if (lookahead == 't')
|
||||
ADVANCE(42);
|
||||
if ('u' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 't')
|
||||
if ('u' <= lookahead && lookahead <= 't')
|
||||
ADVANCE(49);
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(55);
|
||||
LEX_ERROR();
|
||||
case 69:
|
||||
if (LOOKAHEAD_CHAR() == ':')
|
||||
if (lookahead == ':')
|
||||
ADVANCE(70);
|
||||
LEX_ERROR();
|
||||
case 70:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token8);
|
||||
case 71:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(8);
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(57);
|
||||
LEX_ERROR();
|
||||
case 72:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(8);
|
||||
LEX_ERROR();
|
||||
case 73:
|
||||
if (LOOKAHEAD_CHAR() == '=')
|
||||
if (lookahead == '=')
|
||||
ADVANCE(74);
|
||||
LEX_ERROR();
|
||||
case 74:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token7);
|
||||
case 75:
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(18);
|
||||
LEX_ERROR();
|
||||
case 76:
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(55);
|
||||
LEX_ERROR();
|
||||
case 77:
|
||||
if (LOOKAHEAD_CHAR() == '(')
|
||||
if (lookahead == '(')
|
||||
ADVANCE(78);
|
||||
LEX_ERROR();
|
||||
case 78:
|
||||
|
|
@ -672,55 +672,55 @@ LEX_FN() {
|
|||
case 79:
|
||||
LEX_ERROR();
|
||||
case ts_lex_state_error:
|
||||
if (LOOKAHEAD_CHAR() == '\n')
|
||||
if (lookahead == '\n')
|
||||
ADVANCE(59);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(8);
|
||||
if ((LOOKAHEAD_CHAR() == '$') ||
|
||||
('A' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'Z') ||
|
||||
(LOOKAHEAD_CHAR() == '_') ||
|
||||
('a' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'e') ||
|
||||
('g' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'h') ||
|
||||
('j' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'm') ||
|
||||
('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 's') ||
|
||||
(LOOKAHEAD_CHAR() == 'u') ||
|
||||
('w' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'z'))
|
||||
if ((lookahead == '$') ||
|
||||
('A' <= lookahead && lookahead <= 'Z') ||
|
||||
(lookahead == '_') ||
|
||||
('a' <= lookahead && lookahead <= 'e') ||
|
||||
('g' <= lookahead && lookahead <= 'h') ||
|
||||
('j' <= lookahead && lookahead <= 'm') ||
|
||||
('o' <= lookahead && lookahead <= 's') ||
|
||||
(lookahead == 'u') ||
|
||||
('w' <= lookahead && lookahead <= 'z'))
|
||||
ADVANCE(18);
|
||||
if (LOOKAHEAD_CHAR() == '(')
|
||||
if (lookahead == '(')
|
||||
ADVANCE(78);
|
||||
if (LOOKAHEAD_CHAR() == ')')
|
||||
if (lookahead == ')')
|
||||
ADVANCE(1);
|
||||
if (LOOKAHEAD_CHAR() == ',')
|
||||
if (lookahead == ',')
|
||||
ADVANCE(62);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(20);
|
||||
if (LOOKAHEAD_CHAR() == ':')
|
||||
if (lookahead == ':')
|
||||
ADVANCE(70);
|
||||
if (LOOKAHEAD_CHAR() == ';')
|
||||
if (lookahead == ';')
|
||||
ADVANCE(60);
|
||||
if (LOOKAHEAD_CHAR() == '=')
|
||||
if (lookahead == '=')
|
||||
ADVANCE(74);
|
||||
if (LOOKAHEAD_CHAR() == '[')
|
||||
if (lookahead == '[')
|
||||
ADVANCE(25);
|
||||
if (LOOKAHEAD_CHAR() == ']')
|
||||
if (lookahead == ']')
|
||||
ADVANCE(63);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(26);
|
||||
if (LOOKAHEAD_CHAR() == 'i')
|
||||
if (lookahead == 'i')
|
||||
ADVANCE(31);
|
||||
if (LOOKAHEAD_CHAR() == 'n')
|
||||
if (lookahead == 'n')
|
||||
ADVANCE(34);
|
||||
if ('o' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 'n')
|
||||
if ('o' <= lookahead && lookahead <= 'n')
|
||||
ADVANCE(41);
|
||||
if (LOOKAHEAD_CHAR() == 't')
|
||||
if (lookahead == 't')
|
||||
ADVANCE(42);
|
||||
if ('u' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= 't')
|
||||
if ('u' <= lookahead && lookahead <= 't')
|
||||
ADVANCE(49);
|
||||
if (LOOKAHEAD_CHAR() == 'v')
|
||||
if (lookahead == 'v')
|
||||
ADVANCE(50);
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(55);
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(57);
|
||||
LEX_ERROR();
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -55,13 +55,13 @@ HIDDEN_SYMBOLS(18) = {
|
|||
|
||||
LEX_FN() {
|
||||
START_LEXER();
|
||||
switch (LEX_STATE()) {
|
||||
switch (lex_state) {
|
||||
case 0:
|
||||
LEX_ERROR();
|
||||
case 1:
|
||||
if (LOOKAHEAD_CHAR() == ',')
|
||||
if (lookahead == ',')
|
||||
ADVANCE(2);
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(3);
|
||||
LEX_ERROR();
|
||||
case 2:
|
||||
|
|
@ -69,194 +69,194 @@ LEX_FN() {
|
|||
case 3:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token4);
|
||||
case 4:
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(3);
|
||||
LEX_ERROR();
|
||||
case 5:
|
||||
if (LOOKAHEAD_CHAR() == ',')
|
||||
if (lookahead == ',')
|
||||
ADVANCE(2);
|
||||
if (LOOKAHEAD_CHAR() == ']')
|
||||
if (lookahead == ']')
|
||||
ADVANCE(6);
|
||||
LEX_ERROR();
|
||||
case 6:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token6);
|
||||
case 7:
|
||||
if (LOOKAHEAD_CHAR() == ']')
|
||||
if (lookahead == ']')
|
||||
ADVANCE(6);
|
||||
LEX_ERROR();
|
||||
case 8:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(9);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == '[')
|
||||
if (lookahead == '[')
|
||||
ADVANCE(24);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(25);
|
||||
if (LOOKAHEAD_CHAR() == 'n')
|
||||
if (lookahead == 'n')
|
||||
ADVANCE(30);
|
||||
if (LOOKAHEAD_CHAR() == 't')
|
||||
if (lookahead == 't')
|
||||
ADVANCE(34);
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(38);
|
||||
LEX_ERROR();
|
||||
case 9:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(16);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(18);
|
||||
LEX_ERROR();
|
||||
case 10:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(12);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(13);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(15);
|
||||
LEX_ERROR();
|
||||
case 11:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(12);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(13);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(15);
|
||||
LEX_ERROR();
|
||||
case 12:
|
||||
ACCEPT_TOKEN(ts_sym_string);
|
||||
case 13:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(14);
|
||||
if ('#' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\"')
|
||||
if ('#' <= lookahead && lookahead <= '\"')
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(13);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(15);
|
||||
LEX_ERROR();
|
||||
case 14:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(12);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(13);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(15);
|
||||
ACCEPT_TOKEN(ts_sym_string);
|
||||
case 15:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(11);
|
||||
LEX_ERROR();
|
||||
case 16:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(17);
|
||||
if ('#' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\"')
|
||||
if ('#' <= lookahead && lookahead <= '\"')
|
||||
ADVANCE(10);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(13);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(15);
|
||||
LEX_ERROR();
|
||||
case 17:
|
||||
if (!((LOOKAHEAD_CHAR() == '\"') ||
|
||||
(LOOKAHEAD_CHAR() == '\\')))
|
||||
if (!((lookahead == '\"') ||
|
||||
(lookahead == '\\')))
|
||||
ADVANCE(11);
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(12);
|
||||
if (LOOKAHEAD_CHAR() == '\\')
|
||||
if (lookahead == '\\')
|
||||
ADVANCE(13);
|
||||
if (']' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '\\')
|
||||
if (']' <= lookahead && lookahead <= '\\')
|
||||
ADVANCE(15);
|
||||
ACCEPT_TOKEN(ts_sym_string);
|
||||
case 18:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(10);
|
||||
LEX_ERROR();
|
||||
case 19:
|
||||
if (LOOKAHEAD_CHAR() == '.')
|
||||
if (lookahead == '.')
|
||||
ADVANCE(20);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(23);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 20:
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(21);
|
||||
LEX_ERROR();
|
||||
case 21:
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(22);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 22:
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(22);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 23:
|
||||
if (LOOKAHEAD_CHAR() == '.')
|
||||
if (lookahead == '.')
|
||||
ADVANCE(20);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(23);
|
||||
ACCEPT_TOKEN(ts_sym_number);
|
||||
case 24:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token5);
|
||||
case 25:
|
||||
if (LOOKAHEAD_CHAR() == 'a')
|
||||
if (lookahead == 'a')
|
||||
ADVANCE(26);
|
||||
LEX_ERROR();
|
||||
case 26:
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(27);
|
||||
LEX_ERROR();
|
||||
case 27:
|
||||
if (LOOKAHEAD_CHAR() == 's')
|
||||
if (lookahead == 's')
|
||||
ADVANCE(28);
|
||||
LEX_ERROR();
|
||||
case 28:
|
||||
if (LOOKAHEAD_CHAR() == 'e')
|
||||
if (lookahead == 'e')
|
||||
ADVANCE(29);
|
||||
LEX_ERROR();
|
||||
case 29:
|
||||
ACCEPT_TOKEN(ts_sym_false);
|
||||
case 30:
|
||||
if (LOOKAHEAD_CHAR() == 'u')
|
||||
if (lookahead == 'u')
|
||||
ADVANCE(31);
|
||||
LEX_ERROR();
|
||||
case 31:
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(32);
|
||||
LEX_ERROR();
|
||||
case 32:
|
||||
if (LOOKAHEAD_CHAR() == 'l')
|
||||
if (lookahead == 'l')
|
||||
ADVANCE(33);
|
||||
LEX_ERROR();
|
||||
case 33:
|
||||
ACCEPT_TOKEN(ts_sym_null);
|
||||
case 34:
|
||||
if (LOOKAHEAD_CHAR() == 'r')
|
||||
if (lookahead == 'r')
|
||||
ADVANCE(35);
|
||||
LEX_ERROR();
|
||||
case 35:
|
||||
if (LOOKAHEAD_CHAR() == 'u')
|
||||
if (lookahead == 'u')
|
||||
ADVANCE(36);
|
||||
LEX_ERROR();
|
||||
case 36:
|
||||
if (LOOKAHEAD_CHAR() == 'e')
|
||||
if (lookahead == 'e')
|
||||
ADVANCE(37);
|
||||
LEX_ERROR();
|
||||
case 37:
|
||||
|
|
@ -264,61 +264,61 @@ LEX_FN() {
|
|||
case 38:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token1);
|
||||
case 39:
|
||||
if (LOOKAHEAD_CHAR() == ':')
|
||||
if (lookahead == ':')
|
||||
ADVANCE(40);
|
||||
LEX_ERROR();
|
||||
case 40:
|
||||
ACCEPT_TOKEN(ts_aux_sym_token2);
|
||||
case 41:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(9);
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(3);
|
||||
LEX_ERROR();
|
||||
case 42:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(9);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == '[')
|
||||
if (lookahead == '[')
|
||||
ADVANCE(24);
|
||||
if (LOOKAHEAD_CHAR() == ']')
|
||||
if (lookahead == ']')
|
||||
ADVANCE(6);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(25);
|
||||
if (LOOKAHEAD_CHAR() == 'n')
|
||||
if (lookahead == 'n')
|
||||
ADVANCE(30);
|
||||
if (LOOKAHEAD_CHAR() == 't')
|
||||
if (lookahead == 't')
|
||||
ADVANCE(34);
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(38);
|
||||
LEX_ERROR();
|
||||
case 43:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(9);
|
||||
LEX_ERROR();
|
||||
case ts_lex_state_error:
|
||||
if (LOOKAHEAD_CHAR() == '\"')
|
||||
if (lookahead == '\"')
|
||||
ADVANCE(9);
|
||||
if (LOOKAHEAD_CHAR() == ',')
|
||||
if (lookahead == ',')
|
||||
ADVANCE(2);
|
||||
if ('0' <= LOOKAHEAD_CHAR() && LOOKAHEAD_CHAR() <= '9')
|
||||
if ('0' <= lookahead && lookahead <= '9')
|
||||
ADVANCE(19);
|
||||
if (LOOKAHEAD_CHAR() == ':')
|
||||
if (lookahead == ':')
|
||||
ADVANCE(40);
|
||||
if (LOOKAHEAD_CHAR() == '[')
|
||||
if (lookahead == '[')
|
||||
ADVANCE(24);
|
||||
if (LOOKAHEAD_CHAR() == ']')
|
||||
if (lookahead == ']')
|
||||
ADVANCE(6);
|
||||
if (LOOKAHEAD_CHAR() == 'f')
|
||||
if (lookahead == 'f')
|
||||
ADVANCE(25);
|
||||
if (LOOKAHEAD_CHAR() == 'n')
|
||||
if (lookahead == 'n')
|
||||
ADVANCE(30);
|
||||
if (LOOKAHEAD_CHAR() == 't')
|
||||
if (lookahead == 't')
|
||||
ADVANCE(34);
|
||||
if (LOOKAHEAD_CHAR() == '{')
|
||||
if (lookahead == '{')
|
||||
ADVANCE(38);
|
||||
if (LOOKAHEAD_CHAR() == '}')
|
||||
if (lookahead == '}')
|
||||
ADVANCE(3);
|
||||
LEX_ERROR();
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -31,81 +31,58 @@ extern "C" {
|
|||
#define DEBUG_PARSE(...)
|
||||
#endif
|
||||
|
||||
#define SYMBOL_NAMES \
|
||||
static const char *ts_symbol_names[]
|
||||
|
||||
#define HIDDEN_SYMBOLS(num_symbols) \
|
||||
static const int hidden_symbol_flags[num_symbols]
|
||||
|
||||
#define LEX_STATES(num_states) \
|
||||
static state_id ts_lex_states[num_states]
|
||||
|
||||
#define LEX_FN() \
|
||||
static ts_tree * ts_lex(ts_lexer *lexer, state_id lex_state)
|
||||
|
||||
#define START_LEXER() \
|
||||
char lookahead; \
|
||||
ts_lexer_skip_whitespace(lexer); \
|
||||
if (!ts_lexer_lookahead_char(lexer)) return ts_tree_make_leaf(ts_builtin_sym_end, 0, 0); \
|
||||
next_state: \
|
||||
lookahead = ts_lexer_lookahead_char(lexer);
|
||||
|
||||
#define ADVANCE(state_index) \
|
||||
{ ts_lexer_advance(lexer); lex_state = state_index; goto next_state; }
|
||||
|
||||
#define ACCEPT_TOKEN(symbol) \
|
||||
{ DEBUG_LEX("token: %s \n", ts_symbol_names[symbol]); return ts_lexer_build_node(lexer, symbol); }
|
||||
|
||||
#define LEX_ERROR() \
|
||||
{ return ts_lexer_build_node(lexer, ts_builtin_sym_error); }
|
||||
|
||||
#define LEX_PANIC() \
|
||||
{ DEBUG_LEX("Lex error: unexpected state %d", LEX_STATE()); return NULL; }
|
||||
|
||||
#define PARSE_TABLE(num_states, num_symbols) \
|
||||
static const ts_parse_action ts_parse_actions[num_states][num_symbols]
|
||||
|
||||
#define LEX_FN() \
|
||||
static ts_tree * \
|
||||
ts_lex(ts_lexer *lexer, state_id lex_state)
|
||||
|
||||
#define SYMBOL_NAMES \
|
||||
static const char *ts_symbol_names[]
|
||||
|
||||
#define HIDDEN_SYMBOLS(num_symbols) \
|
||||
static const int hidden_symbol_flags[num_symbols]
|
||||
|
||||
#define EXPORT_PARSER(constructor_name) \
|
||||
ts_parser constructor_name() { \
|
||||
ts_parser result = { \
|
||||
return (ts_parser){ \
|
||||
.parse_fn = ts_parse, \
|
||||
.symbol_names = ts_symbol_names, \
|
||||
.data = ts_lr_parser_make(TS_SYMBOL_COUNT, (const ts_parse_action *)ts_parse_actions, ts_lex_states, hidden_symbol_flags), \
|
||||
.free_fn = NULL \
|
||||
}; \
|
||||
return result; \
|
||||
}
|
||||
|
||||
#define SHIFT(to_state_value) \
|
||||
(ts_parse_action) { \
|
||||
.type = ts_parse_action_type_shift, \
|
||||
.data = { .to_state = to_state_value } \
|
||||
}
|
||||
(ts_parse_action){ .type = ts_parse_action_type_shift, .data = { .to_state = to_state_value } }
|
||||
|
||||
#define REDUCE(symbol_val, child_count_val) \
|
||||
(ts_parse_action) { \
|
||||
.type = ts_parse_action_type_reduce, \
|
||||
.data = { .symbol = symbol_val, .child_count = child_count_val } \
|
||||
}
|
||||
(ts_parse_action){ .type = ts_parse_action_type_reduce, .data = { .symbol = symbol_val, .child_count = child_count_val } }
|
||||
|
||||
#define ACCEPT_INPUT() \
|
||||
(ts_parse_action) { \
|
||||
.type = ts_parse_action_type_accept, \
|
||||
}
|
||||
|
||||
#define START_LEXER() \
|
||||
ts_lexer_skip_whitespace(lexer); \
|
||||
if (!ts_lexer_lookahead_char(lexer)) { \
|
||||
return ts_tree_make_leaf(ts_builtin_sym_end, 0, 0); \
|
||||
} \
|
||||
next_state:
|
||||
|
||||
#define LEX_STATE() \
|
||||
lex_state
|
||||
|
||||
#define LOOKAHEAD_CHAR() \
|
||||
ts_lexer_lookahead_char(lexer)
|
||||
|
||||
#define ADVANCE(state_index) \
|
||||
{ \
|
||||
ts_lexer_advance(lexer); \
|
||||
lex_state = state_index; \
|
||||
goto next_state; \
|
||||
}
|
||||
|
||||
#define ACCEPT_TOKEN(symbol) \
|
||||
{ \
|
||||
DEBUG_LEX("token: %s \n", ts_symbol_names[symbol]); \
|
||||
return ts_lexer_build_node(lexer, symbol); \
|
||||
}
|
||||
|
||||
#define LEX_ERROR() \
|
||||
return ts_lexer_build_node(lexer, ts_builtin_sym_error);
|
||||
|
||||
#define LEX_PANIC() \
|
||||
{ DEBUG_LEX("Lex error: unexpected state %d", LEX_STATE()); return NULL; }
|
||||
(ts_parse_action){ .type = ts_parse_action_type_accept }
|
||||
|
||||
|
||||
/*
|
||||
|
|
|
|||
|
|
@ -100,7 +100,7 @@ namespace tree_sitter {
|
|||
}
|
||||
|
||||
string condition_for_character_range(const rules::CharacterRange &range) {
|
||||
string lookahead("LOOKAHEAD_CHAR()");
|
||||
string lookahead("lookahead");
|
||||
if (range.min == range.max) {
|
||||
return lookahead + " == '" + character_code(range.min) + "'";
|
||||
} else {
|
||||
|
|
@ -173,7 +173,7 @@ namespace tree_sitter {
|
|||
body += _case(std::to_string(i), switch_on_lookahead_char(lex_table.states[i]));
|
||||
body += _case("ts_lex_state_error", switch_on_lookahead_char(lex_table.error_state));
|
||||
body += _default("LEX_PANIC();");
|
||||
return _switch("LEX_STATE()", body);
|
||||
return _switch("lex_state", body);
|
||||
}
|
||||
|
||||
string symbol_count() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue