diff --git a/bindings/dust b/bindings/dust index 823bb31..dd939db 160000 --- a/bindings/dust +++ b/bindings/dust @@ -1 +1 @@ -Subproject commit 823bb3130591716771190e3123c5772250e00dc7 +Subproject commit dd939db9241c670f72794bf28b50dac3b68e445c diff --git a/corpus/tables.txt b/corpus/tables.txt index 88779e5..bd7b110 100644 --- a/corpus/tables.txt +++ b/corpus/tables.txt @@ -1,9 +1,9 @@ ================== -Table Declarations +Table Declaration ================== table { - ("answer", 42) + ['answer', 42] } --- @@ -22,3 +22,40 @@ table { (string)) (value (integer)))))))))) + +================== +Table Assignment +================== + +foobar = table { + ['answer', 42] +} + +foobar + +--- + +(root + (item + (statement + (open_statement + (expression + (operation + (expression + (identifier)) + (operator) + (expression + (value + (table + (identifier) + (identifier) + (list + (value + (string)) + (value + (integer))))))))))) + (item + (statement + (open_statement + (expression + (identifier)))))) diff --git a/grammar.js b/grammar.js index 1e08475..62bb2d3 100644 --- a/grammar.js +++ b/grammar.js @@ -55,9 +55,9 @@ module.exports = grammar({ ), list: $ => seq( - '(', + '[', repeat1(seq($.value, optional(','))), - ')' + ']' ), function: $ => seq( diff --git a/src/grammar.json b/src/grammar.json index 01fde10..d762447 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -168,7 +168,7 @@ "members": [ { "type": "STRING", - "value": "(" + "value": "[" }, { "type": "REPEAT1", @@ -196,7 +196,7 @@ }, { "type": "STRING", - "value": ")" + "value": "]" } ] }, diff --git a/src/node-types.json b/src/node-types.json index ff3ceb9..d24adb4 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -275,14 +275,6 @@ "type": "#", "named": false }, - { - "type": "(", - "named": false - }, - { - "type": ")", - "named": false - }, { "type": "+", "named": false @@ -311,6 +303,14 @@ "type": ">", "named": false }, + { + "type": "[", + "named": false + }, + { + "type": "]", + "named": false + }, { "type": "else", "named": false diff --git a/src/parser.c b/src/parser.c index 89b78ac..dcf199c 100644 --- a/src/parser.c +++ b/src/parser.c @@ -26,9 +26,9 @@ enum { sym_empty = 7, anon_sym_true = 8, anon_sym_false = 9, - anon_sym_LPAREN = 10, + anon_sym_LBRACK = 10, anon_sym_COMMA = 11, - anon_sym_RPAREN = 12, + anon_sym_RBRACK = 12, anon_sym_function = 13, anon_sym_LT = 14, anon_sym_GT = 15, @@ -79,9 +79,9 @@ static const char * const ts_symbol_names[] = { [sym_empty] = "empty", [anon_sym_true] = "true", [anon_sym_false] = "false", - [anon_sym_LPAREN] = "(", + [anon_sym_LBRACK] = "[", [anon_sym_COMMA] = ",", - [anon_sym_RPAREN] = ")", + [anon_sym_RBRACK] = "]", [anon_sym_function] = "function", [anon_sym_LT] = "<", [anon_sym_GT] = ">", @@ -132,9 +132,9 @@ static const TSSymbol ts_symbol_map[] = { [sym_empty] = sym_empty, [anon_sym_true] = anon_sym_true, [anon_sym_false] = anon_sym_false, - [anon_sym_LPAREN] = anon_sym_LPAREN, + [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_COMMA] = anon_sym_COMMA, - [anon_sym_RPAREN] = anon_sym_RPAREN, + [anon_sym_RBRACK] = anon_sym_RBRACK, [anon_sym_function] = anon_sym_function, [anon_sym_LT] = anon_sym_LT, [anon_sym_GT] = anon_sym_GT, @@ -215,7 +215,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_LPAREN] = { + [anon_sym_LBRACK] = { .visible = true, .named = false, }, @@ -223,7 +223,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_RPAREN] = { + [anon_sym_RBRACK] = { .visible = true, .named = false, }, @@ -459,115 +459,118 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(2); + if (eof) ADVANCE(3); if (lookahead == '"' || lookahead == '\'' || - lookahead == '`') ADVANCE(1); - if (lookahead == '#') ADVANCE(3); - if (lookahead == '(') ADVANCE(11); - if (lookahead == ')') ADVANCE(13); - if (lookahead == '+') ADVANCE(19); - if (lookahead == ',') ADVANCE(12); - if (lookahead == '-') ADVANCE(20); - if (lookahead == '<') ADVANCE(14); - if (lookahead == '=') ADVANCE(18); - if (lookahead == '>') ADVANCE(15); - if (lookahead == '{') ADVANCE(16); - if (lookahead == '}') ADVANCE(17); + lookahead == '`') ADVANCE(2); + if (lookahead == '#') ADVANCE(4); + if (lookahead == '(') ADVANCE(1); + if (lookahead == '+') ADVANCE(20); + if (lookahead == ',') ADVANCE(13); + if (lookahead == '-') ADVANCE(21); + if (lookahead == '<') ADVANCE(15); + if (lookahead == '=') ADVANCE(19); + if (lookahead == '>') ADVANCE(16); + if (lookahead == '[') ADVANCE(12); + if (lookahead == ']') ADVANCE(14); + if (lookahead == '{') ADVANCE(17); + if (lookahead == '}') ADVANCE(18); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(0) - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(8); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(9); if (lookahead == '.' || - ('_' <= lookahead && lookahead <= '|')) ADVANCE(6); + ('_' <= lookahead && lookahead <= '|')) ADVANCE(7); END_STATE(); case 1: - if (lookahead == '"' || - lookahead == '\'' || - lookahead == '`') ADVANCE(9); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(1); + if (lookahead == ')') ADVANCE(11); END_STATE(); case 2: - ACCEPT_TOKEN(ts_builtin_sym_end); + if (lookahead == '"' || + lookahead == '\'' || + lookahead == '`') ADVANCE(10); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(2); END_STATE(); case 3: - ACCEPT_TOKEN(anon_sym_POUND); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 4: - ACCEPT_TOKEN(aux_sym_comment_token1); - if (lookahead == '\t' || - lookahead == '\r' || - lookahead == ' ') ADVANCE(4); - if (lookahead != 0 && - lookahead != '\n') ADVANCE(5); + ACCEPT_TOKEN(anon_sym_POUND); END_STATE(); case 5: ACCEPT_TOKEN(aux_sym_comment_token1); + if (lookahead == '\t' || + lookahead == '\r' || + lookahead == ' ') ADVANCE(5); if (lookahead != 0 && - lookahead != '\n') ADVANCE(5); + lookahead != '\n') ADVANCE(6); END_STATE(); case 6: + ACCEPT_TOKEN(aux_sym_comment_token1); + if (lookahead != 0 && + lookahead != '\n') ADVANCE(6); + END_STATE(); + case 7: ACCEPT_TOKEN(sym_identifier); if (lookahead == '.' || lookahead == '_' || ('a' <= lookahead && lookahead <= 'z') || - lookahead == '|') ADVANCE(6); - END_STATE(); - case 7: - ACCEPT_TOKEN(sym_float); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(7); + lookahead == '|') ADVANCE(7); END_STATE(); case 8: - ACCEPT_TOKEN(sym_integer); - if (lookahead == '.') ADVANCE(7); + ACCEPT_TOKEN(sym_float); if (('0' <= lookahead && lookahead <= '9')) ADVANCE(8); END_STATE(); case 9: + ACCEPT_TOKEN(sym_integer); + if (lookahead == '.') ADVANCE(8); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(9); + END_STATE(); + case 10: ACCEPT_TOKEN(sym_string); if (lookahead == '"' || lookahead == '\'' || - lookahead == '`') ADVANCE(9); + lookahead == '`') ADVANCE(10); if (lookahead != 0 && - lookahead != '\n') ADVANCE(1); - END_STATE(); - case 10: - ACCEPT_TOKEN(sym_empty); + lookahead != '\n') ADVANCE(2); END_STATE(); case 11: - ACCEPT_TOKEN(anon_sym_LPAREN); - if (lookahead == ')') ADVANCE(10); + ACCEPT_TOKEN(sym_empty); END_STATE(); case 12: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 13: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 14: - ACCEPT_TOKEN(anon_sym_LT); + ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 15: - ACCEPT_TOKEN(anon_sym_GT); + ACCEPT_TOKEN(anon_sym_LT); END_STATE(); case 16: - ACCEPT_TOKEN(anon_sym_LBRACE); + ACCEPT_TOKEN(anon_sym_GT); END_STATE(); case 17: - ACCEPT_TOKEN(anon_sym_RBRACE); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 18: - ACCEPT_TOKEN(anon_sym_EQ); - if (lookahead == '=') ADVANCE(21); + ACCEPT_TOKEN(anon_sym_RBRACE); END_STATE(); case 19: - ACCEPT_TOKEN(anon_sym_PLUS); + ACCEPT_TOKEN(anon_sym_EQ); + if (lookahead == '=') ADVANCE(22); END_STATE(); case 20: - ACCEPT_TOKEN(anon_sym_DASH); + ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 21: + ACCEPT_TOKEN(anon_sym_DASH); + END_STATE(); + case 22: ACCEPT_TOKEN(anon_sym_EQ_EQ); END_STATE(); default: @@ -774,7 +777,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [57] = {.lex_state = 0}, [58] = {.lex_state = 0}, [59] = {.lex_state = 0}, - [60] = {.lex_state = 4}, + [60] = {.lex_state = 5}, [61] = {.lex_state = 0}, [62] = {.lex_state = 0}, [63] = {.lex_state = 0}, @@ -793,9 +796,9 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(1), [anon_sym_true] = ACTIONS(1), [anon_sym_false] = ACTIONS(1), - [anon_sym_LPAREN] = ACTIONS(1), + [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_COMMA] = ACTIONS(1), - [anon_sym_RPAREN] = ACTIONS(1), + [anon_sym_RBRACK] = ACTIONS(1), [anon_sym_function] = ACTIONS(1), [anon_sym_LT] = ACTIONS(1), [anon_sym_GT] = ACTIONS(1), @@ -837,7 +840,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(7), [anon_sym_true] = ACTIONS(11), [anon_sym_false] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_LBRACK] = ACTIONS(13), [anon_sym_function] = ACTIONS(15), [anon_sym_table] = ACTIONS(17), [anon_sym_map] = ACTIONS(19), @@ -869,7 +872,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(33), [anon_sym_true] = ACTIONS(39), [anon_sym_false] = ACTIONS(39), - [anon_sym_LPAREN] = ACTIONS(42), + [anon_sym_LBRACK] = ACTIONS(42), [anon_sym_function] = ACTIONS(45), [anon_sym_table] = ACTIONS(48), [anon_sym_map] = ACTIONS(51), @@ -901,7 +904,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(7), [anon_sym_true] = ACTIONS(11), [anon_sym_false] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_LBRACK] = ACTIONS(13), [anon_sym_function] = ACTIONS(15), [anon_sym_table] = ACTIONS(17), [anon_sym_map] = ACTIONS(19), @@ -929,7 +932,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(7), [anon_sym_true] = ACTIONS(11), [anon_sym_false] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_LBRACK] = ACTIONS(13), [anon_sym_function] = ACTIONS(15), [anon_sym_RBRACE] = ACTIONS(62), [anon_sym_table] = ACTIONS(17), @@ -958,7 +961,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(7), [anon_sym_true] = ACTIONS(11), [anon_sym_false] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_LBRACK] = ACTIONS(13), [anon_sym_function] = ACTIONS(15), [anon_sym_RBRACE] = ACTIONS(64), [anon_sym_table] = ACTIONS(17), @@ -987,7 +990,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(69), [anon_sym_true] = ACTIONS(75), [anon_sym_false] = ACTIONS(75), - [anon_sym_LPAREN] = ACTIONS(78), + [anon_sym_LBRACK] = ACTIONS(78), [anon_sym_function] = ACTIONS(81), [anon_sym_RBRACE] = ACTIONS(84), [anon_sym_table] = ACTIONS(86), @@ -1016,7 +1019,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(7), [anon_sym_true] = ACTIONS(11), [anon_sym_false] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_LBRACK] = ACTIONS(13), [anon_sym_function] = ACTIONS(15), [anon_sym_RBRACE] = ACTIONS(98), [anon_sym_table] = ACTIONS(17), @@ -1045,7 +1048,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(7), [anon_sym_true] = ACTIONS(11), [anon_sym_false] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_LBRACK] = ACTIONS(13), [anon_sym_function] = ACTIONS(15), [anon_sym_table] = ACTIONS(17), [anon_sym_map] = ACTIONS(19), @@ -1073,7 +1076,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(7), [anon_sym_true] = ACTIONS(11), [anon_sym_false] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_LBRACK] = ACTIONS(13), [anon_sym_function] = ACTIONS(15), [anon_sym_table] = ACTIONS(17), [anon_sym_map] = ACTIONS(19), @@ -1101,7 +1104,7 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [sym_empty] = ACTIONS(7), [anon_sym_true] = ACTIONS(11), [anon_sym_false] = ACTIONS(11), - [anon_sym_LPAREN] = ACTIONS(13), + [anon_sym_LBRACK] = ACTIONS(13), [anon_sym_function] = ACTIONS(15), [anon_sym_table] = ACTIONS(17), [anon_sym_map] = ACTIONS(19), @@ -1117,7 +1120,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, sym_integer, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACK, ACTIONS(15), 1, anon_sym_function, ACTIONS(17), 1, @@ -1158,7 +1161,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, sym_integer, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACK, ACTIONS(15), 1, anon_sym_function, ACTIONS(17), 1, @@ -1194,24 +1197,24 @@ static const uint16_t ts_small_parse_table[] = { sym_table, sym_map, [112] = 2, - ACTIONS(100), 11, + ACTIONS(100), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(102), 13, + ACTIONS(102), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1221,24 +1224,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [141] = 2, - ACTIONS(104), 11, + ACTIONS(104), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(106), 13, + ACTIONS(106), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1248,24 +1251,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [170] = 2, - ACTIONS(108), 11, + ACTIONS(108), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(110), 13, + ACTIONS(110), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1275,24 +1278,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [199] = 2, - ACTIONS(112), 11, + ACTIONS(112), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(114), 13, + ACTIONS(114), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1302,24 +1305,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [228] = 2, - ACTIONS(116), 11, + ACTIONS(116), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(118), 13, + ACTIONS(118), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1329,24 +1332,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [257] = 2, - ACTIONS(120), 11, + ACTIONS(120), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(122), 13, + ACTIONS(122), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1356,24 +1359,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [286] = 2, - ACTIONS(124), 11, + ACTIONS(124), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(126), 13, + ACTIONS(126), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1383,24 +1386,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [315] = 2, - ACTIONS(128), 11, + ACTIONS(128), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(130), 13, + ACTIONS(130), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1410,24 +1413,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [344] = 2, - ACTIONS(132), 11, + ACTIONS(132), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(134), 13, + ACTIONS(134), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1437,24 +1440,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [373] = 2, - ACTIONS(136), 11, + ACTIONS(136), 12, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_COMMA, - anon_sym_RPAREN, + anon_sym_RBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(138), 13, + ACTIONS(138), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1466,22 +1469,22 @@ static const uint16_t ts_small_parse_table[] = { [402] = 3, STATE(26), 1, sym_operator, - ACTIONS(140), 9, + ACTIONS(140), 10, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(142), 13, + ACTIONS(142), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1496,7 +1499,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, sym_integer, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACK, ACTIONS(15), 1, anon_sym_function, ACTIONS(17), 1, @@ -1530,22 +1533,22 @@ static const uint16_t ts_small_parse_table[] = { [482] = 3, STATE(26), 1, sym_operator, - ACTIONS(144), 9, + ACTIONS(144), 10, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(146), 13, + ACTIONS(146), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1560,7 +1563,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, sym_integer, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACK, ACTIONS(15), 1, anon_sym_function, ACTIONS(17), 1, @@ -1592,22 +1595,22 @@ static const uint16_t ts_small_parse_table[] = { sym_table, sym_map, [562] = 2, - ACTIONS(148), 9, + ACTIONS(148), 10, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(150), 13, + ACTIONS(150), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1617,22 +1620,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [589] = 2, - ACTIONS(152), 9, + ACTIONS(152), 10, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(154), 13, + ACTIONS(154), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1644,22 +1647,22 @@ static const uint16_t ts_small_parse_table[] = { [616] = 3, ACTIONS(160), 1, anon_sym_else, - ACTIONS(156), 9, + ACTIONS(156), 10, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(158), 12, + ACTIONS(158), 11, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1668,22 +1671,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_then, anon_sym_output, [645] = 2, - ACTIONS(162), 9, + ACTIONS(162), 10, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(164), 13, + ACTIONS(164), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1693,22 +1696,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_else, anon_sym_output, [672] = 2, - ACTIONS(166), 9, + ACTIONS(166), 10, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_RBRACE, anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(168), 13, + ACTIONS(168), 12, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1726,19 +1729,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PLUS, anon_sym_DASH, anon_sym_EQ_EQ, - ACTIONS(144), 6, + ACTIONS(144), 7, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, + anon_sym_LBRACK, anon_sym_RBRACE, - ACTIONS(146), 10, + ACTIONS(146), 9, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1748,9 +1751,9 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(177), 1, sym_integer, ACTIONS(183), 1, - anon_sym_LPAREN, + anon_sym_LBRACK, ACTIONS(186), 1, - anon_sym_RPAREN, + anon_sym_RBRACK, ACTIONS(188), 1, anon_sym_function, ACTIONS(191), 1, @@ -1778,9 +1781,9 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, sym_integer, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACK, ACTIONS(199), 1, - anon_sym_RPAREN, + anon_sym_RBRACK, ACTIONS(201), 1, anon_sym_function, ACTIONS(203), 1, @@ -1808,7 +1811,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, sym_integer, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACK, ACTIONS(201), 1, anon_sym_function, ACTIONS(203), 1, @@ -1836,7 +1839,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(9), 1, sym_integer, ACTIONS(13), 1, - anon_sym_LPAREN, + anon_sym_LBRACK, ACTIONS(201), 1, anon_sym_function, ACTIONS(203), 1, @@ -1859,84 +1862,84 @@ static const uint16_t ts_small_parse_table[] = { sym_table, sym_map, [886] = 2, - ACTIONS(207), 5, + ACTIONS(207), 6, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, - ACTIONS(209), 10, + anon_sym_LBRACK, + ACTIONS(209), 9, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, anon_sym_if, anon_sym_output, [906] = 2, - ACTIONS(211), 5, + ACTIONS(211), 6, ts_builtin_sym_end, anon_sym_POUND, sym_float, sym_string, sym_empty, - ACTIONS(213), 10, + anon_sym_LBRACK, + ACTIONS(213), 9, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, anon_sym_if, anon_sym_output, [926] = 2, - ACTIONS(217), 3, + ACTIONS(217), 4, sym_float, sym_string, sym_empty, - ACTIONS(215), 10, + anon_sym_LBRACK, + ACTIONS(215), 9, sym_identifier, sym_integer, anon_sym_true, anon_sym_false, - anon_sym_LPAREN, anon_sym_function, anon_sym_table, anon_sym_map, anon_sym_if, anon_sym_output, [944] = 3, + ACTIONS(221), 1, + sym_integer, ACTIONS(223), 1, anon_sym_COMMA, - ACTIONS(221), 2, - sym_integer, - anon_sym_LPAREN, - ACTIONS(219), 9, + ACTIONS(219), 10, sym_float, sym_string, sym_empty, anon_sym_true, anon_sym_false, - anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_function, anon_sym_table, anon_sym_map, [963] = 2, - ACTIONS(225), 2, + ACTIONS(225), 1, sym_integer, - anon_sym_LPAREN, - ACTIONS(186), 9, + ACTIONS(186), 10, sym_float, sym_string, sym_empty, anon_sym_true, anon_sym_false, - anon_sym_RPAREN, + anon_sym_LBRACK, + anon_sym_RBRACK, anon_sym_function, anon_sym_table, anon_sym_map, @@ -1952,125 +1955,125 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_DASH, anon_sym_EQ_EQ, [994] = 3, + ACTIONS(13), 1, + anon_sym_LBRACK, ACTIONS(229), 1, - anon_sym_LPAREN, - ACTIONS(231), 1, anon_sym_RBRACE, STATE(44), 2, sym_list, aux_sym_table_repeat1, [1005] = 3, - ACTIONS(233), 1, - anon_sym_LPAREN, - ACTIONS(236), 1, + ACTIONS(231), 1, + anon_sym_LBRACK, + ACTIONS(234), 1, anon_sym_RBRACE, STATE(44), 2, sym_list, aux_sym_table_repeat1, [1016] = 3, - ACTIONS(229), 1, - anon_sym_LPAREN, - ACTIONS(238), 1, + ACTIONS(13), 1, + anon_sym_LBRACK, + ACTIONS(236), 1, anon_sym_RBRACE, STATE(43), 2, sym_list, aux_sym_table_repeat1, [1027] = 3, - ACTIONS(240), 1, + ACTIONS(238), 1, sym_identifier, - ACTIONS(243), 1, + ACTIONS(241), 1, anon_sym_GT, STATE(46), 1, aux_sym_function_repeat1, [1037] = 2, - ACTIONS(247), 1, + ACTIONS(245), 1, anon_sym_COMMA, - ACTIONS(245), 2, + ACTIONS(243), 2, sym_identifier, anon_sym_GT, [1045] = 3, - ACTIONS(249), 1, + ACTIONS(247), 1, sym_identifier, - ACTIONS(251), 1, + ACTIONS(249), 1, anon_sym_GT, STATE(46), 1, aux_sym_function_repeat1, [1055] = 3, - ACTIONS(253), 1, + ACTIONS(251), 1, sym_identifier, - ACTIONS(255), 1, + ACTIONS(253), 1, anon_sym_RBRACE, STATE(50), 1, aux_sym_map_repeat1, [1065] = 3, - ACTIONS(257), 1, + ACTIONS(255), 1, sym_identifier, - ACTIONS(260), 1, + ACTIONS(258), 1, anon_sym_RBRACE, STATE(50), 1, aux_sym_map_repeat1, [1075] = 3, - ACTIONS(249), 1, + ACTIONS(247), 1, sym_identifier, - ACTIONS(262), 1, + ACTIONS(260), 1, anon_sym_GT, STATE(46), 1, aux_sym_function_repeat1, [1085] = 3, - ACTIONS(253), 1, + ACTIONS(251), 1, sym_identifier, - ACTIONS(264), 1, + ACTIONS(262), 1, anon_sym_RBRACE, STATE(49), 1, aux_sym_map_repeat1, [1095] = 3, - ACTIONS(249), 1, + ACTIONS(247), 1, sym_identifier, - ACTIONS(266), 1, + ACTIONS(264), 1, anon_sym_GT, STATE(48), 1, aux_sym_function_repeat1, [1105] = 2, - ACTIONS(268), 1, + ACTIONS(266), 1, anon_sym_LT, - ACTIONS(270), 1, + ACTIONS(268), 1, anon_sym_LBRACE, [1112] = 2, - ACTIONS(249), 1, + ACTIONS(247), 1, sym_identifier, STATE(51), 1, aux_sym_function_repeat1, [1119] = 1, - ACTIONS(272), 2, + ACTIONS(270), 2, sym_identifier, anon_sym_RBRACE, [1124] = 1, - ACTIONS(243), 2, + ACTIONS(241), 2, sym_identifier, anon_sym_GT, [1129] = 1, - ACTIONS(274), 1, + ACTIONS(272), 1, anon_sym_LBRACE, [1133] = 1, - ACTIONS(276), 1, + ACTIONS(274), 1, anon_sym_EQ, [1137] = 1, - ACTIONS(278), 1, + ACTIONS(276), 1, aux_sym_comment_token1, [1141] = 1, - ACTIONS(280), 1, + ACTIONS(278), 1, ts_builtin_sym_end, [1145] = 1, - ACTIONS(282), 1, + ACTIONS(280), 1, anon_sym_LBRACE, [1149] = 1, - ACTIONS(284), 1, + ACTIONS(282), 1, anon_sym_LT, [1153] = 1, - ACTIONS(286), 1, + ACTIONS(284), 1, anon_sym_LBRACE, [1157] = 1, - ACTIONS(288), 1, + ACTIONS(286), 1, anon_sym_LBRACE, }; @@ -2140,7 +2143,7 @@ static const TSParseActionEntry ts_parse_actions[] = { [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(17), [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), @@ -2152,7 +2155,7 @@ static const TSParseActionEntry ts_parse_actions[] = { [33] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(17), [36] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(17), [39] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(14), - [42] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(35), + [42] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(35), [45] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(54), [48] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(63), [51] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_root_repeat1, 2), SHIFT_REPEAT(62), @@ -2165,7 +2168,7 @@ static const TSParseActionEntry ts_parse_actions[] = { [69] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat2, 2), SHIFT_REPEAT(17), [72] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_repeat2, 2), SHIFT_REPEAT(17), [75] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_repeat2, 2), SHIFT_REPEAT(14), - [78] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_repeat2, 2), SHIFT_REPEAT(35), + [78] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat2, 2), SHIFT_REPEAT(35), [81] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_repeat2, 2), SHIFT_REPEAT(54), [84] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat2, 2), [86] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_function_repeat2, 2), SHIFT_REPEAT(63), @@ -2213,7 +2216,7 @@ static const TSParseActionEntry ts_parse_actions[] = { [174] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(17), [177] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(17), [180] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(14), - [183] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(35), + [183] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(35), [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), [188] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(54), [191] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_repeat1, 2), SHIFT_REPEAT(63), @@ -2234,35 +2237,34 @@ static const TSParseActionEntry ts_parse_actions[] = { [223] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), [225] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_list_repeat1, 2), [227] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [233] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_table_repeat1, 2), SHIFT_REPEAT(35), - [236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_table_repeat1, 2), - [238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [240] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), SHIFT_REPEAT(47), - [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), - [245] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 1), - [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [257] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), SHIFT_REPEAT(59), - [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), - [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), - [268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 3), - [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [280] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [288] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [231] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_table_repeat1, 2), SHIFT_REPEAT(35), + [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_table_repeat1, 2), + [236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [238] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), SHIFT_REPEAT(47), + [241] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 2), + [243] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_repeat1, 1), + [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [255] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), SHIFT_REPEAT(59), + [258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 2), + [260] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(65), + [266] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [268] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_map_repeat1, 3), + [272] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [274] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [276] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [278] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [282] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), }; #ifdef __cplusplus