From 3cf701dbb1ebc74df808d1666af6056437259247 Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Wed, 1 Jun 2022 20:37:24 +0200 Subject: [PATCH] Add top-level declarations --- grammar.js | 1 + src/grammar.json | 12 + src/node-types.json | 8 +- src/parser.c | 2852 +++++++++++++++++----------------- test/corpus/declarations.txt | 34 + 5 files changed, 1489 insertions(+), 1418 deletions(-) create mode 100644 test/corpus/declarations.txt diff --git a/grammar.js b/grammar.js index 011a849..8523868 100644 --- a/grammar.js +++ b/grammar.js @@ -28,6 +28,7 @@ module.exports = grammar({ rules: { source_file: ($) => choice( $._expr, + optional($._declaration_chunks), ), // Expressions {{{ diff --git a/src/grammar.json b/src/grammar.json index 8195394..041f9bb 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -8,6 +8,18 @@ { "type": "SYMBOL", "name": "_expr" + }, + { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_declaration_chunks" + }, + { + "type": "BLANK" + } + ] } ] }, diff --git a/src/node-types.json b/src/node-types.json index b673482..4484c26 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -1475,8 +1475,8 @@ "named": true, "fields": {}, "children": { - "multiple": false, - "required": true, + "multiple": true, + "required": false, "types": [ { "type": "array_expression", @@ -1514,6 +1514,10 @@ "type": "if_expression", "named": true }, + { + "type": "import_declaration", + "named": true + }, { "type": "integer_literal", "named": true diff --git a/src/parser.c b/src/parser.c index e38e9af..e2fcce6 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,7 +6,7 @@ #endif #define LANGUAGE_VERSION 13 -#define STATE_COUNT 101 +#define STATE_COUNT 102 #define LARGE_STATE_COUNT 2 #define SYMBOL_COUNT 66 #define ALIAS_COUNT 0 @@ -570,11 +570,11 @@ static const TSFieldMapEntry ts_field_map_entries[] = { {field_expression, 1}, {field_operator, 0}, [2] = - {field_function, 0}, - [3] = - {field_type, 0}, - [4] = {field_file, 1}, + [3] = + {field_function, 0}, + [4] = + {field_type, 0}, [5] = {field_left, 0}, {field_operator, 1}, @@ -1129,44 +1129,45 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [60] = {.lex_state = 9}, [61] = {.lex_state = 9}, [62] = {.lex_state = 0}, - [63] = {.lex_state = 0}, + [63] = {.lex_state = 9}, [64] = {.lex_state = 0}, - [65] = {.lex_state = 9}, + [65] = {.lex_state = 0}, [66] = {.lex_state = 9}, [67] = {.lex_state = 0}, [68] = {.lex_state = 0}, [69] = {.lex_state = 9}, - [70] = {.lex_state = 9}, - [71] = {.lex_state = 0}, + [70] = {.lex_state = 0}, + [71] = {.lex_state = 9}, [72] = {.lex_state = 0}, - [73] = {.lex_state = 0}, + [73] = {.lex_state = 9}, [74] = {.lex_state = 9}, - [75] = {.lex_state = 9}, + [75] = {.lex_state = 0}, [76] = {.lex_state = 9}, [77] = {.lex_state = 9}, [78] = {.lex_state = 9}, - [79] = {.lex_state = 1}, - [80] = {.lex_state = 9}, - [81] = {.lex_state = 1}, + [79] = {.lex_state = 9}, + [80] = {.lex_state = 1}, + [81] = {.lex_state = 9}, [82] = {.lex_state = 1}, - [83] = {.lex_state = 0}, + [83] = {.lex_state = 1}, [84] = {.lex_state = 0}, - [85] = {.lex_state = 9}, - [86] = {.lex_state = 0}, - [87] = {.lex_state = 0}, - [88] = {.lex_state = 9}, - [89] = {.lex_state = 0}, - [90] = {.lex_state = 9}, - [91] = {.lex_state = 9}, - [92] = {.lex_state = 0}, - [93] = {.lex_state = 9}, - [94] = {.lex_state = 9}, - [95] = {.lex_state = 0}, - [96] = {.lex_state = 0}, - [97] = {.lex_state = 0}, - [98] = {.lex_state = 9}, - [99] = {.lex_state = 9}, + [85] = {.lex_state = 0}, + [86] = {.lex_state = 9}, + [87] = {.lex_state = 9}, + [88] = {.lex_state = 0}, + [89] = {.lex_state = 9}, + [90] = {.lex_state = 0}, + [91] = {.lex_state = 0}, + [92] = {.lex_state = 9}, + [93] = {.lex_state = 0}, + [94] = {.lex_state = 0}, + [95] = {.lex_state = 9}, + [96] = {.lex_state = 9}, + [97] = {.lex_state = 9}, + [98] = {.lex_state = 0}, + [99] = {.lex_state = 0}, [100] = {.lex_state = 0}, + [101] = {.lex_state = 9}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -1214,62 +1215,67 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_import] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(97), - [sym__expr] = STATE(73), - [sym_string_literal] = STATE(73), - [sym__lvalue] = STATE(31), - [sym_record_value] = STATE(31), - [sym_array_value] = STATE(31), - [sym_function_call] = STATE(73), - [sym_unary_expression] = STATE(73), - [sym_binary_expression] = STATE(73), - [sym_sequence_expression] = STATE(73), - [sym_array_expression] = STATE(73), - [sym_record_expression] = STATE(73), - [sym_assignment_expression] = STATE(73), - [sym_if_expression] = STATE(73), - [sym_while_expression] = STATE(73), - [sym_for_expression] = STATE(73), - [sym_let_expression] = STATE(73), - [sym_identifier] = ACTIONS(3), - [sym_nil_literal] = ACTIONS(5), - [sym_integer_literal] = ACTIONS(5), - [anon_sym_DQUOTE] = ACTIONS(7), - [anon_sym_LPAREN] = ACTIONS(9), - [anon_sym_DASH] = ACTIONS(11), - [anon_sym_if] = ACTIONS(13), - [anon_sym_while] = ACTIONS(15), - [anon_sym_for] = ACTIONS(17), - [sym_break_expression] = ACTIONS(5), - [anon_sym_let] = ACTIONS(19), + [sym_source_file] = STATE(99), + [sym__expr] = STATE(70), + [sym_string_literal] = STATE(70), + [sym__lvalue] = STATE(30), + [sym_record_value] = STATE(30), + [sym_array_value] = STATE(30), + [sym_function_call] = STATE(70), + [sym_unary_expression] = STATE(70), + [sym_binary_expression] = STATE(70), + [sym_sequence_expression] = STATE(70), + [sym_array_expression] = STATE(70), + [sym_record_expression] = STATE(70), + [sym_assignment_expression] = STATE(70), + [sym_if_expression] = STATE(70), + [sym_while_expression] = STATE(70), + [sym_for_expression] = STATE(70), + [sym_let_expression] = STATE(70), + [aux_sym__declaration_chunks] = STATE(79), + [sym__declaration_chunk] = STATE(79), + [sym_import_declaration] = STATE(79), + [ts_builtin_sym_end] = ACTIONS(3), + [sym_identifier] = ACTIONS(5), + [sym_nil_literal] = ACTIONS(7), + [sym_integer_literal] = ACTIONS(7), + [anon_sym_DQUOTE] = ACTIONS(9), + [anon_sym_LPAREN] = ACTIONS(11), + [anon_sym_DASH] = ACTIONS(13), + [anon_sym_if] = ACTIONS(15), + [anon_sym_while] = ACTIONS(17), + [anon_sym_for] = ACTIONS(19), + [sym_break_expression] = ACTIONS(7), + [anon_sym_let] = ACTIONS(21), + [anon_sym_import] = ACTIONS(23), }, }; static const uint16_t ts_small_parse_table[] = { [0] = 12, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(23), 1, + ACTIONS(27), 1, anon_sym_end, - ACTIONS(21), 3, + ACTIONS(25), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -1288,33 +1294,33 @@ static const uint16_t ts_small_parse_table[] = { sym_for_expression, sym_let_expression, [53] = 12, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(27), 1, + ACTIONS(31), 1, anon_sym_end, - ACTIONS(25), 3, + ACTIONS(29), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, - STATE(66), 13, + STATE(63), 13, sym__expr, sym_string_literal, sym_function_call, @@ -1329,16 +1335,16 @@ static const uint16_t ts_small_parse_table[] = { sym_for_expression, sym_let_expression, [106] = 5, - ACTIONS(31), 1, + ACTIONS(35), 1, anon_sym_LBRACK, - ACTIONS(34), 1, - anon_sym_LPAREN, ACTIONS(38), 1, + anon_sym_LPAREN, + ACTIONS(42), 1, anon_sym_LBRACE, - ACTIONS(36), 2, + ACTIONS(40), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(29), 23, + ACTIONS(33), 23, ts_builtin_sym_end, anon_sym_DOT, anon_sym_RBRACK, @@ -1363,62 +1369,21 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_to, anon_sym_end, [145] = 12, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(42), 1, - anon_sym_RPAREN, - ACTIONS(40), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(63), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [198] = 12, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, ACTIONS(46), 1, anon_sym_RPAREN, @@ -1426,7 +1391,7 @@ static const uint16_t ts_small_parse_table[] = { sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -1444,32 +1409,73 @@ static const uint16_t ts_small_parse_table[] = { sym_while_expression, sym_for_expression, sym_let_expression, - [251] = 11, - ACTIONS(3), 1, + [198] = 12, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, + ACTIONS(50), 1, + anon_sym_RPAREN, ACTIONS(48), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, - STATE(55), 13, + STATE(62), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [251] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(52), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(42), 13, sym__expr, sym_string_literal, sym_function_call, @@ -1484,31 +1490,31 @@ static const uint16_t ts_small_parse_table[] = { sym_for_expression, sym_let_expression, [301] = 11, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(50), 3, + ACTIONS(54), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, - STATE(69), 13, + STATE(66), 13, sym__expr, sym_string_literal, sym_function_call, @@ -1523,66 +1529,27 @@ static const uint16_t ts_small_parse_table[] = { sym_for_expression, sym_let_expression, [351] = 11, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(52), 3, + ACTIONS(56), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(74), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [401] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(54), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -1600,106 +1567,28 @@ static const uint16_t ts_small_parse_table[] = { sym_while_expression, sym_for_expression, sym_let_expression, - [451] = 11, - ACTIONS(3), 1, + [401] = 11, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(56), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(49), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [501] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, ACTIONS(58), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(68), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [551] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(60), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -1717,32 +1606,32 @@ static const uint16_t ts_small_parse_table[] = { sym_while_expression, sym_for_expression, sym_let_expression, - [601] = 11, - ACTIONS(3), 1, + [451] = 11, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(62), 3, + ACTIONS(60), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, - STATE(75), 13, + STATE(57), 13, sym__expr, sym_string_literal, sym_function_call, @@ -1756,28 +1645,106 @@ static const uint16_t ts_small_parse_table[] = { sym_while_expression, sym_for_expression, sym_let_expression, - [651] = 11, - ACTIONS(3), 1, + [501] = 11, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(62), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(69), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [551] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, ACTIONS(64), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(56), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [601] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(66), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -1795,32 +1762,71 @@ static const uint16_t ts_small_parse_table[] = { sym_while_expression, sym_for_expression, sym_let_expression, - [701] = 11, - ACTIONS(3), 1, + [651] = 11, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(66), 3, + ACTIONS(68), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, - STATE(44), 13, + STATE(55), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [701] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(70), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(68), 13, sym__expr, sym_string_literal, sym_function_call, @@ -1835,27 +1841,27 @@ static const uint16_t ts_small_parse_table[] = { sym_for_expression, sym_let_expression, [751] = 11, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(68), 3, + ACTIONS(72), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -1874,27 +1880,66 @@ static const uint16_t ts_small_parse_table[] = { sym_for_expression, sym_let_expression, [801] = 11, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(70), 3, + ACTIONS(74), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(73), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [851] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(76), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -1912,71 +1957,32 @@ static const uint16_t ts_small_parse_table[] = { sym_while_expression, sym_for_expression, sym_let_expression, - [851] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(72), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(58), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, [901] = 11, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(74), 3, + ACTIONS(78), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, - STATE(71), 13, + STATE(74), 13, sym__expr, sym_string_literal, sym_function_call, @@ -1991,222 +1997,27 @@ static const uint16_t ts_small_parse_table[] = { sym_for_expression, sym_let_expression, [951] = 11, - ACTIONS(3), 1, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(76), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(47), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [1001] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(78), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(56), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [1051] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, - ACTIONS(9), 1, anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, ACTIONS(80), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(62), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [1101] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(82), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(70), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [1151] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(84), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(34), 13, - sym__expr, - sym_string_literal, - sym_function_call, - sym_unary_expression, - sym_binary_expression, - sym_sequence_expression, - sym_array_expression, - sym_record_expression, - sym_assignment_expression, - sym_if_expression, - sym_while_expression, - sym_for_expression, - sym_let_expression, - [1201] = 11, - ACTIONS(3), 1, - sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, - ACTIONS(9), 1, - anon_sym_LPAREN, - ACTIONS(11), 1, - anon_sym_DASH, - ACTIONS(13), 1, - anon_sym_if, - ACTIONS(15), 1, - anon_sym_while, - ACTIONS(17), 1, - anon_sym_for, - ACTIONS(19), 1, - anon_sym_let, - ACTIONS(86), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(31), 3, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -2224,28 +2035,106 @@ static const uint16_t ts_small_parse_table[] = { sym_while_expression, sym_for_expression, sym_let_expression, - [1251] = 11, - ACTIONS(3), 1, + [1001] = 11, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, - ACTIONS(88), 3, + ACTIONS(82), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(59), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [1051] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(84), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(71), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [1101] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(86), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -2263,28 +2152,145 @@ static const uint16_t ts_small_parse_table[] = { sym_while_expression, sym_for_expression, sym_let_expression, - [1301] = 11, - ACTIONS(3), 1, + [1151] = 11, + ACTIONS(5), 1, sym_identifier, - ACTIONS(7), 1, - anon_sym_DQUOTE, ACTIONS(9), 1, - anon_sym_LPAREN, + anon_sym_DQUOTE, ACTIONS(11), 1, - anon_sym_DASH, + anon_sym_LPAREN, ACTIONS(13), 1, - anon_sym_if, + anon_sym_DASH, ACTIONS(15), 1, - anon_sym_while, + anon_sym_if, ACTIONS(17), 1, - anon_sym_for, + anon_sym_while, ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(88), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(75), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [1201] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, anon_sym_let, ACTIONS(90), 3, sym_nil_literal, sym_integer_literal, sym_break_expression, - STATE(31), 3, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(38), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [1251] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(92), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, + sym__lvalue, + sym_record_value, + sym_array_value, + STATE(49), 13, + sym__expr, + sym_string_literal, + sym_function_call, + sym_unary_expression, + sym_binary_expression, + sym_sequence_expression, + sym_array_expression, + sym_record_expression, + sym_assignment_expression, + sym_if_expression, + sym_while_expression, + sym_for_expression, + sym_let_expression, + [1301] = 11, + ACTIONS(5), 1, + sym_identifier, + ACTIONS(9), 1, + anon_sym_DQUOTE, + ACTIONS(11), 1, + anon_sym_LPAREN, + ACTIONS(13), 1, + anon_sym_DASH, + ACTIONS(15), 1, + anon_sym_if, + ACTIONS(17), 1, + anon_sym_while, + ACTIONS(19), 1, + anon_sym_for, + ACTIONS(21), 1, + anon_sym_let, + ACTIONS(94), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(30), 3, sym__lvalue, sym_record_value, sym_array_value, @@ -2303,35 +2309,6 @@ static const uint16_t ts_small_parse_table[] = { sym_for_expression, sym_let_expression, [1351] = 2, - ACTIONS(94), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(92), 24, - ts_builtin_sym_end, - anon_sym_DOT, - anon_sym_LBRACK, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - anon_sym_AMP, - anon_sym_PIPE, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_COLON_EQ, - anon_sym_then, - anon_sym_else, - anon_sym_do, - anon_sym_to, - anon_sym_end, - [1382] = 2, ACTIONS(98), 2, anon_sym_LT, anon_sym_GT, @@ -2360,7 +2337,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1413] = 5, + [1382] = 5, ACTIONS(102), 1, anon_sym_DOT, ACTIONS(104), 1, @@ -2392,12 +2369,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1450] = 2, + [1419] = 2, ACTIONS(112), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(110), 23, + ACTIONS(110), 24, ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, @@ -2413,14 +2392,13 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_PIPE, anon_sym_SEMI, anon_sym_RBRACE, + anon_sym_COLON_EQ, anon_sym_then, anon_sym_else, anon_sym_do, anon_sym_to, - anon_sym_in, anon_sym_end, - anon_sym_import, - [1480] = 2, + [1450] = 2, ACTIONS(116), 2, anon_sym_LT, anon_sym_GT, @@ -2448,73 +2426,39 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_in, anon_sym_end, anon_sym_import, - [1510] = 7, - ACTIONS(128), 1, - anon_sym_AMP, - ACTIONS(130), 1, - anon_sym_PIPE, + [1480] = 2, ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(118), 11, + ACTIONS(118), 23, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_then, - anon_sym_else, - anon_sym_do, - anon_sym_to, - anon_sym_end, - [1548] = 7, - ACTIONS(128), 1, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, anon_sym_AMP, - ACTIONS(130), 1, anon_sym_PIPE, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(132), 11, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_then, anon_sym_else, anon_sym_do, anon_sym_to, + anon_sym_in, anon_sym_end, - [1586] = 2, - ACTIONS(136), 2, + anon_sym_import, + [1510] = 2, + ACTIONS(124), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(134), 21, + ACTIONS(122), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2536,11 +2480,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1614] = 2, - ACTIONS(140), 2, + [1538] = 7, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(138), 1, + anon_sym_PIPE, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(138), 21, + ACTIONS(132), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(126), 11, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_do, + anon_sym_to, + anon_sym_end, + [1576] = 2, + ACTIONS(142), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(140), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2562,11 +2537,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1642] = 2, - ACTIONS(144), 2, + [1604] = 2, + ACTIONS(146), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(142), 21, + ACTIONS(144), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2588,11 +2563,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, + [1632] = 7, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(138), 1, + anon_sym_PIPE, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(132), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(148), 11, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_do, + anon_sym_to, + anon_sym_end, [1670] = 2, - ACTIONS(148), 2, + ACTIONS(152), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(146), 21, + ACTIONS(150), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2615,25 +2621,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_to, anon_sym_end, [1698] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(120), 2, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, - ACTIONS(150), 11, + ACTIONS(154), 11, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2646,32 +2652,6 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_to, anon_sym_end, [1736] = 2, - ACTIONS(154), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(152), 21, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_DASH, - anon_sym_STAR, - anon_sym_SLASH, - anon_sym_PLUS, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - anon_sym_AMP, - anon_sym_PIPE, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_then, - anon_sym_else, - anon_sym_do, - anon_sym_to, - anon_sym_end, - [1764] = 2, ACTIONS(158), 2, anon_sym_LT, anon_sym_GT, @@ -2697,11 +2677,43 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1792] = 2, - ACTIONS(162), 2, + [1764] = 8, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(138), 1, + anon_sym_PIPE, + ACTIONS(162), 1, + anon_sym_else, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(160), 21, + ACTIONS(132), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(160), 10, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_do, + anon_sym_to, + anon_sym_end, + [1804] = 2, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2723,39 +2735,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1820] = 8, - ACTIONS(128), 1, - anon_sym_AMP, - ACTIONS(130), 1, - anon_sym_PIPE, - ACTIONS(166), 1, - anon_sym_else, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(164), 10, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_then, - anon_sym_do, - anon_sym_to, - anon_sym_end, - [1860] = 2, + [1832] = 2, ACTIONS(170), 2, anon_sym_LT, anon_sym_GT, @@ -2781,7 +2761,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1888] = 2, + [1860] = 2, ACTIONS(174), 2, anon_sym_LT, anon_sym_GT, @@ -2807,42 +2787,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1916] = 7, - ACTIONS(128), 1, - anon_sym_AMP, - ACTIONS(130), 1, - anon_sym_PIPE, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, + [1888] = 2, + ACTIONS(178), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(176), 11, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_then, - anon_sym_else, - anon_sym_do, - anon_sym_to, - anon_sym_end, - [1954] = 2, - ACTIONS(180), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(178), 21, + ACTIONS(176), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2864,30 +2813,25 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [1982] = 7, - ACTIONS(128), 1, - anon_sym_AMP, - ACTIONS(130), 1, - anon_sym_PIPE, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, + [1916] = 2, + ACTIONS(182), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(182), 11, + ACTIONS(180), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + anon_sym_AMP, + anon_sym_PIPE, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_then, @@ -2895,7 +2839,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2020] = 2, + [1944] = 2, ACTIONS(186), 2, anon_sym_LT, anon_sym_GT, @@ -2921,11 +2865,42 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2048] = 2, - ACTIONS(190), 2, + [1972] = 7, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(138), 1, + anon_sym_PIPE, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(188), 21, + ACTIONS(132), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(188), 11, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_do, + anon_sym_to, + anon_sym_end, + [2010] = 2, + ACTIONS(192), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(190), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2947,38 +2922,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2076] = 3, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(194), 2, + [2038] = 2, + ACTIONS(196), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(192), 19, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_DASH, - anon_sym_PLUS, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - anon_sym_AMP, - anon_sym_PIPE, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_then, - anon_sym_else, - anon_sym_do, - anon_sym_to, - anon_sym_end, - [2106] = 2, - ACTIONS(194), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(192), 21, + ACTIONS(194), 21, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -3000,27 +2948,30 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2134] = 4, - ACTIONS(120), 2, + [2066] = 7, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(138), 1, + anon_sym_PIPE, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(194), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(192), 17, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, - anon_sym_AMP, - anon_sym_PIPE, + ACTIONS(198), 11, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, anon_sym_SEMI, anon_sym_RBRACE, anon_sym_then, @@ -3028,77 +2979,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2166] = 5, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, + [2104] = 3, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(202), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(192), 13, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_AMP, - anon_sym_PIPE, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_then, - anon_sym_else, - anon_sym_do, - anon_sym_to, - anon_sym_end, - [2200] = 6, - ACTIONS(128), 1, - anon_sym_AMP, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(192), 12, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, - anon_sym_PIPE, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_then, - anon_sym_else, - anon_sym_do, - anon_sym_to, - anon_sym_end, - [2236] = 2, - ACTIONS(198), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(196), 21, + ACTIONS(200), 19, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, anon_sym_DASH, - anon_sym_STAR, - anon_sym_SLASH, anon_sym_PLUS, anon_sym_GT_EQ, anon_sym_LT_EQ, @@ -3113,7 +3006,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2264] = 2, + [2134] = 2, ACTIONS(202), 2, anon_sym_LT, anon_sym_GT, @@ -3139,7 +3032,94 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2292] = 2, + [2162] = 4, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(202), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(200), 17, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_do, + anon_sym_to, + anon_sym_end, + [2194] = 5, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(132), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(200), 13, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_do, + anon_sym_to, + anon_sym_end, + [2228] = 6, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(132), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(200), 12, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_PIPE, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_do, + anon_sym_to, + anon_sym_end, + [2264] = 2, ACTIONS(206), 2, anon_sym_LT, anon_sym_GT, @@ -3165,7 +3145,7 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2320] = 2, + [2292] = 2, ACTIONS(210), 2, anon_sym_LT, anon_sym_GT, @@ -3191,491 +3171,528 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_do, anon_sym_to, anon_sym_end, - [2348] = 9, - ACTIONS(128), 1, - anon_sym_AMP, - ACTIONS(130), 1, - anon_sym_PIPE, - ACTIONS(212), 1, - anon_sym_SEMI, - ACTIONS(214), 1, - anon_sym_end, - STATE(85), 1, - aux_sym_sequence_expression_repeat1, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, + [2320] = 2, + ACTIONS(214), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(212), 21, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_DASH, + anon_sym_STAR, + anon_sym_SLASH, + anon_sym_PLUS, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + anon_sym_AMP, + anon_sym_PIPE, + anon_sym_SEMI, + anon_sym_RBRACE, + anon_sym_then, + anon_sym_else, + anon_sym_do, + anon_sym_to, + anon_sym_end, + [2348] = 9, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(138), 1, + anon_sym_PIPE, + ACTIONS(216), 1, + anon_sym_SEMI, + ACTIONS(218), 1, + anon_sym_end, + STATE(86), 1, + aux_sym_sequence_expression_repeat1, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2382] = 9, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(216), 1, + ACTIONS(220), 1, anon_sym_COMMA, - ACTIONS(218), 1, - anon_sym_RBRACE, - STATE(89), 1, - aux_sym_record_expression_repeat1, - ACTIONS(120), 2, + ACTIONS(222), 1, + anon_sym_RPAREN, + STATE(91), 1, + aux_sym_function_call_repeat1, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2416] = 9, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(212), 1, + ACTIONS(216), 1, anon_sym_SEMI, - ACTIONS(220), 1, - anon_sym_RPAREN, - STATE(84), 1, + ACTIONS(224), 1, + anon_sym_end, + STATE(89), 1, aux_sym_sequence_expression_repeat1, - ACTIONS(120), 2, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2450] = 9, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(222), 1, - anon_sym_COMMA, - ACTIONS(224), 1, - anon_sym_RPAREN, - STATE(83), 1, - aux_sym_function_call_repeat1, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [2484] = 7, - ACTIONS(128), 1, - anon_sym_AMP, - ACTIONS(130), 1, - anon_sym_PIPE, - ACTIONS(120), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(122), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(126), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(226), 3, - anon_sym_RPAREN, + ACTIONS(216), 1, anon_sym_SEMI, - anon_sym_end, - ACTIONS(124), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [2514] = 9, - ACTIONS(128), 1, - anon_sym_AMP, - ACTIONS(130), 1, - anon_sym_PIPE, - ACTIONS(212), 1, - anon_sym_SEMI, - ACTIONS(228), 1, - anon_sym_end, - STATE(88), 1, + ACTIONS(226), 1, + anon_sym_RPAREN, + STATE(85), 1, aux_sym_sequence_expression_repeat1, - ACTIONS(120), 2, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [2484] = 9, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(138), 1, + anon_sym_PIPE, + ACTIONS(228), 1, + anon_sym_COMMA, + ACTIONS(230), 1, + anon_sym_RBRACE, + STATE(84), 1, + aux_sym_record_expression_repeat1, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(132), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [2518] = 7, + ACTIONS(136), 1, + anon_sym_AMP, + ACTIONS(138), 1, + anon_sym_PIPE, + ACTIONS(128), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(130), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(134), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(232), 3, + anon_sym_RPAREN, + anon_sym_SEMI, + anon_sym_end, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2548] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(120), 2, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(230), 2, + ACTIONS(234), 2, anon_sym_COMMA, anon_sym_RBRACE, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2577] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(120), 2, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(232), 2, + ACTIONS(236), 2, anon_sym_COMMA, anon_sym_RPAREN, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2606] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(234), 1, + ACTIONS(238), 1, anon_sym_to, - ACTIONS(120), 2, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2634] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(236), 1, - anon_sym_do, - ACTIONS(120), 2, + ACTIONS(240), 1, + ts_builtin_sym_end, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2662] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(238), 1, - anon_sym_RBRACK, - ACTIONS(120), 2, + ACTIONS(242), 1, + anon_sym_do, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2690] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(240), 1, + ACTIONS(244), 1, anon_sym_RBRACK, - ACTIONS(120), 2, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2718] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(242), 1, - ts_builtin_sym_end, - ACTIONS(120), 2, + ACTIONS(246), 1, + anon_sym_then, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2746] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(244), 1, + ACTIONS(248), 1, anon_sym_do, - ACTIONS(120), 2, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2774] = 7, - ACTIONS(128), 1, + ACTIONS(136), 1, anon_sym_AMP, - ACTIONS(130), 1, + ACTIONS(138), 1, anon_sym_PIPE, - ACTIONS(246), 1, - anon_sym_then, - ACTIONS(120), 2, + ACTIONS(250), 1, + anon_sym_RBRACK, + ACTIONS(128), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(122), 2, + ACTIONS(130), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(126), 2, + ACTIONS(134), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(124), 4, + ACTIONS(132), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, [2802] = 3, - ACTIONS(248), 1, - anon_sym_in, - ACTIONS(250), 1, + ACTIONS(254), 1, anon_sym_import, + ACTIONS(252), 2, + ts_builtin_sym_end, + anon_sym_in, + STATE(76), 3, + aux_sym__declaration_chunks, + sym__declaration_chunk, + sym_import_declaration, + [2815] = 3, + ACTIONS(257), 1, + anon_sym_in, + ACTIONS(259), 1, + anon_sym_import, + STATE(76), 3, + aux_sym__declaration_chunks, + sym__declaration_chunk, + sym_import_declaration, + [2827] = 3, + ACTIONS(259), 1, + anon_sym_import, + ACTIONS(261), 1, + anon_sym_in, STATE(77), 3, aux_sym__declaration_chunks, sym__declaration_chunk, sym_import_declaration, - [2814] = 3, - ACTIONS(250), 1, - anon_sym_import, - ACTIONS(252), 1, - anon_sym_in, - STATE(78), 3, - aux_sym__declaration_chunks, - sym__declaration_chunk, - sym_import_declaration, - [2826] = 3, - ACTIONS(254), 1, - anon_sym_in, - ACTIONS(256), 1, - anon_sym_import, - STATE(78), 3, - aux_sym__declaration_chunks, - sym__declaration_chunk, - sym_import_declaration, - [2838] = 3, + [2839] = 3, + ACTIONS(240), 1, + ts_builtin_sym_end, ACTIONS(259), 1, + anon_sym_import, + STATE(76), 3, + aux_sym__declaration_chunks, + sym__declaration_chunk, + sym_import_declaration, + [2851] = 3, + ACTIONS(263), 1, + anon_sym_DQUOTE, + STATE(83), 1, + aux_sym_string_literal_repeat1, + ACTIONS(265), 2, + aux_sym_string_literal_token1, + sym_escape_sequence, + [2862] = 3, + ACTIONS(267), 1, + anon_sym_SEMI, + STATE(81), 1, + aux_sym_sequence_expression_repeat1, + ACTIONS(232), 2, + anon_sym_RPAREN, + anon_sym_end, + [2873] = 3, + ACTIONS(270), 1, anon_sym_DQUOTE, STATE(82), 1, aux_sym_string_literal_repeat1, - ACTIONS(261), 2, + ACTIONS(272), 2, aux_sym_string_literal_token1, sym_escape_sequence, - [2849] = 3, - ACTIONS(263), 1, - anon_sym_SEMI, - STATE(80), 1, - aux_sym_sequence_expression_repeat1, - ACTIONS(226), 2, - anon_sym_RPAREN, - anon_sym_end, - [2860] = 3, - ACTIONS(266), 1, - anon_sym_DQUOTE, - STATE(81), 1, - aux_sym_string_literal_repeat1, - ACTIONS(268), 2, - aux_sym_string_literal_token1, - sym_escape_sequence, - [2871] = 3, - ACTIONS(271), 1, - anon_sym_DQUOTE, - STATE(81), 1, - aux_sym_string_literal_repeat1, - ACTIONS(273), 2, - aux_sym_string_literal_token1, - sym_escape_sequence, - [2882] = 3, - ACTIONS(222), 1, - anon_sym_COMMA, + [2884] = 3, ACTIONS(275), 1, - anon_sym_RPAREN, - STATE(87), 1, - aux_sym_function_call_repeat1, - [2892] = 3, - ACTIONS(212), 1, - anon_sym_SEMI, - ACTIONS(277), 1, - anon_sym_RPAREN, - STATE(80), 1, - aux_sym_sequence_expression_repeat1, - [2902] = 3, - ACTIONS(212), 1, - anon_sym_SEMI, + anon_sym_DQUOTE, + STATE(82), 1, + aux_sym_string_literal_repeat1, + ACTIONS(277), 2, + aux_sym_string_literal_token1, + sym_escape_sequence, + [2895] = 3, + ACTIONS(228), 1, + anon_sym_COMMA, ACTIONS(279), 1, - anon_sym_end, - STATE(80), 1, - aux_sym_sequence_expression_repeat1, - [2912] = 3, - ACTIONS(281), 1, - anon_sym_COMMA, - ACTIONS(284), 1, anon_sym_RBRACE, - STATE(86), 1, + STATE(90), 1, aux_sym_record_expression_repeat1, - [2922] = 3, - ACTIONS(232), 1, - anon_sym_RPAREN, - ACTIONS(286), 1, - anon_sym_COMMA, - STATE(87), 1, - aux_sym_function_call_repeat1, - [2932] = 3, - ACTIONS(212), 1, - anon_sym_SEMI, - ACTIONS(289), 1, - anon_sym_end, - STATE(80), 1, - aux_sym_sequence_expression_repeat1, - [2942] = 3, + [2905] = 3, ACTIONS(216), 1, - anon_sym_COMMA, - ACTIONS(291), 1, - anon_sym_RBRACE, - STATE(86), 1, - aux_sym_record_expression_repeat1, - [2952] = 2, - ACTIONS(293), 1, - sym_identifier, - ACTIONS(295), 1, - anon_sym_RBRACE, - [2959] = 1, - ACTIONS(297), 2, + anon_sym_SEMI, + ACTIONS(281), 1, + anon_sym_RPAREN, + STATE(81), 1, + aux_sym_sequence_expression_repeat1, + [2915] = 3, + ACTIONS(216), 1, + anon_sym_SEMI, + ACTIONS(283), 1, + anon_sym_end, + STATE(81), 1, + aux_sym_sequence_expression_repeat1, + [2925] = 1, + ACTIONS(285), 3, + ts_builtin_sym_end, anon_sym_in, anon_sym_import, - [2964] = 2, - ACTIONS(7), 1, - anon_sym_DQUOTE, - STATE(91), 1, - sym_string_literal, - [2971] = 1, + [2931] = 3, + ACTIONS(236), 1, + anon_sym_RPAREN, + ACTIONS(287), 1, + anon_sym_COMMA, + STATE(88), 1, + aux_sym_function_call_repeat1, + [2941] = 3, + ACTIONS(216), 1, + anon_sym_SEMI, + ACTIONS(290), 1, + anon_sym_end, + STATE(81), 1, + aux_sym_sequence_expression_repeat1, + [2951] = 3, + ACTIONS(292), 1, + anon_sym_COMMA, + ACTIONS(295), 1, + anon_sym_RBRACE, + STATE(90), 1, + aux_sym_record_expression_repeat1, + [2961] = 3, + ACTIONS(220), 1, + anon_sym_COMMA, + ACTIONS(297), 1, + anon_sym_RPAREN, + STATE(88), 1, + aux_sym_function_call_repeat1, + [2971] = 2, ACTIONS(299), 1, - anon_sym_of, - [2975] = 1, + sym_identifier, ACTIONS(301), 1, - sym_identifier, - [2979] = 1, + anon_sym_RBRACE, + [2978] = 2, + ACTIONS(9), 1, + anon_sym_DQUOTE, + STATE(87), 1, + sym_string_literal, + [2985] = 1, ACTIONS(303), 1, - anon_sym_EQ, - [2983] = 1, - ACTIONS(305), 1, anon_sym_COLON_EQ, - [2987] = 1, + [2989] = 1, + ACTIONS(305), 1, + sym_identifier, + [2993] = 1, ACTIONS(307), 1, - ts_builtin_sym_end, - [2991] = 1, + sym_identifier, + [2997] = 1, ACTIONS(309), 1, - sym_identifier, - [2995] = 1, + anon_sym_of, + [3001] = 1, ACTIONS(311), 1, - sym_identifier, - [2999] = 1, - ACTIONS(313), 1, anon_sym_EQ, + [3005] = 1, + ACTIONS(313), 1, + ts_builtin_sym_end, + [3009] = 1, + ACTIONS(315), 1, + anon_sym_EQ, + [3013] = 1, + ACTIONS(317), 1, + sym_identifier, }; static const uint32_t ts_small_parse_table_map[] = { @@ -3708,33 +3725,33 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(28)] = 1301, [SMALL_STATE(29)] = 1351, [SMALL_STATE(30)] = 1382, - [SMALL_STATE(31)] = 1413, + [SMALL_STATE(31)] = 1419, [SMALL_STATE(32)] = 1450, [SMALL_STATE(33)] = 1480, [SMALL_STATE(34)] = 1510, - [SMALL_STATE(35)] = 1548, - [SMALL_STATE(36)] = 1586, - [SMALL_STATE(37)] = 1614, - [SMALL_STATE(38)] = 1642, + [SMALL_STATE(35)] = 1538, + [SMALL_STATE(36)] = 1576, + [SMALL_STATE(37)] = 1604, + [SMALL_STATE(38)] = 1632, [SMALL_STATE(39)] = 1670, [SMALL_STATE(40)] = 1698, [SMALL_STATE(41)] = 1736, [SMALL_STATE(42)] = 1764, - [SMALL_STATE(43)] = 1792, - [SMALL_STATE(44)] = 1820, + [SMALL_STATE(43)] = 1804, + [SMALL_STATE(44)] = 1832, [SMALL_STATE(45)] = 1860, [SMALL_STATE(46)] = 1888, [SMALL_STATE(47)] = 1916, - [SMALL_STATE(48)] = 1954, - [SMALL_STATE(49)] = 1982, - [SMALL_STATE(50)] = 2020, - [SMALL_STATE(51)] = 2048, - [SMALL_STATE(52)] = 2076, - [SMALL_STATE(53)] = 2106, + [SMALL_STATE(48)] = 1944, + [SMALL_STATE(49)] = 1972, + [SMALL_STATE(50)] = 2010, + [SMALL_STATE(51)] = 2038, + [SMALL_STATE(52)] = 2066, + [SMALL_STATE(53)] = 2104, [SMALL_STATE(54)] = 2134, - [SMALL_STATE(55)] = 2166, - [SMALL_STATE(56)] = 2200, - [SMALL_STATE(57)] = 2236, + [SMALL_STATE(55)] = 2162, + [SMALL_STATE(56)] = 2194, + [SMALL_STATE(57)] = 2228, [SMALL_STATE(58)] = 2264, [SMALL_STATE(59)] = 2292, [SMALL_STATE(60)] = 2320, @@ -3743,7 +3760,7 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(63)] = 2416, [SMALL_STATE(64)] = 2450, [SMALL_STATE(65)] = 2484, - [SMALL_STATE(66)] = 2514, + [SMALL_STATE(66)] = 2518, [SMALL_STATE(67)] = 2548, [SMALL_STATE(68)] = 2577, [SMALL_STATE(69)] = 2606, @@ -3754,188 +3771,191 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(74)] = 2746, [SMALL_STATE(75)] = 2774, [SMALL_STATE(76)] = 2802, - [SMALL_STATE(77)] = 2814, - [SMALL_STATE(78)] = 2826, - [SMALL_STATE(79)] = 2838, - [SMALL_STATE(80)] = 2849, - [SMALL_STATE(81)] = 2860, - [SMALL_STATE(82)] = 2871, - [SMALL_STATE(83)] = 2882, - [SMALL_STATE(84)] = 2892, - [SMALL_STATE(85)] = 2902, - [SMALL_STATE(86)] = 2912, - [SMALL_STATE(87)] = 2922, - [SMALL_STATE(88)] = 2932, - [SMALL_STATE(89)] = 2942, - [SMALL_STATE(90)] = 2952, - [SMALL_STATE(91)] = 2959, - [SMALL_STATE(92)] = 2964, - [SMALL_STATE(93)] = 2971, - [SMALL_STATE(94)] = 2975, - [SMALL_STATE(95)] = 2979, - [SMALL_STATE(96)] = 2983, - [SMALL_STATE(97)] = 2987, - [SMALL_STATE(98)] = 2991, - [SMALL_STATE(99)] = 2995, - [SMALL_STATE(100)] = 2999, + [SMALL_STATE(77)] = 2815, + [SMALL_STATE(78)] = 2827, + [SMALL_STATE(79)] = 2839, + [SMALL_STATE(80)] = 2851, + [SMALL_STATE(81)] = 2862, + [SMALL_STATE(82)] = 2873, + [SMALL_STATE(83)] = 2884, + [SMALL_STATE(84)] = 2895, + [SMALL_STATE(85)] = 2905, + [SMALL_STATE(86)] = 2915, + [SMALL_STATE(87)] = 2925, + [SMALL_STATE(88)] = 2931, + [SMALL_STATE(89)] = 2941, + [SMALL_STATE(90)] = 2951, + [SMALL_STATE(91)] = 2961, + [SMALL_STATE(92)] = 2971, + [SMALL_STATE(93)] = 2978, + [SMALL_STATE(94)] = 2985, + [SMALL_STATE(95)] = 2989, + [SMALL_STATE(96)] = 2993, + [SMALL_STATE(97)] = 2997, + [SMALL_STATE(98)] = 3001, + [SMALL_STATE(99)] = 3005, + [SMALL_STATE(100)] = 3009, + [SMALL_STATE(101)] = 3013, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), - [3] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4), - [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(9), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(99), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(76), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(48), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [3] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), + [5] = {.entry = {.count = 1, .reusable = false}}, SHIFT(4), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(18), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(20), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(101), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(93), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(61), [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(37), - [29] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__lvalue, 1), - [31] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__lvalue, 1), SHIFT(17), - [34] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [36] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__lvalue, 1), - [38] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [40] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), - [42] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), + [33] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__lvalue, 1), + [35] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__lvalue, 1), SHIFT(17), + [38] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [40] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__lvalue, 1), + [42] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), [44] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), - [46] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [48] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), - [50] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69), - [52] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), - [54] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [56] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), - [58] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), - [60] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35), - [62] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), - [64] = {.entry = {.count = 1, .reusable = false}}, SHIFT(40), - [66] = {.entry = {.count = 1, .reusable = false}}, SHIFT(44), - [68] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), - [70] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), - [72] = {.entry = {.count = 1, .reusable = false}}, SHIFT(58), - [74] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71), - [76] = {.entry = {.count = 1, .reusable = false}}, SHIFT(47), - [78] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), - [80] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), - [82] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70), - [84] = {.entry = {.count = 1, .reusable = false}}, SHIFT(34), - [86] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), - [88] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), - [90] = {.entry = {.count = 1, .reusable = false}}, SHIFT(53), - [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_value, 4, .production_id = 13), - [94] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_value, 4, .production_id = 13), - [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_value, 3, .production_id = 6), - [98] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_value, 3, .production_id = 6), + [46] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [48] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), + [50] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [52] = {.entry = {.count = 1, .reusable = false}}, SHIFT(42), + [54] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [56] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [58] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35), + [60] = {.entry = {.count = 1, .reusable = false}}, SHIFT(57), + [62] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69), + [64] = {.entry = {.count = 1, .reusable = false}}, SHIFT(56), + [66] = {.entry = {.count = 1, .reusable = false}}, SHIFT(40), + [68] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), + [70] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), + [72] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), + [74] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), + [76] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), + [78] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), + [80] = {.entry = {.count = 1, .reusable = false}}, SHIFT(54), + [82] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59), + [84] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71), + [86] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), + [88] = {.entry = {.count = 1, .reusable = false}}, SHIFT(75), + [90] = {.entry = {.count = 1, .reusable = false}}, SHIFT(38), + [92] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), + [94] = {.entry = {.count = 1, .reusable = false}}, SHIFT(53), + [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_value, 4, .production_id = 13), + [98] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_value, 4, .production_id = 13), [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), - [102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), [106] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expr, 1), - [108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2), - [112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2), + [108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [110] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_value, 3, .production_id = 6), + [112] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_value, 3, .production_id = 6), [114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3), [116] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3), - [118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 6, .production_id = 19), - [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [126] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), - [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 1), - [134] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 2), - [136] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 2), - [138] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 4, .production_id = 12), - [140] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 4, .production_id = 12), - [142] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3, .production_id = 2), - [144] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3, .production_id = 2), - [146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 4, .production_id = 11), - [148] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 4, .production_id = 11), - [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_expression, 4, .production_id = 10), - [152] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 3, .production_id = 3), - [154] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 3, .production_id = 3), - [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 3), - [158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 3), - [160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 6, .production_id = 18), - [162] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 6, .production_id = 18), - [164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 4, .production_id = 9), - [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 5, .production_id = 14), - [170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 5, .production_id = 14), - [172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 15), - [174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 15), - [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 6, .production_id = 17), - [178] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 3), - [180] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 3), - [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_expression, 8, .production_id = 23), - [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 4), - [186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 4), - [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 6, .production_id = 20), - [190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 6, .production_id = 20), - [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 5), - [194] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 5), - [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 16), - [198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 16), - [200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 7), - [202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, .production_id = 7), - [204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 7, .production_id = 21), - [206] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 7, .production_id = 21), - [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4, .production_id = 8), - [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4, .production_id = 8), - [212] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [214] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_sequence_expression_repeat1, 2), - [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 4, .production_id = 24), - [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_call_repeat1, 2), - [234] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [236] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [252] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), - [256] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(92), - [259] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [263] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_sequence_expression_repeat1, 2), SHIFT_REPEAT(18), - [266] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), - [268] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(81), - [271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), - [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), - [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [281] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 2, .production_id = 22), SHIFT_REPEAT(94), - [284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 2, .production_id = 22), - [286] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_repeat1, 2), SHIFT_REPEAT(12), - [289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_declaration, 2, .production_id = 4), - [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [307] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [118] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2), + [120] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2), + [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 6, .production_id = 18), + [124] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 6, .production_id = 18), + [126] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_expression, 8, .production_id = 23), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [134] = {.entry = {.count = 1, .reusable = false}}, SHIFT(15), + [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 5, .production_id = 14), + [142] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 5, .production_id = 14), + [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 4, .production_id = 12), + [146] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 4, .production_id = 12), + [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 1), + [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 4, .production_id = 11), + [152] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 4, .production_id = 11), + [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_expression, 4, .production_id = 10), + [156] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3, .production_id = 3), + [158] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3, .production_id = 3), + [160] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 4, .production_id = 9), + [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [164] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 4), + [166] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 4), + [168] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 3, .production_id = 4), + [170] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 3, .production_id = 4), + [172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 3), + [174] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 3), + [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 15), + [178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 15), + [180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 2), + [182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 2), + [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 16), + [186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 16), + [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 6, .production_id = 17), + [190] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4, .production_id = 8), + [192] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4, .production_id = 8), + [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 3), + [196] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 3), + [198] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 6, .production_id = 19), + [200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 5), + [202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 5), + [204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 6, .production_id = 20), + [206] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 6, .production_id = 20), + [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 7), + [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, .production_id = 7), + [212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 7, .production_id = 21), + [214] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 7, .production_id = 21), + [216] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [224] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [226] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [228] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [230] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_sequence_expression_repeat1, 2), + [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 4, .production_id = 24), + [236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_call_repeat1, 2), + [238] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [242] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), + [254] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(93), + [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [263] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), + [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [267] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_sequence_expression_repeat1, 2), SHIFT_REPEAT(8), + [270] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), + [272] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(82), + [275] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), + [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), + [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_declaration, 2, .production_id = 2), + [287] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_repeat1, 2), SHIFT_REPEAT(16), + [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [292] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 2, .production_id = 22), SHIFT_REPEAT(95), + [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 2, .production_id = 22), + [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), + [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [309] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [313] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [315] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [317] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), }; #ifdef __cplusplus diff --git a/test/corpus/declarations.txt b/test/corpus/declarations.txt new file mode 100644 index 0000000..24b200c --- /dev/null +++ b/test/corpus/declarations.txt @@ -0,0 +1,34 @@ +================================================================================ +Empty declarations +================================================================================ + +-------------------------------------------------------------------------------- + +(source_file) + +================================================================================ +Import +================================================================================ + +import "a.tih" + +-------------------------------------------------------------------------------- + +(source_file + (import_declaration + file: (string_literal))) + +================================================================================ +Multiple imports +================================================================================ + +import "a.tih" +import "b.tih" + +-------------------------------------------------------------------------------- + +(source_file + (import_declaration + file: (string_literal)) + (import_declaration + file: (string_literal)))