From 572dab6f4bb494669a9b6306104eb3aca3f83efe Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Sat, 4 Jun 2022 20:25:41 +0200 Subject: [PATCH] Add meta-variables This is an EPITA extension of the language, used mostly by internal compiler machinery. --- grammar.js | 58 +- src/grammar.json | 185 +- src/node-types.json | 517 ++ src/parser.c | 10050 ++++++++++++++++++------------- test/corpus/meta-variables.txt | 65 + 5 files changed, 6785 insertions(+), 4090 deletions(-) create mode 100644 test/corpus/meta-variables.txt diff --git a/grammar.js b/grammar.js index 5b7cdd8..afdbafa 100644 --- a/grammar.js +++ b/grammar.js @@ -29,6 +29,7 @@ module.exports = grammar({ conflicts: ($) => [ [$._lvalue, $.array_expression], + [$._lvalue, $.record_expression], [$._lvalue, $._type_identifier], ], @@ -73,6 +74,9 @@ module.exports = grammar({ $.for_expression, $.break_expression, $.let_expression, + + $.meta_cast, + $.meta_expression, ), nil_literal: (_) => "nil", @@ -88,7 +92,10 @@ module.exports = grammar({ // NOTE: includes reserved identifiers identifier: (_) => /[_a-zA-Z0-9]+/, - _type_identifier: ($) => alias($.identifier, $.type_identifier), + _type_identifier: ($) => choice( + alias($.identifier, $.type_identifier), + $.meta_type_identifier, + ), _field_identifier: ($) => alias($.identifier, $.field_identifier), @@ -112,6 +119,7 @@ module.exports = grammar({ $.identifier, $.record_value, $.array_value, + $.meta_lvalue, ), record_value: ($) => seq( @@ -245,7 +253,12 @@ module.exports = grammar({ // Declarations {{{ - _declaration_chunks: ($) => repeat1($._declaration_chunk), + _declaration_chunks: ($) => repeat1( + choice( + $.meta_chunks, + $._declaration_chunk, + ), + ), _declaration_chunk: ($) => prec.left( choice( @@ -335,6 +348,47 @@ module.exports = grammar({ ), // }}} + + // Meta-variables {{{ + + meta_chunks: ($) => seq( + "_chunks", + "(", + field("index", $.integer_literal), + ")", + ), + + meta_cast: ($) => seq( + "_cast", + "(", + field("expression", $._expr), + ",", + field("type", $._type), + ")", + ), + + meta_expression: ($) => seq( + "_exp", + "(", + field("index", $.integer_literal), + ")", + ), + + meta_lvalue: ($) => seq( + "_lvalue", + "(", + field("index", $.integer_literal), + ")", + ), + + meta_type_identifier: ($) => seq( + "_namety", + "(", + $.integer_literal, + ")", + ), + + // }}} } }); diff --git a/src/grammar.json b/src/grammar.json index f5b0dfc..607539c 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -89,6 +89,14 @@ { "type": "SYMBOL", "name": "let_expression" + }, + { + "type": "SYMBOL", + "name": "meta_cast" + }, + { + "type": "SYMBOL", + "name": "meta_expression" } ] }, @@ -134,13 +142,22 @@ "value": "[_a-zA-Z0-9]+" }, "_type_identifier": { - "type": "ALIAS", - "content": { - "type": "SYMBOL", - "name": "identifier" - }, - "named": true, - "value": "type_identifier" + "type": "CHOICE", + "members": [ + { + "type": "ALIAS", + "content": { + "type": "SYMBOL", + "name": "identifier" + }, + "named": true, + "value": "type_identifier" + }, + { + "type": "SYMBOL", + "name": "meta_type_identifier" + } + ] }, "_field_identifier": { "type": "ALIAS", @@ -245,6 +262,10 @@ { "type": "SYMBOL", "name": "array_value" + }, + { + "type": "SYMBOL", + "name": "meta_lvalue" } ] }, @@ -1063,8 +1084,17 @@ "_declaration_chunks": { "type": "REPEAT1", "content": { - "type": "SYMBOL", - "name": "_declaration_chunk" + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "meta_chunks" + }, + { + "type": "SYMBOL", + "name": "_declaration_chunk" + } + ] } }, "_declaration_chunk": { @@ -1513,6 +1543,139 @@ } } ] + }, + "meta_chunks": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "_chunks" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "FIELD", + "name": "index", + "content": { + "type": "SYMBOL", + "name": "integer_literal" + } + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "meta_cast": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "_cast" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "FIELD", + "name": "expression", + "content": { + "type": "SYMBOL", + "name": "_expr" + } + }, + { + "type": "STRING", + "value": "," + }, + { + "type": "FIELD", + "name": "type", + "content": { + "type": "SYMBOL", + "name": "_type" + } + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "meta_expression": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "_exp" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "FIELD", + "name": "index", + "content": { + "type": "SYMBOL", + "name": "integer_literal" + } + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "meta_lvalue": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "_lvalue" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "FIELD", + "name": "index", + "content": { + "type": "SYMBOL", + "name": "integer_literal" + } + }, + { + "type": "STRING", + "value": ")" + } + ] + }, + "meta_type_identifier": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "_namety" + }, + { + "type": "STRING", + "value": "(" + }, + { + "type": "SYMBOL", + "name": "integer_literal" + }, + { + "type": "STRING", + "value": ")" + } + ] } }, "extras": [ @@ -1530,6 +1693,10 @@ "_lvalue", "array_expression" ], + [ + "_lvalue", + "record_expression" + ], [ "_lvalue", "_type_identifier" diff --git a/src/node-types.json b/src/node-types.json index e9aba88..1ba0e24 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -51,6 +51,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -129,6 +141,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -163,6 +187,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -179,6 +207,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -203,6 +235,10 @@ "type": "identifier", "named": true }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "record_value", "named": true @@ -257,6 +293,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -305,6 +353,10 @@ "type": "identifier", "named": true }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "record_value", "named": true @@ -359,6 +411,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -453,6 +517,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -541,6 +617,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -625,6 +713,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -703,6 +803,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -791,6 +903,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -889,6 +1013,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -983,6 +1119,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -1037,6 +1185,10 @@ "multiple": false, "required": false, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -1097,6 +1249,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -1175,6 +1339,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -1253,6 +1429,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -1357,6 +1545,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -1399,6 +1599,10 @@ "type": "import_declaration", "named": true }, + { + "type": "meta_chunks", + "named": true + }, { "type": "primitive_declaration", "named": true @@ -1415,6 +1619,183 @@ } } }, + { + "type": "meta_cast", + "named": true, + "fields": { + "expression": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_expression", + "named": true + }, + { + "type": "array_value", + "named": true + }, + { + "type": "assignment_expression", + "named": true + }, + { + "type": "binary_expression", + "named": true + }, + { + "type": "break_expression", + "named": true + }, + { + "type": "for_expression", + "named": true + }, + { + "type": "function_call", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "if_expression", + "named": true + }, + { + "type": "integer_literal", + "named": true + }, + { + "type": "let_expression", + "named": true + }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, + { + "type": "nil_literal", + "named": true + }, + { + "type": "record_expression", + "named": true + }, + { + "type": "record_value", + "named": true + }, + { + "type": "sequence_expression", + "named": true + }, + { + "type": "string_literal", + "named": true + }, + { + "type": "unary_expression", + "named": true + }, + { + "type": "while_expression", + "named": true + } + ] + }, + "type": { + "multiple": false, + "required": true, + "types": [ + { + "type": "array_type", + "named": true + }, + { + "type": "record_type", + "named": true + }, + { + "type": "type_alias", + "named": true + } + ] + } + } + }, + { + "type": "meta_chunks", + "named": true, + "fields": { + "index": { + "multiple": false, + "required": true, + "types": [ + { + "type": "integer_literal", + "named": true + } + ] + } + } + }, + { + "type": "meta_expression", + "named": true, + "fields": { + "index": { + "multiple": false, + "required": true, + "types": [ + { + "type": "integer_literal", + "named": true + } + ] + } + } + }, + { + "type": "meta_lvalue", + "named": true, + "fields": { + "index": { + "multiple": false, + "required": true, + "types": [ + { + "type": "integer_literal", + "named": true + } + ] + } + } + }, + { + "type": "meta_type_identifier", + "named": true, + "fields": {}, + "children": { + "multiple": false, + "required": true, + "types": [ + { + "type": "integer_literal", + "named": true + } + ] + } + }, { "type": "parameters", "named": true, @@ -1433,6 +1814,10 @@ "multiple": true, "required": false, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -1469,6 +1854,10 @@ "multiple": false, "required": false, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -1539,6 +1928,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -1573,6 +1974,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -1599,6 +2004,10 @@ "multiple": true, "required": false, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -1633,6 +2042,10 @@ "type": "identifier", "named": true }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "record_value", "named": true @@ -1693,6 +2106,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -1784,6 +2209,22 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_chunks", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -1850,6 +2291,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -1943,6 +2388,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -2003,6 +2460,10 @@ "multiple": false, "required": false, "types": [ + { + "type": "meta_type_identifier", + "named": true + }, { "type": "type_identifier", "named": true @@ -2057,6 +2518,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -2151,6 +2624,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -2229,6 +2714,18 @@ "type": "let_expression", "named": true }, + { + "type": "meta_cast", + "named": true + }, + { + "type": "meta_expression", + "named": true + }, + { + "type": "meta_lvalue", + "named": true + }, { "type": "nil_literal", "named": true @@ -2301,6 +2798,26 @@ "type": "]", "named": false }, + { + "type": "_cast", + "named": false + }, + { + "type": "_chunks", + "named": false + }, + { + "type": "_exp", + "named": false + }, + { + "type": "_lvalue", + "named": false + }, + { + "type": "_namety", + "named": false + }, { "type": "array", "named": false diff --git a/src/parser.c b/src/parser.c index 06ee35e..8db4f87 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,15 +6,15 @@ #endif #define LANGUAGE_VERSION 13 -#define STATE_COUNT 160 +#define STATE_COUNT 215 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 86 +#define SYMBOL_COUNT 96 #define ALIAS_COUNT 2 -#define TOKEN_COUNT 49 +#define TOKEN_COUNT 54 #define EXTERNAL_TOKEN_COUNT 1 #define FIELD_COUNT 26 #define MAX_ALIAS_SEQUENCE_LENGTH 8 -#define PRODUCTION_ID_COUNT 38 +#define PRODUCTION_ID_COUNT 52 enum { sym_identifier = 1, @@ -64,46 +64,56 @@ enum { anon_sym_primitive = 45, anon_sym_var = 46, anon_sym_import = 47, - sym_comment = 48, - sym_source_file = 49, - sym__expr = 50, - sym_string_literal = 51, - sym__lvalue = 52, - sym_record_value = 53, - sym_array_value = 54, - sym_function_call = 55, - sym_unary_expression = 56, - sym_binary_expression = 57, - sym_sequence_expression = 58, - sym_array_expression = 59, - sym_record_expression = 60, - sym_assignment_expression = 61, - sym_if_expression = 62, - sym_while_expression = 63, - sym_for_expression = 64, - sym_let_expression = 65, - aux_sym__declaration_chunks = 66, - sym__declaration_chunk = 67, - sym_type_declaration = 68, - sym__type = 69, - sym_type_alias = 70, - sym_record_type = 71, - sym_array_type = 72, - sym_function_declaration = 73, - sym_primitive_declaration = 74, - sym_parameters = 75, - sym_variable_declaration = 76, - sym_import_declaration = 77, - aux_sym_string_literal_repeat1 = 78, - aux_sym_function_call_repeat1 = 79, - aux_sym_sequence_expression_repeat1 = 80, - aux_sym_record_expression_repeat1 = 81, - aux_sym__declaration_chunk_repeat1 = 82, - aux_sym__declaration_chunk_repeat2 = 83, - aux_sym_record_type_repeat1 = 84, - aux_sym_parameters_repeat1 = 85, - alias_sym_field_identifier = 86, - alias_sym_type_identifier = 87, + anon_sym__chunks = 48, + anon_sym__cast = 49, + anon_sym__exp = 50, + anon_sym__lvalue = 51, + anon_sym__namety = 52, + sym_comment = 53, + sym_source_file = 54, + sym__expr = 55, + sym_string_literal = 56, + sym__lvalue = 57, + sym_record_value = 58, + sym_array_value = 59, + sym_function_call = 60, + sym_unary_expression = 61, + sym_binary_expression = 62, + sym_sequence_expression = 63, + sym_array_expression = 64, + sym_record_expression = 65, + sym_assignment_expression = 66, + sym_if_expression = 67, + sym_while_expression = 68, + sym_for_expression = 69, + sym_let_expression = 70, + aux_sym__declaration_chunks = 71, + sym__declaration_chunk = 72, + sym_type_declaration = 73, + sym__type = 74, + sym_type_alias = 75, + sym_record_type = 76, + sym_array_type = 77, + sym_function_declaration = 78, + sym_primitive_declaration = 79, + sym_parameters = 80, + sym_variable_declaration = 81, + sym_import_declaration = 82, + sym_meta_chunks = 83, + sym_meta_cast = 84, + sym_meta_expression = 85, + sym_meta_lvalue = 86, + sym_meta_type_identifier = 87, + aux_sym_string_literal_repeat1 = 88, + aux_sym_function_call_repeat1 = 89, + aux_sym_sequence_expression_repeat1 = 90, + aux_sym_record_expression_repeat1 = 91, + aux_sym__declaration_chunk_repeat1 = 92, + aux_sym__declaration_chunk_repeat2 = 93, + aux_sym_record_type_repeat1 = 94, + aux_sym_parameters_repeat1 = 95, + alias_sym_field_identifier = 96, + alias_sym_type_identifier = 97, }; static const char * const ts_symbol_names[] = { @@ -155,6 +165,11 @@ static const char * const ts_symbol_names[] = { [anon_sym_primitive] = "primitive", [anon_sym_var] = "var", [anon_sym_import] = "import", + [anon_sym__chunks] = "_chunks", + [anon_sym__cast] = "_cast", + [anon_sym__exp] = "_exp", + [anon_sym__lvalue] = "_lvalue", + [anon_sym__namety] = "_namety", [sym_comment] = "comment", [sym_source_file] = "source_file", [sym__expr] = "_expr", @@ -185,6 +200,11 @@ static const char * const ts_symbol_names[] = { [sym_parameters] = "parameters", [sym_variable_declaration] = "variable_declaration", [sym_import_declaration] = "import_declaration", + [sym_meta_chunks] = "meta_chunks", + [sym_meta_cast] = "meta_cast", + [sym_meta_expression] = "meta_expression", + [sym_meta_lvalue] = "meta_lvalue", + [sym_meta_type_identifier] = "meta_type_identifier", [aux_sym_string_literal_repeat1] = "string_literal_repeat1", [aux_sym_function_call_repeat1] = "function_call_repeat1", [aux_sym_sequence_expression_repeat1] = "sequence_expression_repeat1", @@ -246,6 +266,11 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_primitive] = anon_sym_primitive, [anon_sym_var] = anon_sym_var, [anon_sym_import] = anon_sym_import, + [anon_sym__chunks] = anon_sym__chunks, + [anon_sym__cast] = anon_sym__cast, + [anon_sym__exp] = anon_sym__exp, + [anon_sym__lvalue] = anon_sym__lvalue, + [anon_sym__namety] = anon_sym__namety, [sym_comment] = sym_comment, [sym_source_file] = sym_source_file, [sym__expr] = sym__expr, @@ -276,6 +301,11 @@ static const TSSymbol ts_symbol_map[] = { [sym_parameters] = sym_parameters, [sym_variable_declaration] = sym_variable_declaration, [sym_import_declaration] = sym_import_declaration, + [sym_meta_chunks] = sym_meta_chunks, + [sym_meta_cast] = sym_meta_cast, + [sym_meta_expression] = sym_meta_expression, + [sym_meta_lvalue] = sym_meta_lvalue, + [sym_meta_type_identifier] = sym_meta_type_identifier, [aux_sym_string_literal_repeat1] = aux_sym_string_literal_repeat1, [aux_sym_function_call_repeat1] = aux_sym_function_call_repeat1, [aux_sym_sequence_expression_repeat1] = aux_sym_sequence_expression_repeat1, @@ -481,6 +511,26 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym__chunks] = { + .visible = true, + .named = false, + }, + [anon_sym__cast] = { + .visible = true, + .named = false, + }, + [anon_sym__exp] = { + .visible = true, + .named = false, + }, + [anon_sym__lvalue] = { + .visible = true, + .named = false, + }, + [anon_sym__namety] = { + .visible = true, + .named = false, + }, [sym_comment] = { .visible = true, .named = true, @@ -601,6 +651,26 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_meta_chunks] = { + .visible = true, + .named = true, + }, + [sym_meta_cast] = { + .visible = true, + .named = true, + }, + [sym_meta_expression] = { + .visible = true, + .named = true, + }, + [sym_meta_lvalue] = { + .visible = true, + .named = true, + }, + [sym_meta_type_identifier] = { + .visible = true, + .named = true, + }, [aux_sym_string_literal_repeat1] = { .visible = false, .named = false, @@ -711,34 +781,48 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [6] = {.index = 7, .length = 3}, [7] = {.index = 10, .length = 2}, [8] = {.index = 12, .length = 2}, - [9] = {.index = 14, .length = 2}, - [10] = {.index = 16, .length = 2}, - [11] = {.index = 18, .length = 2}, - [12] = {.index = 20, .length = 1}, - [13] = {.index = 21, .length = 1}, - [15] = {.index = 22, .length = 2}, - [16] = {.index = 24, .length = 2}, - [17] = {.index = 26, .length = 3}, - [18] = {.index = 29, .length = 2}, - [19] = {.index = 31, .length = 2}, - [20] = {.index = 33, .length = 3}, - [21] = {.index = 36, .length = 3}, - [22] = {.index = 39, .length = 3}, - [23] = {.index = 42, .length = 3}, - [24] = {.index = 45, .length = 3}, - [25] = {.index = 48, .length = 3}, - [26] = {.index = 51, .length = 1}, - [27] = {.index = 52, .length = 3}, - [28] = {.index = 55, .length = 5}, - [29] = {.index = 60, .length = 4}, - [30] = {.index = 64, .length = 2}, - [31] = {.index = 66, .length = 4}, - [32] = {.index = 70, .length = 4}, - [33] = {.index = 64, .length = 2}, - [34] = {.index = 74, .length = 4}, - [35] = {.index = 78, .length = 4}, - [36] = {.index = 82, .length = 2}, - [37] = {.index = 74, .length = 4}, + [9] = {.index = 4, .length = 1}, + [10] = {.index = 14, .length = 2}, + [11] = {.index = 16, .length = 2}, + [12] = {.index = 18, .length = 2}, + [13] = {.index = 20, .length = 1}, + [14] = {.index = 21, .length = 1}, + [16] = {.index = 22, .length = 2}, + [17] = {.index = 24, .length = 1}, + [18] = {.index = 25, .length = 2}, + [19] = {.index = 27, .length = 3}, + [20] = {.index = 30, .length = 2}, + [21] = {.index = 32, .length = 2}, + [22] = {.index = 34, .length = 3}, + [23] = {.index = 37, .length = 3}, + [24] = {.index = 37, .length = 3}, + [25] = {.index = 40, .length = 3}, + [26] = {.index = 43, .length = 3}, + [27] = {.index = 46, .length = 3}, + [28] = {.index = 49, .length = 3}, + [29] = {.index = 52, .length = 1}, + [30] = {.index = 52, .length = 1}, + [31] = {.index = 53, .length = 3}, + [32] = {.index = 53, .length = 3}, + [33] = {.index = 56, .length = 2}, + [34] = {.index = 40, .length = 3}, + [35] = {.index = 43, .length = 3}, + [36] = {.index = 58, .length = 5}, + [37] = {.index = 63, .length = 4}, + [38] = {.index = 67, .length = 2}, + [39] = {.index = 67, .length = 2}, + [40] = {.index = 69, .length = 4}, + [41] = {.index = 69, .length = 4}, + [42] = {.index = 58, .length = 5}, + [43] = {.index = 73, .length = 4}, + [44] = {.index = 67, .length = 2}, + [45] = {.index = 67, .length = 2}, + [46] = {.index = 77, .length = 4}, + [47] = {.index = 81, .length = 4}, + [48] = {.index = 77, .length = 4}, + [49] = {.index = 85, .length = 2}, + [50] = {.index = 77, .length = 4}, + [51] = {.index = 77, .length = 4}, }; static const TSFieldMapEntry ts_field_map_entries[] = { @@ -781,83 +865,88 @@ static const TSFieldMapEntry ts_field_map_entries[] = { {field_name, 1}, {field_value, 3}, [24] = + {field_index, 2}, + [25] = {field_array, 0}, {field_index, 2}, - [26] = + [27] = {field_arguments, 2}, {field_arguments, 3}, {field_function, 0}, - [29] = + [30] = {field_body, 2}, {field_body, 3}, - [31] = + [32] = {field_body, 3}, {field_declarations, 1}, - [33] = + [34] = {field_body, 4}, {field_name, 1}, {field_parameters, 2}, - [36] = + [37] = {field_name, 1}, {field_parameters, 2}, {field_return_type, 4}, - [39] = + [40] = {field_init, 5}, {field_size, 2}, {field_type, 0}, - [42] = + [43] = {field_field, 2}, {field_init, 4}, {field_type, 0}, - [45] = + [46] = {field_alternative, 5}, {field_condition, 1}, {field_consequence, 3}, - [48] = + [49] = {field_body, 3}, {field_body, 4}, {field_declarations, 1}, - [51] = - {field_element_type, 2}, [52] = + {field_element_type, 2}, + [53] = {field_name, 1}, {field_type, 3}, {field_value, 5}, - [55] = + [56] = + {field_expression, 2}, + {field_type, 4}, + [58] = {field_field, 2}, {field_field, 5, .inherited = true}, {field_init, 4}, {field_init, 5, .inherited = true}, {field_type, 0}, - [60] = + [63] = {field_field, 0, .inherited = true}, {field_field, 1, .inherited = true}, {field_init, 0, .inherited = true}, {field_init, 1, .inherited = true}, - [64] = + [67] = {field_name, 1}, {field_type, 3}, - [66] = + [69] = {field_body, 6}, {field_name, 1}, {field_parameters, 2}, {field_return_type, 4}, - [70] = + [73] = {field_body, 7}, {field_end, 5}, {field_index, 1}, {field_start, 3}, - [74] = + [77] = {field_name, 1}, {field_name, 4, .inherited = true}, {field_type, 3}, {field_type, 4, .inherited = true}, - [78] = + [81] = {field_name, 0, .inherited = true}, {field_name, 1, .inherited = true}, {field_type, 0, .inherited = true}, {field_type, 1, .inherited = true}, - [82] = + [85] = {field_field, 1}, {field_init, 3}, }; @@ -873,49 +962,61 @@ static const TSSymbol ts_alias_sequences[PRODUCTION_ID_COUNT][MAX_ALIAS_SEQUENCE [7] = { [2] = alias_sym_field_identifier, }, - [14] = { - [0] = alias_sym_type_identifier, - }, - [21] = { - [4] = alias_sym_type_identifier, - }, - [22] = { + [15] = { [0] = alias_sym_type_identifier, }, [23] = { - [0] = alias_sym_type_identifier, - [2] = alias_sym_field_identifier, - }, - [26] = { - [2] = alias_sym_type_identifier, - }, - [27] = { - [3] = alias_sym_type_identifier, - }, - [28] = { - [0] = alias_sym_type_identifier, - [2] = alias_sym_field_identifier, - }, - [30] = { - [3] = alias_sym_type_identifier, - }, - [31] = { [4] = alias_sym_type_identifier, }, - [33] = { - [1] = alias_sym_field_identifier, + [25] = { + [0] = alias_sym_type_identifier, + }, + [26] = { + [0] = alias_sym_type_identifier, + [2] = alias_sym_field_identifier, + }, + [29] = { + [2] = alias_sym_type_identifier, + }, + [31] = { [3] = alias_sym_type_identifier, }, - [34] = { - [3] = alias_sym_type_identifier, + [35] = { + [2] = alias_sym_field_identifier, }, [36] = { - [1] = alias_sym_field_identifier, + [0] = alias_sym_type_identifier, + [2] = alias_sym_field_identifier, }, - [37] = { + [38] = { + [3] = alias_sym_type_identifier, + }, + [40] = { + [4] = alias_sym_type_identifier, + }, + [42] = { + [2] = alias_sym_field_identifier, + }, + [44] = { [1] = alias_sym_field_identifier, [3] = alias_sym_type_identifier, }, + [45] = { + [1] = alias_sym_field_identifier, + }, + [46] = { + [3] = alias_sym_type_identifier, + }, + [49] = { + [1] = alias_sym_field_identifier, + }, + [50] = { + [1] = alias_sym_field_identifier, + [3] = alias_sym_type_identifier, + }, + [51] = { + [1] = alias_sym_field_identifier, + }, }; static const uint16_t ts_non_terminal_alias_map[] = { @@ -927,53 +1028,60 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { eof = lexer->eof(lexer); switch (state) { case 0: - if (eof) ADVANCE(9); + if (eof) ADVANCE(10); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') SKIP(7) - if (lookahead == '"') ADVANCE(11); - if (lookahead == '&') ADVANCE(32); - if (lookahead == '(') ADVANCE(19); - if (lookahead == ')') ADVANCE(21); - if (lookahead == '*') ADVANCE(23); - if (lookahead == '+') ADVANCE(25); - if (lookahead == ',') ADVANCE(20); - if (lookahead == '-') ADVANCE(22); - if (lookahead == '.') ADVANCE(16); - if (lookahead == '/') ADVANCE(24); - if (lookahead == ':') ADVANCE(38); - if (lookahead == ';') ADVANCE(34); - if (lookahead == '<') ADVANCE(30); - if (lookahead == '=') ADVANCE(28); - if (lookahead == '>') ADVANCE(31); - if (lookahead == '[') ADVANCE(17); - if (lookahead == '\\') ADVANCE(4); - if (lookahead == ']') ADVANCE(18); - if (lookahead == '{') ADVANCE(35); - if (lookahead == '|') ADVANCE(33); - if (lookahead == '}') ADVANCE(36); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(10); + lookahead == ' ') SKIP(8) + if (lookahead == '"') ADVANCE(13); + if (lookahead == '&') ADVANCE(34); + if (lookahead == '(') ADVANCE(21); + if (lookahead == ')') ADVANCE(23); + if (lookahead == '*') ADVANCE(25); + if (lookahead == '+') ADVANCE(27); + if (lookahead == ',') ADVANCE(22); + if (lookahead == '-') ADVANCE(24); + if (lookahead == '.') ADVANCE(18); + if (lookahead == '/') ADVANCE(26); + if (lookahead == ':') ADVANCE(40); + if (lookahead == ';') ADVANCE(36); + if (lookahead == '<') ADVANCE(32); + if (lookahead == '=') ADVANCE(30); + if (lookahead == '>') ADVANCE(33); + if (lookahead == '[') ADVANCE(19); + if (lookahead == '\\') ADVANCE(5); + if (lookahead == ']') ADVANCE(20); + if (lookahead == '{') ADVANCE(37); + if (lookahead == '|') ADVANCE(35); + if (lookahead == '}') ADVANCE(38); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(11); if (('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(14); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(16); END_STATE(); case 1: if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') ADVANCE(12); - if (lookahead == '"') ADVANCE(11); - if (lookahead == '\\') ADVANCE(4); - if (lookahead != 0) ADVANCE(13); + lookahead == ' ') ADVANCE(14); + if (lookahead == '"') ADVANCE(13); + if (lookahead == '\\') ADVANCE(5); + if (lookahead != 0) ADVANCE(15); END_STATE(); case 2: - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(15); + if (lookahead == '\t' || + lookahead == '\n' || + lookahead == '\r' || + lookahead == ' ') SKIP(2) + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(12); END_STATE(); case 3: - if (('0' <= lookahead && lookahead <= '7')) ADVANCE(2); + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(17); END_STATE(); case 4: + if (('0' <= lookahead && lookahead <= '7')) ADVANCE(3); + END_STATE(); + case 5: if (lookahead == '"' || lookahead == '\\' || lookahead == 'a' || @@ -982,192 +1090,196 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead == 'n' || lookahead == 'r' || lookahead == 't' || - lookahead == 'v') ADVANCE(15); - if (lookahead == 'x') ADVANCE(6); - if (('0' <= lookahead && lookahead <= '3')) ADVANCE(3); - END_STATE(); - case 5: - if (('0' <= lookahead && lookahead <= '9') || - ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(15); + lookahead == 'v') ADVANCE(17); + if (lookahead == 'x') ADVANCE(7); + if (('0' <= lookahead && lookahead <= '3')) ADVANCE(4); END_STATE(); case 6: if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'F') || - ('a' <= lookahead && lookahead <= 'f')) ADVANCE(5); + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(17); END_STATE(); case 7: - if (eof) ADVANCE(9); - if (lookahead == '\t' || - lookahead == '\n' || - lookahead == '\r' || - lookahead == ' ') SKIP(7) - if (lookahead == '"') ADVANCE(11); - if (lookahead == '&') ADVANCE(32); - if (lookahead == '(') ADVANCE(19); - if (lookahead == ')') ADVANCE(21); - if (lookahead == '*') ADVANCE(23); - if (lookahead == '+') ADVANCE(25); - if (lookahead == ',') ADVANCE(20); - if (lookahead == '-') ADVANCE(22); - if (lookahead == '.') ADVANCE(16); - if (lookahead == '/') ADVANCE(24); - if (lookahead == ':') ADVANCE(38); - if (lookahead == ';') ADVANCE(34); - if (lookahead == '<') ADVANCE(30); - if (lookahead == '=') ADVANCE(28); - if (lookahead == '>') ADVANCE(31); - if (lookahead == '[') ADVANCE(17); - if (lookahead == ']') ADVANCE(18); - if (lookahead == '{') ADVANCE(35); - if (lookahead == '|') ADVANCE(33); - if (lookahead == '}') ADVANCE(36); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(10); - if (('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(14); + if (('0' <= lookahead && lookahead <= '9') || + ('A' <= lookahead && lookahead <= 'F') || + ('a' <= lookahead && lookahead <= 'f')) ADVANCE(6); END_STATE(); case 8: - if (eof) ADVANCE(9); + if (eof) ADVANCE(10); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(8) - if (lookahead == '&') ADVANCE(32); - if (lookahead == '(') ADVANCE(19); - if (lookahead == ')') ADVANCE(21); - if (lookahead == '*') ADVANCE(23); - if (lookahead == '+') ADVANCE(25); - if (lookahead == ',') ADVANCE(20); - if (lookahead == '-') ADVANCE(22); - if (lookahead == '.') ADVANCE(16); - if (lookahead == '/') ADVANCE(24); - if (lookahead == ':') ADVANCE(38); - if (lookahead == ';') ADVANCE(34); - if (lookahead == '<') ADVANCE(30); - if (lookahead == '=') ADVANCE(28); - if (lookahead == '>') ADVANCE(31); - if (lookahead == '[') ADVANCE(17); - if (lookahead == ']') ADVANCE(18); - if (lookahead == '{') ADVANCE(35); - if (lookahead == '|') ADVANCE(33); - if (lookahead == '}') ADVANCE(36); + if (lookahead == '"') ADVANCE(13); + if (lookahead == '&') ADVANCE(34); + if (lookahead == '(') ADVANCE(21); + if (lookahead == ')') ADVANCE(23); + if (lookahead == '*') ADVANCE(25); + if (lookahead == '+') ADVANCE(27); + if (lookahead == ',') ADVANCE(22); + if (lookahead == '-') ADVANCE(24); + if (lookahead == '.') ADVANCE(18); + if (lookahead == '/') ADVANCE(26); + if (lookahead == ':') ADVANCE(40); + if (lookahead == ';') ADVANCE(36); + if (lookahead == '<') ADVANCE(32); + if (lookahead == '=') ADVANCE(30); + if (lookahead == '>') ADVANCE(33); + if (lookahead == '[') ADVANCE(19); + if (lookahead == ']') ADVANCE(20); + if (lookahead == '{') ADVANCE(37); + if (lookahead == '|') ADVANCE(35); + if (lookahead == '}') ADVANCE(38); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(11); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(16); + END_STATE(); + case 9: + if (eof) ADVANCE(10); + if (lookahead == '\t' || + lookahead == '\n' || + lookahead == '\r' || + lookahead == ' ') SKIP(9) + if (lookahead == '&') ADVANCE(34); + if (lookahead == '(') ADVANCE(21); + if (lookahead == ')') ADVANCE(23); + if (lookahead == '*') ADVANCE(25); + if (lookahead == '+') ADVANCE(27); + if (lookahead == ',') ADVANCE(22); + if (lookahead == '-') ADVANCE(24); + if (lookahead == '.') ADVANCE(18); + if (lookahead == '/') ADVANCE(26); + if (lookahead == ':') ADVANCE(40); + if (lookahead == ';') ADVANCE(36); + if (lookahead == '<') ADVANCE(32); + if (lookahead == '=') ADVANCE(30); + if (lookahead == '>') ADVANCE(33); + if (lookahead == '[') ADVANCE(19); + if (lookahead == ']') ADVANCE(20); + if (lookahead == '{') ADVANCE(37); + if (lookahead == '|') ADVANCE(35); + if (lookahead == '}') ADVANCE(38); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(14); - END_STATE(); - case 9: - ACCEPT_TOKEN(ts_builtin_sym_end); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(16); END_STATE(); case 10: - ACCEPT_TOKEN(sym_integer_literal); - if (('0' <= lookahead && lookahead <= '9')) ADVANCE(10); - if (('A' <= lookahead && lookahead <= 'Z') || - lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(14); + ACCEPT_TOKEN(ts_builtin_sym_end); END_STATE(); case 11: - ACCEPT_TOKEN(anon_sym_DQUOTE); + ACCEPT_TOKEN(sym_integer_literal); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(11); + if (('A' <= lookahead && lookahead <= 'Z') || + lookahead == '_' || + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(16); END_STATE(); case 12: + ACCEPT_TOKEN(sym_integer_literal); + if (('0' <= lookahead && lookahead <= '9')) ADVANCE(12); + END_STATE(); + case 13: + ACCEPT_TOKEN(anon_sym_DQUOTE); + END_STATE(); + case 14: ACCEPT_TOKEN(aux_sym_string_literal_token1); if (lookahead == '\t' || lookahead == '\n' || lookahead == '\r' || - lookahead == ' ') ADVANCE(12); + lookahead == ' ') ADVANCE(14); if (lookahead != 0 && lookahead != '"' && - lookahead != '\\') ADVANCE(13); + lookahead != '\\') ADVANCE(15); END_STATE(); - case 13: + case 15: ACCEPT_TOKEN(aux_sym_string_literal_token1); if (lookahead != 0 && lookahead != '"' && - lookahead != '\\') ADVANCE(13); + lookahead != '\\') ADVANCE(15); END_STATE(); - case 14: + case 16: ACCEPT_TOKEN(sym_identifier); if (('0' <= lookahead && lookahead <= '9') || ('A' <= lookahead && lookahead <= 'Z') || lookahead == '_' || - ('a' <= lookahead && lookahead <= 'z')) ADVANCE(14); - END_STATE(); - case 15: - ACCEPT_TOKEN(sym_escape_sequence); - END_STATE(); - case 16: - ACCEPT_TOKEN(anon_sym_DOT); + ('a' <= lookahead && lookahead <= 'z')) ADVANCE(16); END_STATE(); case 17: - ACCEPT_TOKEN(anon_sym_LBRACK); + ACCEPT_TOKEN(sym_escape_sequence); END_STATE(); case 18: - ACCEPT_TOKEN(anon_sym_RBRACK); + ACCEPT_TOKEN(anon_sym_DOT); END_STATE(); case 19: - ACCEPT_TOKEN(anon_sym_LPAREN); + ACCEPT_TOKEN(anon_sym_LBRACK); END_STATE(); case 20: - ACCEPT_TOKEN(anon_sym_COMMA); + ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); case 21: - ACCEPT_TOKEN(anon_sym_RPAREN); + ACCEPT_TOKEN(anon_sym_LPAREN); END_STATE(); case 22: - ACCEPT_TOKEN(anon_sym_DASH); + ACCEPT_TOKEN(anon_sym_COMMA); END_STATE(); case 23: - ACCEPT_TOKEN(anon_sym_STAR); + ACCEPT_TOKEN(anon_sym_RPAREN); END_STATE(); case 24: - ACCEPT_TOKEN(anon_sym_SLASH); + ACCEPT_TOKEN(anon_sym_DASH); END_STATE(); case 25: - ACCEPT_TOKEN(anon_sym_PLUS); + ACCEPT_TOKEN(anon_sym_STAR); END_STATE(); case 26: - ACCEPT_TOKEN(anon_sym_GT_EQ); + ACCEPT_TOKEN(anon_sym_SLASH); END_STATE(); case 27: - ACCEPT_TOKEN(anon_sym_LT_EQ); + ACCEPT_TOKEN(anon_sym_PLUS); END_STATE(); case 28: - ACCEPT_TOKEN(anon_sym_EQ); + ACCEPT_TOKEN(anon_sym_GT_EQ); END_STATE(); case 29: - ACCEPT_TOKEN(anon_sym_LT_GT); + ACCEPT_TOKEN(anon_sym_LT_EQ); END_STATE(); case 30: - ACCEPT_TOKEN(anon_sym_LT); - if (lookahead == '=') ADVANCE(27); - if (lookahead == '>') ADVANCE(29); + ACCEPT_TOKEN(anon_sym_EQ); END_STATE(); case 31: - ACCEPT_TOKEN(anon_sym_GT); - if (lookahead == '=') ADVANCE(26); + ACCEPT_TOKEN(anon_sym_LT_GT); END_STATE(); case 32: - ACCEPT_TOKEN(anon_sym_AMP); + ACCEPT_TOKEN(anon_sym_LT); + if (lookahead == '=') ADVANCE(29); + if (lookahead == '>') ADVANCE(31); END_STATE(); case 33: - ACCEPT_TOKEN(anon_sym_PIPE); + ACCEPT_TOKEN(anon_sym_GT); + if (lookahead == '=') ADVANCE(28); END_STATE(); case 34: - ACCEPT_TOKEN(anon_sym_SEMI); + ACCEPT_TOKEN(anon_sym_AMP); END_STATE(); case 35: - ACCEPT_TOKEN(anon_sym_LBRACE); + ACCEPT_TOKEN(anon_sym_PIPE); END_STATE(); case 36: - ACCEPT_TOKEN(anon_sym_RBRACE); + ACCEPT_TOKEN(anon_sym_SEMI); END_STATE(); case 37: - ACCEPT_TOKEN(anon_sym_COLON_EQ); + ACCEPT_TOKEN(anon_sym_LBRACE); END_STATE(); case 38: + ACCEPT_TOKEN(anon_sym_RBRACE); + END_STATE(); + case 39: + ACCEPT_TOKEN(anon_sym_COLON_EQ); + END_STATE(); + case 40: ACCEPT_TOKEN(anon_sym_COLON); - if (lookahead == '=') ADVANCE(37); + if (lookahead == '=') ADVANCE(39); END_STATE(); default: return false; @@ -1183,231 +1295,311 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { lookahead == '\n' || lookahead == '\r' || lookahead == ' ') SKIP(0) - if (lookahead == 'a') ADVANCE(1); - if (lookahead == 'b') ADVANCE(2); - if (lookahead == 'd') ADVANCE(3); - if (lookahead == 'e') ADVANCE(4); - if (lookahead == 'f') ADVANCE(5); - if (lookahead == 'i') ADVANCE(6); - if (lookahead == 'l') ADVANCE(7); - if (lookahead == 'n') ADVANCE(8); - if (lookahead == 'o') ADVANCE(9); - if (lookahead == 'p') ADVANCE(10); - if (lookahead == 't') ADVANCE(11); - if (lookahead == 'v') ADVANCE(12); - if (lookahead == 'w') ADVANCE(13); + if (lookahead == '_') ADVANCE(1); + if (lookahead == 'a') ADVANCE(2); + if (lookahead == 'b') ADVANCE(3); + if (lookahead == 'd') ADVANCE(4); + if (lookahead == 'e') ADVANCE(5); + if (lookahead == 'f') ADVANCE(6); + if (lookahead == 'i') ADVANCE(7); + if (lookahead == 'l') ADVANCE(8); + if (lookahead == 'n') ADVANCE(9); + if (lookahead == 'o') ADVANCE(10); + if (lookahead == 'p') ADVANCE(11); + if (lookahead == 't') ADVANCE(12); + if (lookahead == 'v') ADVANCE(13); + if (lookahead == 'w') ADVANCE(14); END_STATE(); case 1: - if (lookahead == 'r') ADVANCE(14); - END_STATE(); - case 2: - if (lookahead == 'r') ADVANCE(15); - END_STATE(); - case 3: - if (lookahead == 'o') ADVANCE(16); - END_STATE(); - case 4: + if (lookahead == 'c') ADVANCE(15); + if (lookahead == 'e') ADVANCE(16); if (lookahead == 'l') ADVANCE(17); if (lookahead == 'n') ADVANCE(18); END_STATE(); - case 5: - if (lookahead == 'o') ADVANCE(19); - if (lookahead == 'u') ADVANCE(20); + case 2: + if (lookahead == 'r') ADVANCE(19); END_STATE(); - case 6: - if (lookahead == 'f') ADVANCE(21); - if (lookahead == 'm') ADVANCE(22); + case 3: + if (lookahead == 'r') ADVANCE(20); + END_STATE(); + case 4: + if (lookahead == 'o') ADVANCE(21); + END_STATE(); + case 5: + if (lookahead == 'l') ADVANCE(22); if (lookahead == 'n') ADVANCE(23); END_STATE(); + case 6: + if (lookahead == 'o') ADVANCE(24); + if (lookahead == 'u') ADVANCE(25); + END_STATE(); case 7: - if (lookahead == 'e') ADVANCE(24); + if (lookahead == 'f') ADVANCE(26); + if (lookahead == 'm') ADVANCE(27); + if (lookahead == 'n') ADVANCE(28); END_STATE(); case 8: - if (lookahead == 'i') ADVANCE(25); + if (lookahead == 'e') ADVANCE(29); END_STATE(); case 9: - if (lookahead == 'f') ADVANCE(26); + if (lookahead == 'i') ADVANCE(30); END_STATE(); case 10: - if (lookahead == 'r') ADVANCE(27); + if (lookahead == 'f') ADVANCE(31); END_STATE(); case 11: - if (lookahead == 'h') ADVANCE(28); - if (lookahead == 'o') ADVANCE(29); - if (lookahead == 'y') ADVANCE(30); + if (lookahead == 'r') ADVANCE(32); END_STATE(); case 12: - if (lookahead == 'a') ADVANCE(31); + if (lookahead == 'h') ADVANCE(33); + if (lookahead == 'o') ADVANCE(34); + if (lookahead == 'y') ADVANCE(35); END_STATE(); case 13: - if (lookahead == 'h') ADVANCE(32); + if (lookahead == 'a') ADVANCE(36); END_STATE(); case 14: - if (lookahead == 'r') ADVANCE(33); + if (lookahead == 'h') ADVANCE(37); END_STATE(); case 15: - if (lookahead == 'e') ADVANCE(34); + if (lookahead == 'a') ADVANCE(38); + if (lookahead == 'h') ADVANCE(39); END_STATE(); case 16: - ACCEPT_TOKEN(anon_sym_do); + if (lookahead == 'x') ADVANCE(40); END_STATE(); case 17: - if (lookahead == 's') ADVANCE(35); + if (lookahead == 'v') ADVANCE(41); END_STATE(); case 18: - if (lookahead == 'd') ADVANCE(36); + if (lookahead == 'a') ADVANCE(42); END_STATE(); case 19: - if (lookahead == 'r') ADVANCE(37); + if (lookahead == 'r') ADVANCE(43); END_STATE(); case 20: - if (lookahead == 'n') ADVANCE(38); + if (lookahead == 'e') ADVANCE(44); END_STATE(); case 21: - ACCEPT_TOKEN(anon_sym_if); + ACCEPT_TOKEN(anon_sym_do); END_STATE(); case 22: - if (lookahead == 'p') ADVANCE(39); + if (lookahead == 's') ADVANCE(45); END_STATE(); case 23: - ACCEPT_TOKEN(anon_sym_in); + if (lookahead == 'd') ADVANCE(46); END_STATE(); case 24: - if (lookahead == 't') ADVANCE(40); + if (lookahead == 'r') ADVANCE(47); END_STATE(); case 25: - if (lookahead == 'l') ADVANCE(41); + if (lookahead == 'n') ADVANCE(48); END_STATE(); case 26: - ACCEPT_TOKEN(anon_sym_of); + ACCEPT_TOKEN(anon_sym_if); END_STATE(); case 27: - if (lookahead == 'i') ADVANCE(42); + if (lookahead == 'p') ADVANCE(49); END_STATE(); case 28: - if (lookahead == 'e') ADVANCE(43); + ACCEPT_TOKEN(anon_sym_in); END_STATE(); case 29: - ACCEPT_TOKEN(anon_sym_to); + if (lookahead == 't') ADVANCE(50); END_STATE(); case 30: - if (lookahead == 'p') ADVANCE(44); + if (lookahead == 'l') ADVANCE(51); END_STATE(); case 31: - if (lookahead == 'r') ADVANCE(45); + ACCEPT_TOKEN(anon_sym_of); END_STATE(); case 32: - if (lookahead == 'i') ADVANCE(46); + if (lookahead == 'i') ADVANCE(52); END_STATE(); case 33: - if (lookahead == 'a') ADVANCE(47); + if (lookahead == 'e') ADVANCE(53); END_STATE(); case 34: - if (lookahead == 'a') ADVANCE(48); + ACCEPT_TOKEN(anon_sym_to); END_STATE(); case 35: - if (lookahead == 'e') ADVANCE(49); + if (lookahead == 'p') ADVANCE(54); END_STATE(); case 36: - ACCEPT_TOKEN(anon_sym_end); + if (lookahead == 'r') ADVANCE(55); END_STATE(); case 37: - ACCEPT_TOKEN(anon_sym_for); + if (lookahead == 'i') ADVANCE(56); END_STATE(); case 38: - if (lookahead == 'c') ADVANCE(50); + if (lookahead == 's') ADVANCE(57); END_STATE(); case 39: - if (lookahead == 'o') ADVANCE(51); + if (lookahead == 'u') ADVANCE(58); END_STATE(); case 40: - ACCEPT_TOKEN(anon_sym_let); + if (lookahead == 'p') ADVANCE(59); END_STATE(); case 41: - ACCEPT_TOKEN(sym_nil_literal); + if (lookahead == 'a') ADVANCE(60); END_STATE(); case 42: - if (lookahead == 'm') ADVANCE(52); + if (lookahead == 'm') ADVANCE(61); END_STATE(); case 43: - if (lookahead == 'n') ADVANCE(53); + if (lookahead == 'a') ADVANCE(62); END_STATE(); case 44: - if (lookahead == 'e') ADVANCE(54); + if (lookahead == 'a') ADVANCE(63); END_STATE(); case 45: - ACCEPT_TOKEN(anon_sym_var); + if (lookahead == 'e') ADVANCE(64); END_STATE(); case 46: - if (lookahead == 'l') ADVANCE(55); + ACCEPT_TOKEN(anon_sym_end); END_STATE(); case 47: - if (lookahead == 'y') ADVANCE(56); + ACCEPT_TOKEN(anon_sym_for); END_STATE(); case 48: - if (lookahead == 'k') ADVANCE(57); + if (lookahead == 'c') ADVANCE(65); END_STATE(); case 49: - ACCEPT_TOKEN(anon_sym_else); + if (lookahead == 'o') ADVANCE(66); END_STATE(); case 50: - if (lookahead == 't') ADVANCE(58); + ACCEPT_TOKEN(anon_sym_let); END_STATE(); case 51: - if (lookahead == 'r') ADVANCE(59); + ACCEPT_TOKEN(sym_nil_literal); END_STATE(); case 52: - if (lookahead == 'i') ADVANCE(60); + if (lookahead == 'm') ADVANCE(67); END_STATE(); case 53: - ACCEPT_TOKEN(anon_sym_then); + if (lookahead == 'n') ADVANCE(68); END_STATE(); case 54: - ACCEPT_TOKEN(anon_sym_type); - END_STATE(); - case 55: - if (lookahead == 'e') ADVANCE(61); - END_STATE(); - case 56: - ACCEPT_TOKEN(anon_sym_array); - END_STATE(); - case 57: - ACCEPT_TOKEN(sym_break_expression); - END_STATE(); - case 58: - if (lookahead == 'i') ADVANCE(62); - END_STATE(); - case 59: - if (lookahead == 't') ADVANCE(63); - END_STATE(); - case 60: - if (lookahead == 't') ADVANCE(64); - END_STATE(); - case 61: - ACCEPT_TOKEN(anon_sym_while); - END_STATE(); - case 62: - if (lookahead == 'o') ADVANCE(65); - END_STATE(); - case 63: - ACCEPT_TOKEN(anon_sym_import); - END_STATE(); - case 64: - if (lookahead == 'i') ADVANCE(66); - END_STATE(); - case 65: - if (lookahead == 'n') ADVANCE(67); - END_STATE(); - case 66: - if (lookahead == 'v') ADVANCE(68); - END_STATE(); - case 67: - ACCEPT_TOKEN(anon_sym_function); - END_STATE(); - case 68: if (lookahead == 'e') ADVANCE(69); END_STATE(); + case 55: + ACCEPT_TOKEN(anon_sym_var); + END_STATE(); + case 56: + if (lookahead == 'l') ADVANCE(70); + END_STATE(); + case 57: + if (lookahead == 't') ADVANCE(71); + END_STATE(); + case 58: + if (lookahead == 'n') ADVANCE(72); + END_STATE(); + case 59: + ACCEPT_TOKEN(anon_sym__exp); + END_STATE(); + case 60: + if (lookahead == 'l') ADVANCE(73); + END_STATE(); + case 61: + if (lookahead == 'e') ADVANCE(74); + END_STATE(); + case 62: + if (lookahead == 'y') ADVANCE(75); + END_STATE(); + case 63: + if (lookahead == 'k') ADVANCE(76); + END_STATE(); + case 64: + ACCEPT_TOKEN(anon_sym_else); + END_STATE(); + case 65: + if (lookahead == 't') ADVANCE(77); + END_STATE(); + case 66: + if (lookahead == 'r') ADVANCE(78); + END_STATE(); + case 67: + if (lookahead == 'i') ADVANCE(79); + END_STATE(); + case 68: + ACCEPT_TOKEN(anon_sym_then); + END_STATE(); case 69: + ACCEPT_TOKEN(anon_sym_type); + END_STATE(); + case 70: + if (lookahead == 'e') ADVANCE(80); + END_STATE(); + case 71: + ACCEPT_TOKEN(anon_sym__cast); + END_STATE(); + case 72: + if (lookahead == 'k') ADVANCE(81); + END_STATE(); + case 73: + if (lookahead == 'u') ADVANCE(82); + END_STATE(); + case 74: + if (lookahead == 't') ADVANCE(83); + END_STATE(); + case 75: + ACCEPT_TOKEN(anon_sym_array); + END_STATE(); + case 76: + ACCEPT_TOKEN(sym_break_expression); + END_STATE(); + case 77: + if (lookahead == 'i') ADVANCE(84); + END_STATE(); + case 78: + if (lookahead == 't') ADVANCE(85); + END_STATE(); + case 79: + if (lookahead == 't') ADVANCE(86); + END_STATE(); + case 80: + ACCEPT_TOKEN(anon_sym_while); + END_STATE(); + case 81: + if (lookahead == 's') ADVANCE(87); + END_STATE(); + case 82: + if (lookahead == 'e') ADVANCE(88); + END_STATE(); + case 83: + if (lookahead == 'y') ADVANCE(89); + END_STATE(); + case 84: + if (lookahead == 'o') ADVANCE(90); + END_STATE(); + case 85: + ACCEPT_TOKEN(anon_sym_import); + END_STATE(); + case 86: + if (lookahead == 'i') ADVANCE(91); + END_STATE(); + case 87: + ACCEPT_TOKEN(anon_sym__chunks); + END_STATE(); + case 88: + ACCEPT_TOKEN(anon_sym__lvalue); + END_STATE(); + case 89: + ACCEPT_TOKEN(anon_sym__namety); + END_STATE(); + case 90: + if (lookahead == 'n') ADVANCE(92); + END_STATE(); + case 91: + if (lookahead == 'v') ADVANCE(93); + END_STATE(); + case 92: + ACCEPT_TOKEN(anon_sym_function); + END_STATE(); + case 93: + if (lookahead == 'e') ADVANCE(94); + END_STATE(); + case 94: ACCEPT_TOKEN(anon_sym_primitive); END_STATE(); default: @@ -1418,164 +1610,219 @@ static bool ts_lex_keywords(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0, .external_lex_state = 1}, [1] = {.lex_state = 0, .external_lex_state = 1}, - [2] = {.lex_state = 8, .external_lex_state = 1}, - [3] = {.lex_state = 8, .external_lex_state = 1}, - [4] = {.lex_state = 8, .external_lex_state = 1}, - [5] = {.lex_state = 8, .external_lex_state = 1}, - [6] = {.lex_state = 8, .external_lex_state = 1}, - [7] = {.lex_state = 8, .external_lex_state = 1}, - [8] = {.lex_state = 8, .external_lex_state = 1}, - [9] = {.lex_state = 8, .external_lex_state = 1}, - [10] = {.lex_state = 8, .external_lex_state = 1}, - [11] = {.lex_state = 8, .external_lex_state = 1}, - [12] = {.lex_state = 8, .external_lex_state = 1}, - [13] = {.lex_state = 8, .external_lex_state = 1}, - [14] = {.lex_state = 8, .external_lex_state = 1}, - [15] = {.lex_state = 8, .external_lex_state = 1}, - [16] = {.lex_state = 8, .external_lex_state = 1}, - [17] = {.lex_state = 8, .external_lex_state = 1}, - [18] = {.lex_state = 8, .external_lex_state = 1}, - [19] = {.lex_state = 8, .external_lex_state = 1}, - [20] = {.lex_state = 8, .external_lex_state = 1}, - [21] = {.lex_state = 8, .external_lex_state = 1}, - [22] = {.lex_state = 8, .external_lex_state = 1}, - [23] = {.lex_state = 8, .external_lex_state = 1}, - [24] = {.lex_state = 8, .external_lex_state = 1}, - [25] = {.lex_state = 8, .external_lex_state = 1}, - [26] = {.lex_state = 8, .external_lex_state = 1}, - [27] = {.lex_state = 8, .external_lex_state = 1}, - [28] = {.lex_state = 8, .external_lex_state = 1}, - [29] = {.lex_state = 8, .external_lex_state = 1}, - [30] = {.lex_state = 8, .external_lex_state = 1}, - [31] = {.lex_state = 8, .external_lex_state = 1}, - [32] = {.lex_state = 8, .external_lex_state = 1}, - [33] = {.lex_state = 8, .external_lex_state = 1}, - [34] = {.lex_state = 8, .external_lex_state = 1}, + [2] = {.lex_state = 0, .external_lex_state = 1}, + [3] = {.lex_state = 0, .external_lex_state = 1}, + [4] = {.lex_state = 0, .external_lex_state = 1}, + [5] = {.lex_state = 0, .external_lex_state = 1}, + [6] = {.lex_state = 0, .external_lex_state = 1}, + [7] = {.lex_state = 0, .external_lex_state = 1}, + [8] = {.lex_state = 0, .external_lex_state = 1}, + [9] = {.lex_state = 0, .external_lex_state = 1}, + [10] = {.lex_state = 0, .external_lex_state = 1}, + [11] = {.lex_state = 0, .external_lex_state = 1}, + [12] = {.lex_state = 0, .external_lex_state = 1}, + [13] = {.lex_state = 0, .external_lex_state = 1}, + [14] = {.lex_state = 0, .external_lex_state = 1}, + [15] = {.lex_state = 0, .external_lex_state = 1}, + [16] = {.lex_state = 0, .external_lex_state = 1}, + [17] = {.lex_state = 0, .external_lex_state = 1}, + [18] = {.lex_state = 0, .external_lex_state = 1}, + [19] = {.lex_state = 0, .external_lex_state = 1}, + [20] = {.lex_state = 0, .external_lex_state = 1}, + [21] = {.lex_state = 0, .external_lex_state = 1}, + [22] = {.lex_state = 0, .external_lex_state = 1}, + [23] = {.lex_state = 0, .external_lex_state = 1}, + [24] = {.lex_state = 0, .external_lex_state = 1}, + [25] = {.lex_state = 0, .external_lex_state = 1}, + [26] = {.lex_state = 0, .external_lex_state = 1}, + [27] = {.lex_state = 0, .external_lex_state = 1}, + [28] = {.lex_state = 0, .external_lex_state = 1}, + [29] = {.lex_state = 0, .external_lex_state = 1}, + [30] = {.lex_state = 0, .external_lex_state = 1}, + [31] = {.lex_state = 0, .external_lex_state = 1}, + [32] = {.lex_state = 0, .external_lex_state = 1}, + [33] = {.lex_state = 0, .external_lex_state = 1}, + [34] = {.lex_state = 0, .external_lex_state = 1}, [35] = {.lex_state = 0, .external_lex_state = 1}, [36] = {.lex_state = 0, .external_lex_state = 1}, - [37] = {.lex_state = 0, .external_lex_state = 1}, + [37] = {.lex_state = 9, .external_lex_state = 1}, [38] = {.lex_state = 0, .external_lex_state = 1}, - [39] = {.lex_state = 0, .external_lex_state = 1}, - [40] = {.lex_state = 0, .external_lex_state = 1}, - [41] = {.lex_state = 0, .external_lex_state = 1}, - [42] = {.lex_state = 0, .external_lex_state = 1}, - [43] = {.lex_state = 0, .external_lex_state = 1}, - [44] = {.lex_state = 0, .external_lex_state = 1}, - [45] = {.lex_state = 0, .external_lex_state = 1}, - [46] = {.lex_state = 0, .external_lex_state = 1}, - [47] = {.lex_state = 0, .external_lex_state = 1}, - [48] = {.lex_state = 0, .external_lex_state = 1}, - [49] = {.lex_state = 0, .external_lex_state = 1}, - [50] = {.lex_state = 0, .external_lex_state = 1}, - [51] = {.lex_state = 0, .external_lex_state = 1}, - [52] = {.lex_state = 0, .external_lex_state = 1}, - [53] = {.lex_state = 0, .external_lex_state = 1}, - [54] = {.lex_state = 0, .external_lex_state = 1}, - [55] = {.lex_state = 0, .external_lex_state = 1}, - [56] = {.lex_state = 0, .external_lex_state = 1}, - [57] = {.lex_state = 0, .external_lex_state = 1}, - [58] = {.lex_state = 0, .external_lex_state = 1}, - [59] = {.lex_state = 0, .external_lex_state = 1}, - [60] = {.lex_state = 0, .external_lex_state = 1}, - [61] = {.lex_state = 0, .external_lex_state = 1}, - [62] = {.lex_state = 0, .external_lex_state = 1}, - [63] = {.lex_state = 0, .external_lex_state = 1}, - [64] = {.lex_state = 0, .external_lex_state = 1}, - [65] = {.lex_state = 8, .external_lex_state = 1}, - [66] = {.lex_state = 8, .external_lex_state = 1}, - [67] = {.lex_state = 8, .external_lex_state = 1}, - [68] = {.lex_state = 8, .external_lex_state = 1}, - [69] = {.lex_state = 8, .external_lex_state = 1}, - [70] = {.lex_state = 0, .external_lex_state = 1}, - [71] = {.lex_state = 8, .external_lex_state = 1}, - [72] = {.lex_state = 0, .external_lex_state = 1}, - [73] = {.lex_state = 8, .external_lex_state = 1}, - [74] = {.lex_state = 8, .external_lex_state = 1}, - [75] = {.lex_state = 8, .external_lex_state = 1}, - [76] = {.lex_state = 8, .external_lex_state = 1}, - [77] = {.lex_state = 0, .external_lex_state = 1}, - [78] = {.lex_state = 8, .external_lex_state = 1}, - [79] = {.lex_state = 0, .external_lex_state = 1}, - [80] = {.lex_state = 0, .external_lex_state = 1}, - [81] = {.lex_state = 0, .external_lex_state = 1}, - [82] = {.lex_state = 0, .external_lex_state = 1}, - [83] = {.lex_state = 8, .external_lex_state = 1}, - [84] = {.lex_state = 0, .external_lex_state = 1}, - [85] = {.lex_state = 8, .external_lex_state = 1}, - [86] = {.lex_state = 8, .external_lex_state = 1}, - [87] = {.lex_state = 8, .external_lex_state = 1}, - [88] = {.lex_state = 8, .external_lex_state = 1}, - [89] = {.lex_state = 8, .external_lex_state = 1}, - [90] = {.lex_state = 8, .external_lex_state = 1}, - [91] = {.lex_state = 8, .external_lex_state = 1}, - [92] = {.lex_state = 8, .external_lex_state = 1}, - [93] = {.lex_state = 8, .external_lex_state = 1}, - [94] = {.lex_state = 8, .external_lex_state = 1}, - [95] = {.lex_state = 8, .external_lex_state = 1}, - [96] = {.lex_state = 8, .external_lex_state = 1}, - [97] = {.lex_state = 8, .external_lex_state = 1}, - [98] = {.lex_state = 8, .external_lex_state = 1}, - [99] = {.lex_state = 8, .external_lex_state = 1}, - [100] = {.lex_state = 8, .external_lex_state = 1}, - [101] = {.lex_state = 8, .external_lex_state = 1}, - [102] = {.lex_state = 8, .external_lex_state = 1}, - [103] = {.lex_state = 1, .external_lex_state = 1}, - [104] = {.lex_state = 8, .external_lex_state = 1}, - [105] = {.lex_state = 1, .external_lex_state = 1}, - [106] = {.lex_state = 1, .external_lex_state = 1}, - [107] = {.lex_state = 0, .external_lex_state = 1}, - [108] = {.lex_state = 8, .external_lex_state = 1}, - [109] = {.lex_state = 0, .external_lex_state = 1}, - [110] = {.lex_state = 8, .external_lex_state = 1}, - [111] = {.lex_state = 0, .external_lex_state = 1}, - [112] = {.lex_state = 0, .external_lex_state = 1}, - [113] = {.lex_state = 0, .external_lex_state = 1}, - [114] = {.lex_state = 0, .external_lex_state = 1}, - [115] = {.lex_state = 0, .external_lex_state = 1}, - [116] = {.lex_state = 0, .external_lex_state = 1}, - [117] = {.lex_state = 0, .external_lex_state = 1}, - [118] = {.lex_state = 0, .external_lex_state = 1}, - [119] = {.lex_state = 0, .external_lex_state = 1}, - [120] = {.lex_state = 8, .external_lex_state = 1}, - [121] = {.lex_state = 0, .external_lex_state = 1}, - [122] = {.lex_state = 0, .external_lex_state = 1}, - [123] = {.lex_state = 0, .external_lex_state = 1}, - [124] = {.lex_state = 0, .external_lex_state = 1}, - [125] = {.lex_state = 0, .external_lex_state = 1}, - [126] = {.lex_state = 0, .external_lex_state = 1}, - [127] = {.lex_state = 0, .external_lex_state = 1}, - [128] = {.lex_state = 8, .external_lex_state = 1}, - [129] = {.lex_state = 8, .external_lex_state = 1}, - [130] = {.lex_state = 8, .external_lex_state = 1}, - [131] = {.lex_state = 8, .external_lex_state = 1}, - [132] = {.lex_state = 0, .external_lex_state = 1}, - [133] = {.lex_state = 8, .external_lex_state = 1}, - [134] = {.lex_state = 8, .external_lex_state = 1}, + [39] = {.lex_state = 9, .external_lex_state = 1}, + [40] = {.lex_state = 9, .external_lex_state = 1}, + [41] = {.lex_state = 9, .external_lex_state = 1}, + [42] = {.lex_state = 9, .external_lex_state = 1}, + [43] = {.lex_state = 9, .external_lex_state = 1}, + [44] = {.lex_state = 9, .external_lex_state = 1}, + [45] = {.lex_state = 9, .external_lex_state = 1}, + [46] = {.lex_state = 9, .external_lex_state = 1}, + [47] = {.lex_state = 9, .external_lex_state = 1}, + [48] = {.lex_state = 9, .external_lex_state = 1}, + [49] = {.lex_state = 9, .external_lex_state = 1}, + [50] = {.lex_state = 9, .external_lex_state = 1}, + [51] = {.lex_state = 9, .external_lex_state = 1}, + [52] = {.lex_state = 9, .external_lex_state = 1}, + [53] = {.lex_state = 9, .external_lex_state = 1}, + [54] = {.lex_state = 9, .external_lex_state = 1}, + [55] = {.lex_state = 9, .external_lex_state = 1}, + [56] = {.lex_state = 9, .external_lex_state = 1}, + [57] = {.lex_state = 9, .external_lex_state = 1}, + [58] = {.lex_state = 9, .external_lex_state = 1}, + [59] = {.lex_state = 9, .external_lex_state = 1}, + [60] = {.lex_state = 9, .external_lex_state = 1}, + [61] = {.lex_state = 9, .external_lex_state = 1}, + [62] = {.lex_state = 9, .external_lex_state = 1}, + [63] = {.lex_state = 9, .external_lex_state = 1}, + [64] = {.lex_state = 9, .external_lex_state = 1}, + [65] = {.lex_state = 9, .external_lex_state = 1}, + [66] = {.lex_state = 9, .external_lex_state = 1}, + [67] = {.lex_state = 9, .external_lex_state = 1}, + [68] = {.lex_state = 9, .external_lex_state = 1}, + [69] = {.lex_state = 9, .external_lex_state = 1}, + [70] = {.lex_state = 9, .external_lex_state = 1}, + [71] = {.lex_state = 9, .external_lex_state = 1}, + [72] = {.lex_state = 9, .external_lex_state = 1}, + [73] = {.lex_state = 9, .external_lex_state = 1}, + [74] = {.lex_state = 9, .external_lex_state = 1}, + [75] = {.lex_state = 9, .external_lex_state = 1}, + [76] = {.lex_state = 9, .external_lex_state = 1}, + [77] = {.lex_state = 9, .external_lex_state = 1}, + [78] = {.lex_state = 9, .external_lex_state = 1}, + [79] = {.lex_state = 9, .external_lex_state = 1}, + [80] = {.lex_state = 9, .external_lex_state = 1}, + [81] = {.lex_state = 9, .external_lex_state = 1}, + [82] = {.lex_state = 9, .external_lex_state = 1}, + [83] = {.lex_state = 9, .external_lex_state = 1}, + [84] = {.lex_state = 9, .external_lex_state = 1}, + [85] = {.lex_state = 9, .external_lex_state = 1}, + [86] = {.lex_state = 9, .external_lex_state = 1}, + [87] = {.lex_state = 9, .external_lex_state = 1}, + [88] = {.lex_state = 9, .external_lex_state = 1}, + [89] = {.lex_state = 0, .external_lex_state = 1}, + [90] = {.lex_state = 9, .external_lex_state = 1}, + [91] = {.lex_state = 0, .external_lex_state = 1}, + [92] = {.lex_state = 0, .external_lex_state = 1}, + [93] = {.lex_state = 9, .external_lex_state = 1}, + [94] = {.lex_state = 0, .external_lex_state = 1}, + [95] = {.lex_state = 9, .external_lex_state = 1}, + [96] = {.lex_state = 0, .external_lex_state = 1}, + [97] = {.lex_state = 0, .external_lex_state = 1}, + [98] = {.lex_state = 0, .external_lex_state = 1}, + [99] = {.lex_state = 9, .external_lex_state = 1}, + [100] = {.lex_state = 0, .external_lex_state = 1}, + [101] = {.lex_state = 0, .external_lex_state = 1}, + [102] = {.lex_state = 9, .external_lex_state = 1}, + [103] = {.lex_state = 9, .external_lex_state = 1}, + [104] = {.lex_state = 0, .external_lex_state = 1}, + [105] = {.lex_state = 9, .external_lex_state = 1}, + [106] = {.lex_state = 0, .external_lex_state = 1}, + [107] = {.lex_state = 9, .external_lex_state = 1}, + [108] = {.lex_state = 9, .external_lex_state = 1}, + [109] = {.lex_state = 9, .external_lex_state = 1}, + [110] = {.lex_state = 9, .external_lex_state = 1}, + [111] = {.lex_state = 9, .external_lex_state = 1}, + [112] = {.lex_state = 9, .external_lex_state = 1}, + [113] = {.lex_state = 9, .external_lex_state = 1}, + [114] = {.lex_state = 9, .external_lex_state = 1}, + [115] = {.lex_state = 9, .external_lex_state = 1}, + [116] = {.lex_state = 9, .external_lex_state = 1}, + [117] = {.lex_state = 9, .external_lex_state = 1}, + [118] = {.lex_state = 9, .external_lex_state = 1}, + [119] = {.lex_state = 9, .external_lex_state = 1}, + [120] = {.lex_state = 9, .external_lex_state = 1}, + [121] = {.lex_state = 9, .external_lex_state = 1}, + [122] = {.lex_state = 9, .external_lex_state = 1}, + [123] = {.lex_state = 9, .external_lex_state = 1}, + [124] = {.lex_state = 9, .external_lex_state = 1}, + [125] = {.lex_state = 9, .external_lex_state = 1}, + [126] = {.lex_state = 9, .external_lex_state = 1}, + [127] = {.lex_state = 9, .external_lex_state = 1}, + [128] = {.lex_state = 9, .external_lex_state = 1}, + [129] = {.lex_state = 9, .external_lex_state = 1}, + [130] = {.lex_state = 9, .external_lex_state = 1}, + [131] = {.lex_state = 9, .external_lex_state = 1}, + [132] = {.lex_state = 1, .external_lex_state = 1}, + [133] = {.lex_state = 1, .external_lex_state = 1}, + [134] = {.lex_state = 1, .external_lex_state = 1}, [135] = {.lex_state = 0, .external_lex_state = 1}, [136] = {.lex_state = 0, .external_lex_state = 1}, - [137] = {.lex_state = 0, .external_lex_state = 1}, - [138] = {.lex_state = 0, .external_lex_state = 1}, - [139] = {.lex_state = 8, .external_lex_state = 1}, - [140] = {.lex_state = 8, .external_lex_state = 1}, - [141] = {.lex_state = 8, .external_lex_state = 1}, + [137] = {.lex_state = 9, .external_lex_state = 1}, + [138] = {.lex_state = 9, .external_lex_state = 1}, + [139] = {.lex_state = 9, .external_lex_state = 1}, + [140] = {.lex_state = 0, .external_lex_state = 1}, + [141] = {.lex_state = 0, .external_lex_state = 1}, [142] = {.lex_state = 0, .external_lex_state = 1}, [143] = {.lex_state = 0, .external_lex_state = 1}, - [144] = {.lex_state = 8, .external_lex_state = 1}, - [145] = {.lex_state = 8, .external_lex_state = 1}, - [146] = {.lex_state = 8, .external_lex_state = 1}, - [147] = {.lex_state = 8, .external_lex_state = 1}, + [144] = {.lex_state = 0, .external_lex_state = 1}, + [145] = {.lex_state = 9, .external_lex_state = 1}, + [146] = {.lex_state = 9, .external_lex_state = 1}, + [147] = {.lex_state = 0, .external_lex_state = 1}, [148] = {.lex_state = 0, .external_lex_state = 1}, - [149] = {.lex_state = 0, .external_lex_state = 1}, + [149] = {.lex_state = 9, .external_lex_state = 1}, [150] = {.lex_state = 0, .external_lex_state = 1}, - [151] = {.lex_state = 8, .external_lex_state = 1}, - [152] = {.lex_state = 8, .external_lex_state = 1}, - [153] = {.lex_state = 0, .external_lex_state = 1}, - [154] = {.lex_state = 8, .external_lex_state = 1}, - [155] = {.lex_state = 8, .external_lex_state = 1}, - [156] = {.lex_state = 8, .external_lex_state = 1}, - [157] = {.lex_state = 8, .external_lex_state = 1}, - [158] = {.lex_state = 8, .external_lex_state = 1}, - [159] = {.lex_state = 8, .external_lex_state = 1}, + [151] = {.lex_state = 9, .external_lex_state = 1}, + [152] = {.lex_state = 0, .external_lex_state = 1}, + [153] = {.lex_state = 9, .external_lex_state = 1}, + [154] = {.lex_state = 9, .external_lex_state = 1}, + [155] = {.lex_state = 0, .external_lex_state = 1}, + [156] = {.lex_state = 0, .external_lex_state = 1}, + [157] = {.lex_state = 0, .external_lex_state = 1}, + [158] = {.lex_state = 9, .external_lex_state = 1}, + [159] = {.lex_state = 0, .external_lex_state = 1}, + [160] = {.lex_state = 0, .external_lex_state = 1}, + [161] = {.lex_state = 0, .external_lex_state = 1}, + [162] = {.lex_state = 9, .external_lex_state = 1}, + [163] = {.lex_state = 9, .external_lex_state = 1}, + [164] = {.lex_state = 9, .external_lex_state = 1}, + [165] = {.lex_state = 0, .external_lex_state = 1}, + [166] = {.lex_state = 0, .external_lex_state = 1}, + [167] = {.lex_state = 0, .external_lex_state = 1}, + [168] = {.lex_state = 0, .external_lex_state = 1}, + [169] = {.lex_state = 0, .external_lex_state = 1}, + [170] = {.lex_state = 9, .external_lex_state = 1}, + [171] = {.lex_state = 0, .external_lex_state = 1}, + [172] = {.lex_state = 0, .external_lex_state = 1}, + [173] = {.lex_state = 0, .external_lex_state = 1}, + [174] = {.lex_state = 0, .external_lex_state = 1}, + [175] = {.lex_state = 0, .external_lex_state = 1}, + [176] = {.lex_state = 0, .external_lex_state = 1}, + [177] = {.lex_state = 0, .external_lex_state = 1}, + [178] = {.lex_state = 0, .external_lex_state = 1}, + [179] = {.lex_state = 0, .external_lex_state = 1}, + [180] = {.lex_state = 0, .external_lex_state = 1}, + [181] = {.lex_state = 9, .external_lex_state = 1}, + [182] = {.lex_state = 9, .external_lex_state = 1}, + [183] = {.lex_state = 0, .external_lex_state = 1}, + [184] = {.lex_state = 9, .external_lex_state = 1}, + [185] = {.lex_state = 9, .external_lex_state = 1}, + [186] = {.lex_state = 9, .external_lex_state = 1}, + [187] = {.lex_state = 9, .external_lex_state = 1}, + [188] = {.lex_state = 0, .external_lex_state = 1}, + [189] = {.lex_state = 0, .external_lex_state = 1}, + [190] = {.lex_state = 9, .external_lex_state = 1}, + [191] = {.lex_state = 9, .external_lex_state = 1}, + [192] = {.lex_state = 2, .external_lex_state = 1}, + [193] = {.lex_state = 9, .external_lex_state = 1}, + [194] = {.lex_state = 2, .external_lex_state = 1}, + [195] = {.lex_state = 9, .external_lex_state = 1}, + [196] = {.lex_state = 2, .external_lex_state = 1}, + [197] = {.lex_state = 0, .external_lex_state = 1}, + [198] = {.lex_state = 2, .external_lex_state = 1}, + [199] = {.lex_state = 9, .external_lex_state = 1}, + [200] = {.lex_state = 0, .external_lex_state = 1}, + [201] = {.lex_state = 0, .external_lex_state = 1}, + [202] = {.lex_state = 0, .external_lex_state = 1}, + [203] = {.lex_state = 0, .external_lex_state = 1}, + [204] = {.lex_state = 0, .external_lex_state = 1}, + [205] = {.lex_state = 0, .external_lex_state = 1}, + [206] = {.lex_state = 0, .external_lex_state = 1}, + [207] = {.lex_state = 0, .external_lex_state = 1}, + [208] = {.lex_state = 0, .external_lex_state = 1}, + [209] = {.lex_state = 0, .external_lex_state = 1}, + [210] = {.lex_state = 0, .external_lex_state = 1}, + [211] = {.lex_state = 0, .external_lex_state = 1}, + [212] = {.lex_state = 0, .external_lex_state = 1}, + [213] = {.lex_state = 9, .external_lex_state = 1}, + [214] = {.lex_state = 0, .external_lex_state = 1}, }; enum { @@ -1641,35 +1888,45 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_primitive] = ACTIONS(1), [anon_sym_var] = ACTIONS(1), [anon_sym_import] = ACTIONS(1), + [anon_sym__chunks] = ACTIONS(1), + [anon_sym__cast] = ACTIONS(1), + [anon_sym__exp] = ACTIONS(1), + [anon_sym__lvalue] = ACTIONS(1), + [anon_sym__namety] = ACTIONS(1), [sym_comment] = ACTIONS(3), }, [1] = { - [sym_source_file] = STATE(142), - [sym__expr] = STATE(82), - [sym_string_literal] = STATE(82), - [sym__lvalue] = STATE(5), - [sym_record_value] = STATE(5), - [sym_array_value] = STATE(5), - [sym_function_call] = STATE(82), - [sym_unary_expression] = STATE(82), - [sym_binary_expression] = STATE(82), - [sym_sequence_expression] = STATE(82), - [sym_array_expression] = STATE(82), - [sym_record_expression] = STATE(82), - [sym_assignment_expression] = STATE(82), - [sym_if_expression] = STATE(82), - [sym_while_expression] = STATE(82), - [sym_for_expression] = STATE(82), - [sym_let_expression] = STATE(82), - [aux_sym__declaration_chunks] = STATE(75), - [sym__declaration_chunk] = STATE(75), - [sym_type_declaration] = STATE(75), - [sym_function_declaration] = STATE(75), - [sym_primitive_declaration] = STATE(75), - [sym_variable_declaration] = STATE(75), - [sym_import_declaration] = STATE(75), - [aux_sym__declaration_chunk_repeat1] = STATE(75), - [aux_sym__declaration_chunk_repeat2] = STATE(75), + [sym_source_file] = STATE(178), + [sym__expr] = STATE(98), + [sym_string_literal] = STATE(98), + [sym__lvalue] = STATE(40), + [sym_record_value] = STATE(40), + [sym_array_value] = STATE(40), + [sym_function_call] = STATE(98), + [sym_unary_expression] = STATE(98), + [sym_binary_expression] = STATE(98), + [sym_sequence_expression] = STATE(98), + [sym_array_expression] = STATE(98), + [sym_record_expression] = STATE(98), + [sym_assignment_expression] = STATE(98), + [sym_if_expression] = STATE(98), + [sym_while_expression] = STATE(98), + [sym_for_expression] = STATE(98), + [sym_let_expression] = STATE(98), + [aux_sym__declaration_chunks] = STATE(87), + [sym__declaration_chunk] = STATE(87), + [sym_type_declaration] = STATE(87), + [sym_function_declaration] = STATE(87), + [sym_primitive_declaration] = STATE(87), + [sym_variable_declaration] = STATE(87), + [sym_import_declaration] = STATE(87), + [sym_meta_chunks] = STATE(87), + [sym_meta_cast] = STATE(98), + [sym_meta_expression] = STATE(98), + [sym_meta_lvalue] = STATE(40), + [sym_meta_type_identifier] = STATE(165), + [aux_sym__declaration_chunk_repeat1] = STATE(87), + [aux_sym__declaration_chunk_repeat2] = STATE(87), [ts_builtin_sym_end] = ACTIONS(5), [sym_identifier] = ACTIONS(7), [sym_nil_literal] = ACTIONS(9), @@ -1687,713 +1944,1929 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_primitive] = ACTIONS(29), [anon_sym_var] = ACTIONS(31), [anon_sym_import] = ACTIONS(33), + [anon_sym__chunks] = ACTIONS(35), + [anon_sym__cast] = ACTIONS(37), + [anon_sym__exp] = ACTIONS(39), + [anon_sym__lvalue] = ACTIONS(41), + [anon_sym__namety] = ACTIONS(43), [sym_comment] = ACTIONS(3), }, }; static const uint16_t ts_small_parse_table[] = { - [0] = 6, + [0] = 18, ACTIONS(3), 1, sym_comment, - ACTIONS(37), 1, - anon_sym_LBRACK, - ACTIONS(40), 1, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, anon_sym_LPAREN, - ACTIONS(44), 1, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(47), 1, + anon_sym_end, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(45), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(95), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [74] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(51), 1, + anon_sym_end, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(49), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(93), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [148] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(55), 1, + anon_sym_RPAREN, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(53), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(92), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [222] = 18, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(59), 1, + anon_sym_RPAREN, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(57), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(91), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [296] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(61), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(78), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [367] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(63), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(101), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [438] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(65), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(60), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [509] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(67), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(83), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [580] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(69), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(82), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [651] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(71), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(72), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [722] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(73), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(79), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [793] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(75), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(80), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [864] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(77), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(102), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [935] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(79), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(44), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1006] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(81), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(50), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1077] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(83), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(94), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1148] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(85), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(55), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1219] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(87), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(104), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1290] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(89), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(103), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1361] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(91), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(97), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1432] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(93), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(43), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1503] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(95), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(89), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1574] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(97), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(96), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1645] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(99), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(105), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1716] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(101), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(81), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1787] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(103), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(100), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1858] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(105), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(99), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [1929] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(107), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(62), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2000] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(109), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(88), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2071] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(111), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(67), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2142] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(113), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(66), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2213] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(115), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(65), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2284] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(117), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(64), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2355] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(119), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(63), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2426] = 17, + ACTIONS(3), 1, + sym_comment, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(121), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(49), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2497] = 6, + ACTIONS(3), 1, + sym_comment, + ACTIONS(125), 1, + anon_sym_LBRACK, + ACTIONS(128), 1, + anon_sym_LPAREN, + ACTIONS(132), 1, anon_sym_LBRACE, - ACTIONS(42), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(35), 29, - ts_builtin_sym_end, - anon_sym_DOT, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [48] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(48), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(46), 30, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [88] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(52), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(50), 30, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [128] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(56), 1, - anon_sym_DOT, - ACTIONS(58), 1, - anon_sym_LBRACK, - ACTIONS(62), 1, - anon_sym_COLON_EQ, - ACTIONS(60), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(54), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [174] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(64), 17, - 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, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [221] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(80), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(78), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [258] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(82), 17, - 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, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [305] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(86), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(84), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [342] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(90), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(88), 23, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [383] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(94), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(92), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [420] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(98), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(96), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [457] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(102), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(100), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [494] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(106), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(104), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [531] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(110), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(108), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [568] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(112), 17, - 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, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [615] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(114), 17, - 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, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [662] = 9, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(118), 1, - anon_sym_else, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(116), 16, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [711] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(122), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(120), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [748] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(126), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(124), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [785] = 3, - ACTIONS(3), 1, - sym_comment, ACTIONS(130), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(128), 27, + ACTIONS(123), 30, ts_builtin_sym_end, + anon_sym_DOT, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, @@ -2409,6 +3882,7 @@ 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, @@ -2420,48 +3894,71 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [822] = 3, + anon_sym__chunks, + [2546] = 17, ACTIONS(3), 1, sym_comment, - ACTIONS(134), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(132), 27, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, + ACTIONS(7), 1, + sym_identifier, + ACTIONS(11), 1, + anon_sym_DQUOTE, + ACTIONS(13), 1, + anon_sym_LPAREN, + ACTIONS(15), 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, - anon_sym_PIPE, - anon_sym_SEMI, - anon_sym_RBRACE, - anon_sym_then, - anon_sym_else, - anon_sym_do, - anon_sym_to, - anon_sym_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [859] = 3, + ACTIONS(17), 1, + anon_sym_if, + ACTIONS(19), 1, + anon_sym_while, + ACTIONS(21), 1, + anon_sym_for, + ACTIONS(23), 1, + anon_sym_let, + ACTIONS(37), 1, + anon_sym__cast, + ACTIONS(39), 1, + anon_sym__exp, + ACTIONS(41), 1, + anon_sym__lvalue, + ACTIONS(43), 1, + anon_sym__namety, + STATE(165), 1, + sym_meta_type_identifier, + ACTIONS(134), 3, + sym_nil_literal, + sym_integer_literal, + sym_break_expression, + STATE(40), 4, + sym__lvalue, + sym_record_value, + sym_array_value, + sym_meta_lvalue, + STATE(106), 15, + 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, + sym_meta_cast, + sym_meta_expression, + [2617] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(138), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(136), 27, + ACTIONS(136), 31, ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, @@ -2477,6 +3974,7 @@ 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, @@ -2488,47 +3986,20 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [896] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(142), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(140), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [933] = 3, + anon_sym__chunks, + [2658] = 6, ACTIONS(3), 1, sym_comment, + ACTIONS(142), 1, + anon_sym_DOT, + ACTIONS(144), 1, + anon_sym_LBRACK, + ACTIONS(148), 1, + anon_sym_COLON_EQ, ACTIONS(146), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(144), 27, + ACTIONS(140), 28, ts_builtin_sym_end, anon_sym_RBRACK, anon_sym_COMMA, @@ -2556,162 +4027,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [970] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(148), 17, - 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, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [1017] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(90), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(88), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [1054] = 7, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(88), 18, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [1099] = 6, - ACTIONS(3), 1, - sym_comment, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(88), 19, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [1142] = 3, + anon_sym__chunks, + [2705] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(152), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(150), 27, + ACTIONS(150), 31, ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, @@ -2727,6 +4053,7 @@ 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, @@ -2738,14 +4065,17 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [1179] = 3, + anon_sym__chunks, + [2746] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(156), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(154), 27, + ACTIONS(154), 31, ts_builtin_sym_end, + anon_sym_DOT, + anon_sym_LBRACK, anon_sym_RBRACK, anon_sym_COMMA, anon_sym_RPAREN, @@ -2761,6 +4091,7 @@ 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, @@ -2772,21 +4103,102 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [1216] = 4, + anon_sym__chunks, + [2787] = 9, ACTIONS(3), 1, sym_comment, - ACTIONS(68), 2, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(172), 1, + anon_sym_else, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(90), 2, + ACTIONS(166), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(88), 25, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(158), 17, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [2837] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(174), 18, + 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, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [2885] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(178), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(176), 28, 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, @@ -2807,25 +4219,683 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [1255] = 3, + anon_sym__chunks, + [2923] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(182), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(180), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [2961] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(186), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(184), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [2999] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(190), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(188), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3037] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(192), 18, + 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, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3085] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(194), 18, + 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, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3133] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(198), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(196), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3171] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(202), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(200), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3209] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(206), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(204), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3247] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(210), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(208), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3285] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(212), 18, + 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, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3333] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(216), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(214), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3371] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(220), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(218), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3409] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(224), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(222), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3447] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(228), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(226), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3485] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(230), 18, + 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, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3533] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(234), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(232), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3571] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(238), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(236), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3609] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(240), 19, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3655] = 6, ACTIONS(3), 1, sym_comment, ACTIONS(160), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(158), 27, - ts_builtin_sym_end, - anon_sym_RBRACK, - anon_sym_COMMA, - anon_sym_RPAREN, anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, anon_sym_STAR, anon_sym_SLASH, - anon_sym_PLUS, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, + ACTIONS(240), 20, + ts_builtin_sym_end, + anon_sym_RBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, anon_sym_AMP, anon_sym_PIPE, anon_sym_SEMI, @@ -2841,1885 +4911,1246 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [1292] = 3, + anon_sym__chunks, + [3699] = 5, ACTIONS(3), 1, sym_comment, - ACTIONS(164), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(162), 27, - 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_in, - anon_sym_end, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [1329] = 13, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(168), 1, - anon_sym_end, - ACTIONS(166), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 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, - [1385] = 13, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(172), 1, - anon_sym_RPAREN, - ACTIONS(170), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(77), 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, - [1441] = 13, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(176), 1, - anon_sym_end, - ACTIONS(174), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 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, - [1497] = 13, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(180), 1, - anon_sym_RPAREN, - ACTIONS(178), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(72), 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, - [1553] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(182), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(79), 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, - [1606] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(184), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(26), 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, - [1659] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(186), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(81), 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, - [1712] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(188), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(17), 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, - [1765] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(190), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 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, - [1818] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(192), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(80), 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, - [1871] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(194), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(85), 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, - [1924] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(196), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(65), 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, - [1977] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(198), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(32), 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, - [2030] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(200), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(27), 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, - [2083] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(202), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(10), 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, - [2136] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(204), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(29), 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, - [2189] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(206), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(28), 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, - [2242] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(208), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(67), 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, - [2295] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(210), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(84), 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, - [2348] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(212), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(25), 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, - [2401] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(214), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(66), 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, - [2454] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(216), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 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, - [2507] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(218), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(83), 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, - [2560] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(220), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(8), 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, - [2613] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(222), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(86), 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, - [2666] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(224), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(6), 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, - [2719] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(226), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(87), 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, - [2772] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(228), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(78), 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, - [2825] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(230), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(16), 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, - [2878] = 12, - ACTIONS(3), 1, - sym_comment, - ACTIONS(7), 1, - sym_identifier, - ACTIONS(11), 1, - anon_sym_DQUOTE, - ACTIONS(13), 1, - anon_sym_LPAREN, - ACTIONS(15), 1, - anon_sym_DASH, - ACTIONS(17), 1, - anon_sym_if, - ACTIONS(19), 1, - anon_sym_while, - ACTIONS(21), 1, - anon_sym_for, - ACTIONS(23), 1, - anon_sym_let, - ACTIONS(232), 3, - sym_nil_literal, - sym_integer_literal, - sym_break_expression, - STATE(5), 3, - sym__lvalue, - sym_record_value, - sym_array_value, - STATE(18), 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, - [2931] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, + ACTIONS(160), 2, anon_sym_DASH, anon_sym_PLUS, - ACTIONS(68), 2, + ACTIONS(162), 2, anon_sym_STAR, anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(234), 7, - ts_builtin_sym_end, - anon_sym_in, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [2968] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(236), 7, - ts_builtin_sym_end, - anon_sym_in, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [3005] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(238), 7, - ts_builtin_sym_end, - anon_sym_in, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [3042] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - ACTIONS(240), 7, - ts_builtin_sym_end, - anon_sym_in, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [3079] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(244), 1, - anon_sym_type, - ACTIONS(247), 1, - anon_sym_function, - ACTIONS(250), 1, - anon_sym_primitive, - ACTIONS(253), 1, - anon_sym_var, - ACTIONS(256), 1, - anon_sym_import, ACTIONS(242), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(240), 24, ts_builtin_sym_end, - anon_sym_in, - STATE(69), 9, - aux_sym__declaration_chunks, - sym__declaration_chunk, - sym_type_declaration, - sym_function_declaration, - sym_primitive_declaration, - sym_variable_declaration, - sym_import_declaration, - aux_sym__declaration_chunk_repeat1, - aux_sym__declaration_chunk_repeat2, - [3113] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(259), 1, - anon_sym_COMMA, - ACTIONS(261), 1, - anon_sym_RBRACE, - STATE(113), 1, - aux_sym_record_expression_repeat1, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3150] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(263), 1, - anon_sym_SEMI, - ACTIONS(265), 1, - anon_sym_end, - STATE(110), 1, - aux_sym_sequence_expression_repeat1, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3187] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(267), 1, - anon_sym_COMMA, - ACTIONS(269), 1, - anon_sym_RPAREN, - STATE(119), 1, - aux_sym_function_call_repeat1, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3224] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(271), 1, - anon_sym_in, - ACTIONS(273), 1, - anon_sym_type, - ACTIONS(275), 1, - anon_sym_function, - ACTIONS(277), 1, - anon_sym_primitive, - ACTIONS(279), 1, - anon_sym_var, - ACTIONS(281), 1, - anon_sym_import, - STATE(76), 9, - aux_sym__declaration_chunks, - sym__declaration_chunk, - sym_type_declaration, - sym_function_declaration, - sym_primitive_declaration, - sym_variable_declaration, - sym_import_declaration, - aux_sym__declaration_chunk_repeat1, - aux_sym__declaration_chunk_repeat2, - [3257] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(263), 1, - anon_sym_SEMI, - ACTIONS(283), 1, - anon_sym_end, - STATE(108), 1, - aux_sym_sequence_expression_repeat1, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3294] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(273), 1, - anon_sym_type, - ACTIONS(275), 1, - anon_sym_function, - ACTIONS(277), 1, - anon_sym_primitive, - ACTIONS(279), 1, - anon_sym_var, - ACTIONS(281), 1, - anon_sym_import, - ACTIONS(285), 1, - ts_builtin_sym_end, - STATE(69), 9, - aux_sym__declaration_chunks, - sym__declaration_chunk, - sym_type_declaration, - sym_function_declaration, - sym_primitive_declaration, - sym_variable_declaration, - sym_import_declaration, - aux_sym__declaration_chunk_repeat1, - aux_sym__declaration_chunk_repeat2, - [3327] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(273), 1, - anon_sym_type, - ACTIONS(275), 1, - anon_sym_function, - ACTIONS(277), 1, - anon_sym_primitive, - ACTIONS(279), 1, - anon_sym_var, - ACTIONS(281), 1, - anon_sym_import, - ACTIONS(287), 1, - anon_sym_in, - STATE(69), 9, - aux_sym__declaration_chunks, - sym__declaration_chunk, - sym_type_declaration, - sym_function_declaration, - sym_primitive_declaration, - sym_variable_declaration, - sym_import_declaration, - aux_sym__declaration_chunk_repeat1, - aux_sym__declaration_chunk_repeat2, - [3360] = 10, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(263), 1, - anon_sym_SEMI, - ACTIONS(289), 1, - anon_sym_RPAREN, - STATE(112), 1, - aux_sym_sequence_expression_repeat1, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3397] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(291), 3, - anon_sym_RPAREN, - anon_sym_SEMI, - anon_sym_end, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3430] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(293), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3462] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(295), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3494] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(297), 1, anon_sym_RBRACK, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, + anon_sym_COMMA, + anon_sym_RPAREN, anon_sym_GT_EQ, anon_sym_LT_EQ, anon_sym_EQ, anon_sym_LT_GT, - [3525] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, anon_sym_AMP, - ACTIONS(76), 1, anon_sym_PIPE, - ACTIONS(285), 1, - ts_builtin_sym_end, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3556] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(299), 1, - anon_sym_do, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3587] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(301), 1, - anon_sym_RBRACK, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3618] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(303), 1, - anon_sym_do, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3649] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(305), 1, + anon_sym_SEMI, + anon_sym_RBRACE, anon_sym_then, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, - anon_sym_LT, - anon_sym_GT, - ACTIONS(70), 4, - anon_sym_GT_EQ, - anon_sym_LT_EQ, - anon_sym_EQ, - anon_sym_LT_GT, - [3680] = 8, - ACTIONS(3), 1, - sym_comment, - ACTIONS(74), 1, - anon_sym_AMP, - ACTIONS(76), 1, - anon_sym_PIPE, - ACTIONS(307), 1, + anon_sym_else, + anon_sym_do, anon_sym_to, - ACTIONS(66), 2, - anon_sym_DASH, - anon_sym_PLUS, - ACTIONS(68), 2, - anon_sym_STAR, - anon_sym_SLASH, - ACTIONS(72), 2, + anon_sym_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3741] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(242), 2, anon_sym_LT, anon_sym_GT, - ACTIONS(70), 4, + ACTIONS(240), 28, + 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, - [3711] = 5, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3779] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(311), 1, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(242), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(240), 26, + 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_in, + anon_sym_end, + anon_sym_type, anon_sym_function, - ACTIONS(314), 1, anon_sym_primitive, - STATE(88), 3, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3819] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(246), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(244), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3857] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(250), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(248), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3895] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(254), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(252), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3933] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(258), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(256), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [3971] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(260), 18, + 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, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4019] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(264), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(262), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4057] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(268), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(266), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4095] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(272), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(270), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4133] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(276), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(274), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4171] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(280), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(278), 28, + 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_in, + anon_sym_end, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4209] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(282), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4247] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(284), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4285] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(286), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4323] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(288), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4361] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(290), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4399] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + ACTIONS(292), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4437] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(296), 1, + anon_sym_type, + ACTIONS(299), 1, + anon_sym_function, + ACTIONS(302), 1, + anon_sym_primitive, + ACTIONS(305), 1, + anon_sym_var, + ACTIONS(308), 1, + anon_sym_import, + ACTIONS(311), 1, + anon_sym__chunks, + ACTIONS(294), 2, + ts_builtin_sym_end, + anon_sym_in, + STATE(84), 10, + aux_sym__declaration_chunks, + sym__declaration_chunk, + sym_type_declaration, + sym_function_declaration, + sym_primitive_declaration, + sym_variable_declaration, + sym_import_declaration, + sym_meta_chunks, + aux_sym__declaration_chunk_repeat1, + aux_sym__declaration_chunk_repeat2, + [4475] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(314), 1, + anon_sym_in, + ACTIONS(316), 1, + anon_sym_type, + ACTIONS(318), 1, + anon_sym_function, + ACTIONS(320), 1, + anon_sym_primitive, + ACTIONS(322), 1, + anon_sym_var, + ACTIONS(324), 1, + anon_sym_import, + ACTIONS(326), 1, + anon_sym__chunks, + STATE(86), 10, + aux_sym__declaration_chunks, + sym__declaration_chunk, + sym_type_declaration, + sym_function_declaration, + sym_primitive_declaration, + sym_variable_declaration, + sym_import_declaration, + sym_meta_chunks, + aux_sym__declaration_chunk_repeat1, + aux_sym__declaration_chunk_repeat2, + [4512] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(316), 1, + anon_sym_type, + ACTIONS(318), 1, + anon_sym_function, + ACTIONS(320), 1, + anon_sym_primitive, + ACTIONS(322), 1, + anon_sym_var, + ACTIONS(324), 1, + anon_sym_import, + ACTIONS(326), 1, + anon_sym__chunks, + ACTIONS(328), 1, + anon_sym_in, + STATE(84), 10, + aux_sym__declaration_chunks, + sym__declaration_chunk, + sym_type_declaration, + sym_function_declaration, + sym_primitive_declaration, + sym_variable_declaration, + sym_import_declaration, + sym_meta_chunks, + aux_sym__declaration_chunk_repeat1, + aux_sym__declaration_chunk_repeat2, + [4549] = 9, + ACTIONS(3), 1, + sym_comment, + ACTIONS(316), 1, + anon_sym_type, + ACTIONS(318), 1, + anon_sym_function, + ACTIONS(320), 1, + anon_sym_primitive, + ACTIONS(322), 1, + anon_sym_var, + ACTIONS(324), 1, + anon_sym_import, + ACTIONS(326), 1, + anon_sym__chunks, + ACTIONS(330), 1, + ts_builtin_sym_end, + STATE(84), 10, + aux_sym__declaration_chunks, + sym__declaration_chunk, + sym_type_declaration, + sym_function_declaration, + sym_primitive_declaration, + sym_variable_declaration, + sym_import_declaration, + sym_meta_chunks, + aux_sym__declaration_chunk_repeat1, + aux_sym__declaration_chunk_repeat2, + [4586] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(332), 3, + anon_sym_RPAREN, + anon_sym_SEMI, + anon_sym_end, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4619] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(334), 1, + anon_sym_COMMA, + ACTIONS(336), 1, + anon_sym_RBRACE, + STATE(156), 1, + aux_sym_record_expression_repeat1, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4656] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(338), 15, + ts_builtin_sym_end, + anon_sym_LBRACK, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_EQ, + anon_sym_LBRACE, + anon_sym_RBRACE, + anon_sym_COLON_EQ, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [4677] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(340), 1, + anon_sym_COMMA, + ACTIONS(342), 1, + anon_sym_RPAREN, + STATE(136), 1, + aux_sym_function_call_repeat1, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4714] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(344), 1, + anon_sym_RPAREN, + ACTIONS(346), 1, + anon_sym_SEMI, + STATE(160), 1, + aux_sym_sequence_expression_repeat1, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4751] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(346), 1, + anon_sym_SEMI, + ACTIONS(348), 1, + anon_sym_end, + STATE(151), 1, + aux_sym_sequence_expression_repeat1, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4788] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(334), 1, + anon_sym_COMMA, + ACTIONS(350), 1, + anon_sym_RBRACE, + STATE(141), 1, + aux_sym_record_expression_repeat1, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4825] = 10, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(346), 1, + anon_sym_SEMI, + ACTIONS(352), 1, + anon_sym_end, + STATE(137), 1, + aux_sym_sequence_expression_repeat1, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4862] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(354), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4894] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(356), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4926] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(330), 1, + ts_builtin_sym_end, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4957] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(358), 1, + anon_sym_then, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [4988] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(360), 1, + anon_sym_RBRACK, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [5019] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(362), 1, + anon_sym_COMMA, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [5050] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(364), 1, + anon_sym_do, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [5081] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(366), 1, + anon_sym_to, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [5112] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(368), 1, + anon_sym_RBRACK, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [5143] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(370), 1, + anon_sym_do, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [5174] = 8, + ACTIONS(3), 1, + sym_comment, + ACTIONS(168), 1, + anon_sym_AMP, + ACTIONS(170), 1, + anon_sym_PIPE, + ACTIONS(372), 1, + anon_sym_RBRACK, + ACTIONS(160), 2, + anon_sym_DASH, + anon_sym_PLUS, + ACTIONS(162), 2, + anon_sym_STAR, + anon_sym_SLASH, + ACTIONS(166), 2, + anon_sym_LT, + anon_sym_GT, + ACTIONS(164), 4, + anon_sym_GT_EQ, + anon_sym_LT_EQ, + anon_sym_EQ, + anon_sym_LT_GT, + [5205] = 5, + ACTIONS(3), 1, + sym_comment, + ACTIONS(376), 1, + anon_sym_function, + ACTIONS(379), 1, + anon_sym_primitive, + STATE(107), 3, sym_function_declaration, sym_primitive_declaration, aux_sym__declaration_chunk_repeat2, - ACTIONS(309), 5, + ACTIONS(374), 6, ts_builtin_sym_end, anon_sym_in, anon_sym_type, anon_sym_var, anon_sym_import, - [3733] = 2, + anon_sym__chunks, + [5228] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(317), 9, + ACTIONS(382), 10, ts_builtin_sym_end, anon_sym_EQ, anon_sym_in, @@ -4729,10 +6160,11 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [3748] = 2, + anon_sym__chunks, + [5244] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(319), 9, + ACTIONS(384), 10, ts_builtin_sym_end, anon_sym_EQ, anon_sym_in, @@ -4742,142 +6174,211 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [3763] = 2, + anon_sym__chunks, + [5260] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(321), 9, - ts_builtin_sym_end, - anon_sym_EQ, - anon_sym_in, + ACTIONS(388), 1, anon_sym_type, - anon_sym_COLON, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [3778] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(325), 1, - anon_sym_type, - STATE(92), 2, + STATE(110), 2, sym_type_declaration, aux_sym__declaration_chunk_repeat1, - ACTIONS(323), 6, + ACTIONS(386), 7, ts_builtin_sym_end, anon_sym_in, anon_sym_function, anon_sym_primitive, anon_sym_var, anon_sym_import, - [3797] = 3, + anon_sym__chunks, + [5280] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(330), 1, + ACTIONS(391), 10, + ts_builtin_sym_end, + anon_sym_EQ, + anon_sym_in, + anon_sym_type, anon_sym_COLON, - ACTIONS(328), 7, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5296] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(393), 10, ts_builtin_sym_end, + anon_sym_EQ, + anon_sym_in, + anon_sym_type, + anon_sym_COLON, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5312] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(395), 10, + ts_builtin_sym_end, + anon_sym_EQ, + anon_sym_in, + anon_sym_type, + anon_sym_COLON, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5328] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(397), 9, + ts_builtin_sym_end, + anon_sym_RPAREN, anon_sym_in, anon_sym_type, anon_sym_function, anon_sym_primitive, anon_sym_var, anon_sym_import, - [3813] = 2, + anon_sym__chunks, + [5343] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(332), 7, + ACTIONS(399), 9, ts_builtin_sym_end, + anon_sym_RPAREN, anon_sym_in, anon_sym_type, anon_sym_function, anon_sym_primitive, anon_sym_var, anon_sym_import, - [3826] = 2, + anon_sym__chunks, + [5358] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(334), 7, + ACTIONS(401), 9, ts_builtin_sym_end, + anon_sym_RPAREN, anon_sym_in, anon_sym_type, anon_sym_function, anon_sym_primitive, anon_sym_var, anon_sym_import, - [3839] = 2, + anon_sym__chunks, + [5373] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(336), 7, + ACTIONS(403), 9, ts_builtin_sym_end, + anon_sym_RPAREN, anon_sym_in, anon_sym_type, anon_sym_function, anon_sym_primitive, anon_sym_var, anon_sym_import, - [3852] = 2, + anon_sym__chunks, + [5388] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(338), 7, + ACTIONS(405), 9, ts_builtin_sym_end, + anon_sym_RPAREN, anon_sym_in, anon_sym_type, anon_sym_function, anon_sym_primitive, anon_sym_var, anon_sym_import, - [3865] = 2, + anon_sym__chunks, + [5403] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(340), 7, + ACTIONS(407), 9, ts_builtin_sym_end, + anon_sym_RPAREN, anon_sym_in, anon_sym_type, anon_sym_function, anon_sym_primitive, anon_sym_var, anon_sym_import, - [3878] = 2, + anon_sym__chunks, + [5418] = 7, ACTIONS(3), 1, sym_comment, - ACTIONS(342), 7, - ts_builtin_sym_end, - anon_sym_in, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [3891] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(344), 7, - ts_builtin_sym_end, - anon_sym_in, - anon_sym_type, - anon_sym_function, - anon_sym_primitive, - anon_sym_var, - anon_sym_import, - [3904] = 5, - ACTIONS(3), 1, - sym_comment, - ACTIONS(346), 1, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(409), 1, sym_identifier, - ACTIONS(348), 1, + ACTIONS(411), 1, anon_sym_LBRACE, - ACTIONS(350), 1, + ACTIONS(413), 1, anon_sym_array, - STATE(99), 4, + STATE(117), 1, + sym_meta_type_identifier, + STATE(126), 4, sym__type, sym_type_alias, sym_record_type, sym_array_type, - [3923] = 2, + [5443] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(352), 7, + ACTIONS(415), 9, + ts_builtin_sym_end, + anon_sym_RPAREN, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5458] = 7, + ACTIONS(3), 1, + sym_comment, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(409), 1, + sym_identifier, + ACTIONS(411), 1, + anon_sym_LBRACE, + ACTIONS(413), 1, + anon_sym_array, + STATE(117), 1, + sym_meta_type_identifier, + STATE(197), 4, + sym__type, + sym_type_alias, + sym_record_type, + sym_array_type, + [5483] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(417), 9, + ts_builtin_sym_end, + anon_sym_RPAREN, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5498] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(421), 1, + anon_sym_COLON, + ACTIONS(419), 8, ts_builtin_sym_end, anon_sym_in, anon_sym_type, @@ -4885,542 +6386,864 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_primitive, anon_sym_var, anon_sym_import, - [3936] = 4, + anon_sym__chunks, + [5515] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(423), 9, + ts_builtin_sym_end, + anon_sym_RPAREN, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5530] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(425), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5544] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(427), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5558] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(429), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5572] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(431), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5586] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(433), 8, + ts_builtin_sym_end, + anon_sym_in, + anon_sym_type, + anon_sym_function, + anon_sym_primitive, + anon_sym_var, + anon_sym_import, + anon_sym__chunks, + [5600] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(435), 1, + anon_sym_SEMI, + STATE(131), 1, + aux_sym_sequence_expression_repeat1, + ACTIONS(332), 2, + anon_sym_RPAREN, + anon_sym_end, + [5614] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(438), 1, + anon_sym_DQUOTE, + STATE(132), 1, + aux_sym_string_literal_repeat1, + ACTIONS(440), 2, + aux_sym_string_literal_token1, + sym_escape_sequence, + [5628] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(443), 1, + anon_sym_DQUOTE, + STATE(134), 1, + aux_sym_string_literal_repeat1, + ACTIONS(445), 2, + aux_sym_string_literal_token1, + sym_escape_sequence, + [5642] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(447), 1, + anon_sym_DQUOTE, + STATE(132), 1, + aux_sym_string_literal_repeat1, + ACTIONS(449), 2, + aux_sym_string_literal_token1, + sym_escape_sequence, + [5656] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(451), 1, + anon_sym_COMMA, + ACTIONS(453), 1, + anon_sym_RPAREN, + STATE(157), 1, + aux_sym_parameters_repeat1, + [5669] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(340), 1, + anon_sym_COMMA, + ACTIONS(455), 1, + anon_sym_RPAREN, + STATE(140), 1, + aux_sym_function_call_repeat1, + [5682] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(346), 1, + anon_sym_SEMI, + ACTIONS(457), 1, + anon_sym_end, + STATE(131), 1, + aux_sym_sequence_expression_repeat1, + [5695] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(459), 1, + sym_identifier, + STATE(119), 1, + sym_meta_type_identifier, + [5708] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(461), 1, + sym_identifier, + STATE(135), 1, + sym_meta_type_identifier, + [5721] = 4, ACTIONS(3), 1, sym_comment, ACTIONS(354), 1, - anon_sym_DQUOTE, - STATE(106), 1, - aux_sym_string_literal_repeat1, - ACTIONS(356), 2, - aux_sym_string_literal_token1, - sym_escape_sequence, - [3950] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(358), 1, - anon_sym_SEMI, - STATE(104), 1, - aux_sym_sequence_expression_repeat1, - ACTIONS(291), 2, anon_sym_RPAREN, - anon_sym_end, - [3964] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(361), 1, - anon_sym_DQUOTE, - STATE(103), 1, - aux_sym_string_literal_repeat1, - ACTIONS(363), 2, - aux_sym_string_literal_token1, - sym_escape_sequence, - [3978] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(365), 1, - anon_sym_DQUOTE, - STATE(106), 1, - aux_sym_string_literal_repeat1, - ACTIONS(367), 2, - aux_sym_string_literal_token1, - sym_escape_sequence, - [3992] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(370), 1, + ACTIONS(463), 1, anon_sym_COMMA, - ACTIONS(373), 1, - anon_sym_RBRACE, - STATE(107), 1, - aux_sym_record_expression_repeat1, - [4005] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - anon_sym_SEMI, - ACTIONS(375), 1, - anon_sym_end, - STATE(104), 1, - aux_sym_sequence_expression_repeat1, - [4018] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(377), 1, - anon_sym_COMMA, - ACTIONS(380), 1, - anon_sym_RBRACE, - STATE(109), 1, - aux_sym_record_type_repeat1, - [4031] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - anon_sym_SEMI, - ACTIONS(382), 1, - anon_sym_end, - STATE(104), 1, - aux_sym_sequence_expression_repeat1, - [4044] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(384), 1, - anon_sym_COMMA, - ACTIONS(386), 1, - anon_sym_RBRACE, - STATE(109), 1, - aux_sym_record_type_repeat1, - [4057] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(263), 1, - anon_sym_SEMI, - ACTIONS(388), 1, - anon_sym_RPAREN, - STATE(104), 1, - aux_sym_sequence_expression_repeat1, - [4070] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(259), 1, - anon_sym_COMMA, - ACTIONS(390), 1, - anon_sym_RBRACE, - STATE(107), 1, - aux_sym_record_expression_repeat1, - [4083] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(392), 1, - anon_sym_COMMA, - ACTIONS(394), 1, - anon_sym_RPAREN, - STATE(118), 1, - aux_sym_parameters_repeat1, - [4096] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(293), 1, - anon_sym_RPAREN, - ACTIONS(396), 1, - anon_sym_COMMA, - STATE(115), 1, + STATE(140), 1, aux_sym_function_call_repeat1, - [4109] = 4, + [5734] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(384), 1, + ACTIONS(334), 1, anon_sym_COMMA, - ACTIONS(399), 1, + ACTIONS(466), 1, anon_sym_RBRACE, - STATE(111), 1, + STATE(142), 1, + aux_sym_record_expression_repeat1, + [5747] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(468), 1, + anon_sym_COMMA, + ACTIONS(471), 1, + anon_sym_RBRACE, + STATE(142), 1, + aux_sym_record_expression_repeat1, + [5760] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(451), 1, + anon_sym_COMMA, + ACTIONS(473), 1, + anon_sym_RPAREN, + STATE(159), 1, + aux_sym_parameters_repeat1, + [5773] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(475), 1, + anon_sym_COMMA, + ACTIONS(477), 1, + anon_sym_RBRACE, + STATE(155), 1, aux_sym_record_type_repeat1, - [4122] = 4, + [5786] = 4, ACTIONS(3), 1, sym_comment, - ACTIONS(392), 1, - anon_sym_COMMA, - ACTIONS(401), 1, - anon_sym_RPAREN, - STATE(114), 1, - aux_sym_parameters_repeat1, - [4135] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(403), 1, - anon_sym_COMMA, - ACTIONS(406), 1, - anon_sym_RPAREN, - STATE(118), 1, - aux_sym_parameters_repeat1, - [4148] = 4, - ACTIONS(3), 1, - sym_comment, - ACTIONS(267), 1, - anon_sym_COMMA, - ACTIONS(408), 1, - anon_sym_RPAREN, - STATE(115), 1, - aux_sym_function_call_repeat1, - [4161] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(410), 1, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(479), 1, sym_identifier, - ACTIONS(412), 1, + STATE(174), 1, + sym_meta_type_identifier, + [5799] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(481), 1, + sym_identifier, + STATE(171), 1, + sym_meta_type_identifier, + [5812] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(483), 1, + anon_sym_COMMA, + ACTIONS(486), 1, + anon_sym_RBRACE, + STATE(147), 1, + aux_sym_record_type_repeat1, + [5825] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(475), 1, + anon_sym_COMMA, + ACTIONS(488), 1, + anon_sym_RBRACE, + STATE(152), 1, + aux_sym_record_type_repeat1, + [5838] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(490), 1, + sym_identifier, + STATE(148), 1, + sym_meta_type_identifier, + [5851] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(492), 1, + anon_sym_COMMA, + ACTIONS(495), 1, anon_sym_RPAREN, - [4171] = 3, + STATE(150), 1, + aux_sym_parameters_repeat1, + [5864] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(346), 1, + anon_sym_SEMI, + ACTIONS(497), 1, + anon_sym_end, + STATE(131), 1, + aux_sym_sequence_expression_repeat1, + [5877] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(475), 1, + anon_sym_COMMA, + ACTIONS(499), 1, + anon_sym_RBRACE, + STATE(147), 1, + aux_sym_record_type_repeat1, + [5890] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(501), 1, + sym_identifier, + STATE(127), 1, + sym_meta_type_identifier, + [5903] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(503), 1, + sym_identifier, + STATE(204), 1, + sym_meta_type_identifier, + [5916] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(475), 1, + anon_sym_COMMA, + ACTIONS(505), 1, + anon_sym_RBRACE, + STATE(147), 1, + aux_sym_record_type_repeat1, + [5929] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(334), 1, + anon_sym_COMMA, + ACTIONS(507), 1, + anon_sym_RBRACE, + STATE(142), 1, + aux_sym_record_expression_repeat1, + [5942] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(451), 1, + anon_sym_COMMA, + ACTIONS(509), 1, + anon_sym_RPAREN, + STATE(150), 1, + aux_sym_parameters_repeat1, + [5955] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(43), 1, + anon_sym__namety, + ACTIONS(511), 1, + sym_identifier, + STATE(202), 1, + sym_meta_type_identifier, + [5968] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(451), 1, + anon_sym_COMMA, + ACTIONS(513), 1, + anon_sym_RPAREN, + STATE(150), 1, + aux_sym_parameters_repeat1, + [5981] = 4, + ACTIONS(3), 1, + sym_comment, + ACTIONS(346), 1, + anon_sym_SEMI, + ACTIONS(515), 1, + anon_sym_RPAREN, + STATE(131), 1, + aux_sym_sequence_expression_repeat1, + [5994] = 3, ACTIONS(3), 1, sym_comment, ACTIONS(11), 1, anon_sym_DQUOTE, - STATE(98), 1, + STATE(130), 1, sym_string_literal, - [4181] = 2, + [6004] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(414), 2, - anon_sym_COMMA, + ACTIONS(517), 1, + sym_identifier, + ACTIONS(519), 1, anon_sym_RBRACE, - [4189] = 2, + [6014] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(416), 2, + ACTIONS(521), 1, + sym_identifier, + ACTIONS(523), 1, + anon_sym_RBRACE, + [6024] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(525), 1, + sym_identifier, + ACTIONS(527), 1, + anon_sym_RBRACE, + [6034] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(529), 1, + anon_sym_LBRACK, + ACTIONS(531), 1, + anon_sym_LBRACE, + [6044] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(533), 1, + anon_sym_COLON_EQ, + ACTIONS(535), 1, + anon_sym_COLON, + [6054] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(537), 1, + anon_sym_LPAREN, + STATE(124), 1, + sym_parameters, + [6064] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(537), 1, + anon_sym_LPAREN, + STATE(172), 1, + sym_parameters, + [6074] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(539), 2, anon_sym_COMMA, anon_sym_RPAREN, - [4197] = 3, + [6082] = 3, ACTIONS(3), 1, sym_comment, - ACTIONS(418), 1, - anon_sym_LPAREN, - STATE(127), 1, - sym_parameters, - [4207] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(418), 1, - anon_sym_LPAREN, - STATE(93), 1, - sym_parameters, - [4217] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(420), 1, - anon_sym_COLON_EQ, - ACTIONS(422), 1, - anon_sym_COLON, - [4227] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(424), 1, - anon_sym_EQ, - ACTIONS(426), 1, - anon_sym_COLON, - [4237] = 3, - ACTIONS(3), 1, - sym_comment, - ACTIONS(428), 1, + ACTIONS(541), 1, sym_identifier, - ACTIONS(430), 1, + ACTIONS(543), 1, + anon_sym_RPAREN, + [6092] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(545), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [6100] = 3, + ACTIONS(3), 1, + sym_comment, + ACTIONS(547), 1, + anon_sym_EQ, + ACTIONS(549), 1, + anon_sym_COLON, + [6110] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(551), 2, + anon_sym_COMMA, anon_sym_RBRACE, - [4247] = 3, + [6118] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(432), 1, - sym_identifier, - ACTIONS(434), 1, + ACTIONS(553), 2, + anon_sym_COMMA, anon_sym_RBRACE, - [4257] = 2, + [6126] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(436), 1, - anon_sym_of, - [4264] = 2, + ACTIONS(555), 1, + anon_sym_RPAREN, + [6133] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(438), 1, - sym_identifier, - [4271] = 2, + ACTIONS(557), 1, + anon_sym_RPAREN, + [6140] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(440), 1, - anon_sym_COLON_EQ, - [4278] = 2, + ACTIONS(559), 1, + anon_sym_RPAREN, + [6147] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(442), 1, - sym_identifier, - [4285] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(444), 1, - sym_identifier, - [4292] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(446), 1, - anon_sym_EQ, - [4299] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(448), 1, - anon_sym_EQ, - [4306] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(450), 1, - anon_sym_EQ, - [4313] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(452), 1, - anon_sym_COLON, - [4320] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(454), 1, - sym_identifier, - [4327] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(456), 1, - sym_identifier, - [4334] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(458), 1, - sym_identifier, - [4341] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(460), 1, + ACTIONS(561), 1, ts_builtin_sym_end, - [4348] = 2, + [6154] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(462), 1, - anon_sym_COLON, - [4355] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(464), 1, - anon_sym_of, - [4362] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(466), 1, - sym_identifier, - [4369] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(468), 1, - sym_identifier, - [4376] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(470), 1, - sym_identifier, - [4383] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(472), 1, - anon_sym_COLON_EQ, - [4390] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(474), 1, - anon_sym_COLON, - [4397] = 2, - ACTIONS(3), 1, - sym_comment, - ACTIONS(476), 1, + ACTIONS(563), 1, anon_sym_EQ, - [4404] = 2, + [6161] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(478), 1, + ACTIONS(565), 1, + anon_sym_RPAREN, + [6168] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(567), 1, sym_identifier, - [4411] = 2, + [6175] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(480), 1, + ACTIONS(569), 1, sym_identifier, - [4418] = 2, + [6182] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(482), 1, + ACTIONS(571), 1, + anon_sym_EQ, + [6189] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(573), 1, + anon_sym_of, + [6196] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(575), 1, + sym_identifier, + [6203] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(577), 1, + anon_sym_of, + [6210] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(579), 1, + sym_identifier, + [6217] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(581), 1, + anon_sym_EQ, + [6224] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(583), 1, anon_sym_COLON, - [4425] = 2, + [6231] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(484), 1, + ACTIONS(585), 1, sym_identifier, - [4432] = 2, + [6238] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(486), 1, + ACTIONS(587), 1, sym_identifier, - [4439] = 2, + [6245] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(488), 1, - sym_identifier, - [4446] = 2, + ACTIONS(589), 1, + sym_integer_literal, + [6252] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(490), 1, + ACTIONS(591), 1, sym_identifier, - [4453] = 2, + [6259] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(492), 1, - sym_identifier, - [4460] = 2, + ACTIONS(593), 1, + sym_integer_literal, + [6266] = 2, ACTIONS(3), 1, sym_comment, - ACTIONS(494), 1, + ACTIONS(595), 1, sym_identifier, + [6273] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(597), 1, + sym_integer_literal, + [6280] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(599), 1, + anon_sym_RPAREN, + [6287] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(601), 1, + sym_integer_literal, + [6294] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(603), 1, + sym_identifier, + [6301] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(605), 1, + anon_sym_COLON, + [6308] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(607), 1, + anon_sym_COLON_EQ, + [6315] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(609), 1, + anon_sym_EQ, + [6322] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(611), 1, + anon_sym_EQ, + [6329] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(613), 1, + anon_sym_COLON_EQ, + [6336] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(615), 1, + anon_sym_COLON, + [6343] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(617), 1, + anon_sym_EQ, + [6350] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(619), 1, + anon_sym_COLON, + [6357] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(621), 1, + anon_sym_COLON_EQ, + [6364] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(623), 1, + anon_sym_LPAREN, + [6371] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(625), 1, + anon_sym_LPAREN, + [6378] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(627), 1, + anon_sym_LPAREN, + [6385] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(629), 1, + anon_sym_LPAREN, + [6392] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(631), 1, + anon_sym_of, + [6399] = 2, + ACTIONS(3), 1, + sym_comment, + ACTIONS(633), 1, + anon_sym_LPAREN, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, - [SMALL_STATE(3)] = 48, - [SMALL_STATE(4)] = 88, - [SMALL_STATE(5)] = 128, - [SMALL_STATE(6)] = 174, - [SMALL_STATE(7)] = 221, - [SMALL_STATE(8)] = 258, - [SMALL_STATE(9)] = 305, - [SMALL_STATE(10)] = 342, - [SMALL_STATE(11)] = 383, - [SMALL_STATE(12)] = 420, - [SMALL_STATE(13)] = 457, - [SMALL_STATE(14)] = 494, - [SMALL_STATE(15)] = 531, - [SMALL_STATE(16)] = 568, - [SMALL_STATE(17)] = 615, - [SMALL_STATE(18)] = 662, - [SMALL_STATE(19)] = 711, - [SMALL_STATE(20)] = 748, - [SMALL_STATE(21)] = 785, - [SMALL_STATE(22)] = 822, - [SMALL_STATE(23)] = 859, - [SMALL_STATE(24)] = 896, - [SMALL_STATE(25)] = 933, - [SMALL_STATE(26)] = 970, - [SMALL_STATE(27)] = 1017, - [SMALL_STATE(28)] = 1054, - [SMALL_STATE(29)] = 1099, - [SMALL_STATE(30)] = 1142, - [SMALL_STATE(31)] = 1179, - [SMALL_STATE(32)] = 1216, - [SMALL_STATE(33)] = 1255, - [SMALL_STATE(34)] = 1292, - [SMALL_STATE(35)] = 1329, - [SMALL_STATE(36)] = 1385, - [SMALL_STATE(37)] = 1441, - [SMALL_STATE(38)] = 1497, - [SMALL_STATE(39)] = 1553, - [SMALL_STATE(40)] = 1606, - [SMALL_STATE(41)] = 1659, - [SMALL_STATE(42)] = 1712, - [SMALL_STATE(43)] = 1765, - [SMALL_STATE(44)] = 1818, - [SMALL_STATE(45)] = 1871, - [SMALL_STATE(46)] = 1924, - [SMALL_STATE(47)] = 1977, - [SMALL_STATE(48)] = 2030, - [SMALL_STATE(49)] = 2083, - [SMALL_STATE(50)] = 2136, - [SMALL_STATE(51)] = 2189, - [SMALL_STATE(52)] = 2242, - [SMALL_STATE(53)] = 2295, - [SMALL_STATE(54)] = 2348, - [SMALL_STATE(55)] = 2401, - [SMALL_STATE(56)] = 2454, - [SMALL_STATE(57)] = 2507, - [SMALL_STATE(58)] = 2560, - [SMALL_STATE(59)] = 2613, - [SMALL_STATE(60)] = 2666, - [SMALL_STATE(61)] = 2719, - [SMALL_STATE(62)] = 2772, - [SMALL_STATE(63)] = 2825, - [SMALL_STATE(64)] = 2878, - [SMALL_STATE(65)] = 2931, - [SMALL_STATE(66)] = 2968, - [SMALL_STATE(67)] = 3005, - [SMALL_STATE(68)] = 3042, - [SMALL_STATE(69)] = 3079, - [SMALL_STATE(70)] = 3113, - [SMALL_STATE(71)] = 3150, - [SMALL_STATE(72)] = 3187, - [SMALL_STATE(73)] = 3224, - [SMALL_STATE(74)] = 3257, - [SMALL_STATE(75)] = 3294, - [SMALL_STATE(76)] = 3327, - [SMALL_STATE(77)] = 3360, - [SMALL_STATE(78)] = 3397, - [SMALL_STATE(79)] = 3430, - [SMALL_STATE(80)] = 3462, - [SMALL_STATE(81)] = 3494, - [SMALL_STATE(82)] = 3525, - [SMALL_STATE(83)] = 3556, - [SMALL_STATE(84)] = 3587, - [SMALL_STATE(85)] = 3618, - [SMALL_STATE(86)] = 3649, - [SMALL_STATE(87)] = 3680, - [SMALL_STATE(88)] = 3711, - [SMALL_STATE(89)] = 3733, - [SMALL_STATE(90)] = 3748, - [SMALL_STATE(91)] = 3763, - [SMALL_STATE(92)] = 3778, - [SMALL_STATE(93)] = 3797, - [SMALL_STATE(94)] = 3813, - [SMALL_STATE(95)] = 3826, - [SMALL_STATE(96)] = 3839, - [SMALL_STATE(97)] = 3852, - [SMALL_STATE(98)] = 3865, - [SMALL_STATE(99)] = 3878, - [SMALL_STATE(100)] = 3891, - [SMALL_STATE(101)] = 3904, - [SMALL_STATE(102)] = 3923, - [SMALL_STATE(103)] = 3936, - [SMALL_STATE(104)] = 3950, - [SMALL_STATE(105)] = 3964, - [SMALL_STATE(106)] = 3978, - [SMALL_STATE(107)] = 3992, - [SMALL_STATE(108)] = 4005, - [SMALL_STATE(109)] = 4018, - [SMALL_STATE(110)] = 4031, - [SMALL_STATE(111)] = 4044, - [SMALL_STATE(112)] = 4057, - [SMALL_STATE(113)] = 4070, - [SMALL_STATE(114)] = 4083, - [SMALL_STATE(115)] = 4096, - [SMALL_STATE(116)] = 4109, - [SMALL_STATE(117)] = 4122, - [SMALL_STATE(118)] = 4135, - [SMALL_STATE(119)] = 4148, - [SMALL_STATE(120)] = 4161, - [SMALL_STATE(121)] = 4171, - [SMALL_STATE(122)] = 4181, - [SMALL_STATE(123)] = 4189, - [SMALL_STATE(124)] = 4197, - [SMALL_STATE(125)] = 4207, - [SMALL_STATE(126)] = 4217, - [SMALL_STATE(127)] = 4227, - [SMALL_STATE(128)] = 4237, - [SMALL_STATE(129)] = 4247, - [SMALL_STATE(130)] = 4257, - [SMALL_STATE(131)] = 4264, - [SMALL_STATE(132)] = 4271, - [SMALL_STATE(133)] = 4278, - [SMALL_STATE(134)] = 4285, - [SMALL_STATE(135)] = 4292, - [SMALL_STATE(136)] = 4299, - [SMALL_STATE(137)] = 4306, - [SMALL_STATE(138)] = 4313, - [SMALL_STATE(139)] = 4320, - [SMALL_STATE(140)] = 4327, - [SMALL_STATE(141)] = 4334, - [SMALL_STATE(142)] = 4341, - [SMALL_STATE(143)] = 4348, - [SMALL_STATE(144)] = 4355, - [SMALL_STATE(145)] = 4362, - [SMALL_STATE(146)] = 4369, - [SMALL_STATE(147)] = 4376, - [SMALL_STATE(148)] = 4383, - [SMALL_STATE(149)] = 4390, - [SMALL_STATE(150)] = 4397, - [SMALL_STATE(151)] = 4404, - [SMALL_STATE(152)] = 4411, - [SMALL_STATE(153)] = 4418, - [SMALL_STATE(154)] = 4425, - [SMALL_STATE(155)] = 4432, - [SMALL_STATE(156)] = 4439, - [SMALL_STATE(157)] = 4446, - [SMALL_STATE(158)] = 4453, - [SMALL_STATE(159)] = 4460, + [SMALL_STATE(3)] = 74, + [SMALL_STATE(4)] = 148, + [SMALL_STATE(5)] = 222, + [SMALL_STATE(6)] = 296, + [SMALL_STATE(7)] = 367, + [SMALL_STATE(8)] = 438, + [SMALL_STATE(9)] = 509, + [SMALL_STATE(10)] = 580, + [SMALL_STATE(11)] = 651, + [SMALL_STATE(12)] = 722, + [SMALL_STATE(13)] = 793, + [SMALL_STATE(14)] = 864, + [SMALL_STATE(15)] = 935, + [SMALL_STATE(16)] = 1006, + [SMALL_STATE(17)] = 1077, + [SMALL_STATE(18)] = 1148, + [SMALL_STATE(19)] = 1219, + [SMALL_STATE(20)] = 1290, + [SMALL_STATE(21)] = 1361, + [SMALL_STATE(22)] = 1432, + [SMALL_STATE(23)] = 1503, + [SMALL_STATE(24)] = 1574, + [SMALL_STATE(25)] = 1645, + [SMALL_STATE(26)] = 1716, + [SMALL_STATE(27)] = 1787, + [SMALL_STATE(28)] = 1858, + [SMALL_STATE(29)] = 1929, + [SMALL_STATE(30)] = 2000, + [SMALL_STATE(31)] = 2071, + [SMALL_STATE(32)] = 2142, + [SMALL_STATE(33)] = 2213, + [SMALL_STATE(34)] = 2284, + [SMALL_STATE(35)] = 2355, + [SMALL_STATE(36)] = 2426, + [SMALL_STATE(37)] = 2497, + [SMALL_STATE(38)] = 2546, + [SMALL_STATE(39)] = 2617, + [SMALL_STATE(40)] = 2658, + [SMALL_STATE(41)] = 2705, + [SMALL_STATE(42)] = 2746, + [SMALL_STATE(43)] = 2787, + [SMALL_STATE(44)] = 2837, + [SMALL_STATE(45)] = 2885, + [SMALL_STATE(46)] = 2923, + [SMALL_STATE(47)] = 2961, + [SMALL_STATE(48)] = 2999, + [SMALL_STATE(49)] = 3037, + [SMALL_STATE(50)] = 3085, + [SMALL_STATE(51)] = 3133, + [SMALL_STATE(52)] = 3171, + [SMALL_STATE(53)] = 3209, + [SMALL_STATE(54)] = 3247, + [SMALL_STATE(55)] = 3285, + [SMALL_STATE(56)] = 3333, + [SMALL_STATE(57)] = 3371, + [SMALL_STATE(58)] = 3409, + [SMALL_STATE(59)] = 3447, + [SMALL_STATE(60)] = 3485, + [SMALL_STATE(61)] = 3533, + [SMALL_STATE(62)] = 3571, + [SMALL_STATE(63)] = 3609, + [SMALL_STATE(64)] = 3655, + [SMALL_STATE(65)] = 3699, + [SMALL_STATE(66)] = 3741, + [SMALL_STATE(67)] = 3779, + [SMALL_STATE(68)] = 3819, + [SMALL_STATE(69)] = 3857, + [SMALL_STATE(70)] = 3895, + [SMALL_STATE(71)] = 3933, + [SMALL_STATE(72)] = 3971, + [SMALL_STATE(73)] = 4019, + [SMALL_STATE(74)] = 4057, + [SMALL_STATE(75)] = 4095, + [SMALL_STATE(76)] = 4133, + [SMALL_STATE(77)] = 4171, + [SMALL_STATE(78)] = 4209, + [SMALL_STATE(79)] = 4247, + [SMALL_STATE(80)] = 4285, + [SMALL_STATE(81)] = 4323, + [SMALL_STATE(82)] = 4361, + [SMALL_STATE(83)] = 4399, + [SMALL_STATE(84)] = 4437, + [SMALL_STATE(85)] = 4475, + [SMALL_STATE(86)] = 4512, + [SMALL_STATE(87)] = 4549, + [SMALL_STATE(88)] = 4586, + [SMALL_STATE(89)] = 4619, + [SMALL_STATE(90)] = 4656, + [SMALL_STATE(91)] = 4677, + [SMALL_STATE(92)] = 4714, + [SMALL_STATE(93)] = 4751, + [SMALL_STATE(94)] = 4788, + [SMALL_STATE(95)] = 4825, + [SMALL_STATE(96)] = 4862, + [SMALL_STATE(97)] = 4894, + [SMALL_STATE(98)] = 4926, + [SMALL_STATE(99)] = 4957, + [SMALL_STATE(100)] = 4988, + [SMALL_STATE(101)] = 5019, + [SMALL_STATE(102)] = 5050, + [SMALL_STATE(103)] = 5081, + [SMALL_STATE(104)] = 5112, + [SMALL_STATE(105)] = 5143, + [SMALL_STATE(106)] = 5174, + [SMALL_STATE(107)] = 5205, + [SMALL_STATE(108)] = 5228, + [SMALL_STATE(109)] = 5244, + [SMALL_STATE(110)] = 5260, + [SMALL_STATE(111)] = 5280, + [SMALL_STATE(112)] = 5296, + [SMALL_STATE(113)] = 5312, + [SMALL_STATE(114)] = 5328, + [SMALL_STATE(115)] = 5343, + [SMALL_STATE(116)] = 5358, + [SMALL_STATE(117)] = 5373, + [SMALL_STATE(118)] = 5388, + [SMALL_STATE(119)] = 5403, + [SMALL_STATE(120)] = 5418, + [SMALL_STATE(121)] = 5443, + [SMALL_STATE(122)] = 5458, + [SMALL_STATE(123)] = 5483, + [SMALL_STATE(124)] = 5498, + [SMALL_STATE(125)] = 5515, + [SMALL_STATE(126)] = 5530, + [SMALL_STATE(127)] = 5544, + [SMALL_STATE(128)] = 5558, + [SMALL_STATE(129)] = 5572, + [SMALL_STATE(130)] = 5586, + [SMALL_STATE(131)] = 5600, + [SMALL_STATE(132)] = 5614, + [SMALL_STATE(133)] = 5628, + [SMALL_STATE(134)] = 5642, + [SMALL_STATE(135)] = 5656, + [SMALL_STATE(136)] = 5669, + [SMALL_STATE(137)] = 5682, + [SMALL_STATE(138)] = 5695, + [SMALL_STATE(139)] = 5708, + [SMALL_STATE(140)] = 5721, + [SMALL_STATE(141)] = 5734, + [SMALL_STATE(142)] = 5747, + [SMALL_STATE(143)] = 5760, + [SMALL_STATE(144)] = 5773, + [SMALL_STATE(145)] = 5786, + [SMALL_STATE(146)] = 5799, + [SMALL_STATE(147)] = 5812, + [SMALL_STATE(148)] = 5825, + [SMALL_STATE(149)] = 5838, + [SMALL_STATE(150)] = 5851, + [SMALL_STATE(151)] = 5864, + [SMALL_STATE(152)] = 5877, + [SMALL_STATE(153)] = 5890, + [SMALL_STATE(154)] = 5903, + [SMALL_STATE(155)] = 5916, + [SMALL_STATE(156)] = 5929, + [SMALL_STATE(157)] = 5942, + [SMALL_STATE(158)] = 5955, + [SMALL_STATE(159)] = 5968, + [SMALL_STATE(160)] = 5981, + [SMALL_STATE(161)] = 5994, + [SMALL_STATE(162)] = 6004, + [SMALL_STATE(163)] = 6014, + [SMALL_STATE(164)] = 6024, + [SMALL_STATE(165)] = 6034, + [SMALL_STATE(166)] = 6044, + [SMALL_STATE(167)] = 6054, + [SMALL_STATE(168)] = 6064, + [SMALL_STATE(169)] = 6074, + [SMALL_STATE(170)] = 6082, + [SMALL_STATE(171)] = 6092, + [SMALL_STATE(172)] = 6100, + [SMALL_STATE(173)] = 6110, + [SMALL_STATE(174)] = 6118, + [SMALL_STATE(175)] = 6126, + [SMALL_STATE(176)] = 6133, + [SMALL_STATE(177)] = 6140, + [SMALL_STATE(178)] = 6147, + [SMALL_STATE(179)] = 6154, + [SMALL_STATE(180)] = 6161, + [SMALL_STATE(181)] = 6168, + [SMALL_STATE(182)] = 6175, + [SMALL_STATE(183)] = 6182, + [SMALL_STATE(184)] = 6189, + [SMALL_STATE(185)] = 6196, + [SMALL_STATE(186)] = 6203, + [SMALL_STATE(187)] = 6210, + [SMALL_STATE(188)] = 6217, + [SMALL_STATE(189)] = 6224, + [SMALL_STATE(190)] = 6231, + [SMALL_STATE(191)] = 6238, + [SMALL_STATE(192)] = 6245, + [SMALL_STATE(193)] = 6252, + [SMALL_STATE(194)] = 6259, + [SMALL_STATE(195)] = 6266, + [SMALL_STATE(196)] = 6273, + [SMALL_STATE(197)] = 6280, + [SMALL_STATE(198)] = 6287, + [SMALL_STATE(199)] = 6294, + [SMALL_STATE(200)] = 6301, + [SMALL_STATE(201)] = 6308, + [SMALL_STATE(202)] = 6315, + [SMALL_STATE(203)] = 6322, + [SMALL_STATE(204)] = 6329, + [SMALL_STATE(205)] = 6336, + [SMALL_STATE(206)] = 6343, + [SMALL_STATE(207)] = 6350, + [SMALL_STATE(208)] = 6357, + [SMALL_STATE(209)] = 6364, + [SMALL_STATE(210)] = 6371, + [SMALL_STATE(211)] = 6378, + [SMALL_STATE(212)] = 6385, + [SMALL_STATE(213)] = 6392, + [SMALL_STATE(214)] = 6399, }; static const TSParseActionEntry ts_parse_actions[] = { @@ -5428,243 +7251,312 @@ static const TSParseActionEntry ts_parse_actions[] = { [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT_EXTRA(), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(2), - [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59), - [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(45), - [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(152), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(73), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(159), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(154), - [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(155), - [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(147), - [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(121), - [35] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__lvalue, 1), - [37] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__lvalue, 1), SHIFT(41), - [40] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [42] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__lvalue, 1), - [44] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), - [46] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_value, 4, .production_id = 16), - [48] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_value, 4, .production_id = 16), - [50] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_value, 3, .production_id = 7), - [52] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_value, 3, .production_id = 7), - [54] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), - [56] = {.entry = {.count = 1, .reusable = true}}, SHIFT(151), - [58] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [60] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expr, 1), - [62] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [64] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 6, .production_id = 22), - [66] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), - [68] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [70] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [72] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), - [74] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [76] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [78] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 7, .production_id = 28), - [80] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 7, .production_id = 28), - [82] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 6, .production_id = 24), - [84] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 6, .production_id = 23), - [86] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 6, .production_id = 23), - [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 6), - [90] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 6), - [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 19), - [94] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 19), - [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 18), - [98] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 18), - [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 5, .production_id = 17), - [102] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 5, .production_id = 17), - [104] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 4, .production_id = 13), - [106] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 4, .production_id = 13), - [108] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 4, .production_id = 12), - [110] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 4, .production_id = 12), - [112] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_expression, 4, .production_id = 11), - [114] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_expression, 8, .production_id = 32), - [116] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 4, .production_id = 10), - [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [120] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2), - [122] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2), - [124] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 4), - [126] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 4), - [128] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4, .production_id = 9), - [130] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4, .production_id = 9), - [132] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3), - [134] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3), - [136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 6, .production_id = 25), - [138] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 6, .production_id = 25), - [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 2), - [142] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 2), - [144] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 8), - [146] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, .production_id = 8), - [148] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 1), - [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 3), - [152] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 3), - [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3, .production_id = 3), - [156] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3, .production_id = 3), - [158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 3), - [160] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 3), - [162] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 3, .production_id = 4), - [164] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 3, .production_id = 4), - [166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(71), - [168] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), - [170] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), - [172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [174] = {.entry = {.count = 1, .reusable = false}}, SHIFT(74), - [176] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), - [178] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), - [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [182] = {.entry = {.count = 1, .reusable = false}}, SHIFT(79), - [184] = {.entry = {.count = 1, .reusable = false}}, SHIFT(26), - [186] = {.entry = {.count = 1, .reusable = false}}, SHIFT(81), - [188] = {.entry = {.count = 1, .reusable = false}}, SHIFT(17), - [190] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), - [192] = {.entry = {.count = 1, .reusable = false}}, SHIFT(80), - [194] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85), - [196] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), - [198] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), - [200] = {.entry = {.count = 1, .reusable = false}}, SHIFT(27), - [202] = {.entry = {.count = 1, .reusable = false}}, SHIFT(10), - [204] = {.entry = {.count = 1, .reusable = false}}, SHIFT(29), - [206] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28), - [208] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), - [210] = {.entry = {.count = 1, .reusable = false}}, SHIFT(84), - [212] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), - [214] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), - [216] = {.entry = {.count = 1, .reusable = false}}, SHIFT(70), - [218] = {.entry = {.count = 1, .reusable = false}}, SHIFT(83), - [220] = {.entry = {.count = 1, .reusable = false}}, SHIFT(8), - [222] = {.entry = {.count = 1, .reusable = false}}, SHIFT(86), - [224] = {.entry = {.count = 1, .reusable = false}}, SHIFT(6), - [226] = {.entry = {.count = 1, .reusable = false}}, SHIFT(87), - [228] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), - [230] = {.entry = {.count = 1, .reusable = false}}, SHIFT(16), - [232] = {.entry = {.count = 1, .reusable = false}}, SHIFT(18), - [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 4, .production_id = 15), - [236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 5, .production_id = 20), - [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 6, .production_id = 27), - [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 7, .production_id = 31), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), - [244] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(159), - [247] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(154), - [250] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(155), - [253] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(147), - [256] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(121), - [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), - [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(62), - [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), - [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(159), - [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(154), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(155), - [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(147), - [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), - [283] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), - [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_sequence_expression_repeat1, 2), - [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_call_repeat1, 2), - [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 4, .production_id = 36), - [297] = {.entry = {.count = 1, .reusable = true}}, SHIFT(144), - [299] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [301] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [303] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), - [305] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [307] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat2, 2), - [311] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat2, 2), SHIFT_REPEAT(154), - [314] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat2, 2), SHIFT_REPEAT(155), - [317] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 5, .production_id = 30), - [319] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), - [321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 6, .production_id = 34), - [323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat1, 2), - [325] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat1, 2), SHIFT_REPEAT(159), - [328] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_declaration, 3, .production_id = 5), - [330] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), - [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 2), - [334] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 6, .production_id = 37), - [336] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 3, .production_id = 26), - [338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias, 1, .production_id = 14), - [340] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_declaration, 2, .production_id = 2), - [342] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 4, .production_id = 15), - [344] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 5, .production_id = 33), - [346] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97), - [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), - [350] = {.entry = {.count = 1, .reusable = false}}, SHIFT(130), - [352] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_declaration, 5, .production_id = 21), - [354] = {.entry = {.count = 1, .reusable = false}}, SHIFT(22), - [356] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [358] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_sequence_expression_repeat1, 2), SHIFT_REPEAT(62), - [361] = {.entry = {.count = 1, .reusable = false}}, SHIFT(19), - [363] = {.entry = {.count = 1, .reusable = true}}, SHIFT(103), - [365] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), - [367] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(106), - [370] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 2, .production_id = 29), SHIFT_REPEAT(158), - [373] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 2, .production_id = 29), - [375] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [377] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 35), SHIFT_REPEAT(146), - [380] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 35), - [382] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [384] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), - [386] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [388] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [390] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [392] = {.entry = {.count = 1, .reusable = true}}, SHIFT(140), - [394] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [396] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_repeat1, 2), SHIFT_REPEAT(39), - [399] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [401] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [403] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2, .production_id = 35), SHIFT_REPEAT(140), - [406] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2, .production_id = 35), - [408] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [410] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), - [412] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [414] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 4, .production_id = 33), - [416] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 4, .production_id = 30), - [418] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), - [420] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [422] = {.entry = {.count = 1, .reusable = false}}, SHIFT(131), - [424] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), - [426] = {.entry = {.count = 1, .reusable = true}}, SHIFT(141), - [428] = {.entry = {.count = 1, .reusable = true}}, SHIFT(150), - [430] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [432] = {.entry = {.count = 1, .reusable = true}}, SHIFT(143), - [434] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [436] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), - [438] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), - [440] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [442] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [444] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), - [446] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [448] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), - [450] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101), - [452] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), - [454] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [456] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), - [458] = {.entry = {.count = 1, .reusable = true}}, SHIFT(136), - [460] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [462] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), - [464] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), - [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(116), - [468] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), - [470] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), - [472] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [474] = {.entry = {.count = 1, .reusable = true}}, SHIFT(156), - [476] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [478] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [480] = {.entry = {.count = 1, .reusable = true}}, SHIFT(148), - [482] = {.entry = {.count = 1, .reusable = true}}, SHIFT(157), - [484] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), - [486] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [7] = {.entry = {.count = 1, .reusable = false}}, SHIFT(37), + [9] = {.entry = {.count = 1, .reusable = false}}, SHIFT(98), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(133), + [13] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [17] = {.entry = {.count = 1, .reusable = false}}, SHIFT(28), + [19] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), + [21] = {.entry = {.count = 1, .reusable = false}}, SHIFT(193), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(85), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(181), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(182), + [29] = {.entry = {.count = 1, .reusable = false}}, SHIFT(190), + [31] = {.entry = {.count = 1, .reusable = false}}, SHIFT(199), + [33] = {.entry = {.count = 1, .reusable = false}}, SHIFT(161), + [35] = {.entry = {.count = 1, .reusable = false}}, SHIFT(211), + [37] = {.entry = {.count = 1, .reusable = false}}, SHIFT(212), + [39] = {.entry = {.count = 1, .reusable = false}}, SHIFT(209), + [41] = {.entry = {.count = 1, .reusable = false}}, SHIFT(210), + [43] = {.entry = {.count = 1, .reusable = false}}, SHIFT(214), + [45] = {.entry = {.count = 1, .reusable = false}}, SHIFT(95), + [47] = {.entry = {.count = 1, .reusable = false}}, SHIFT(52), + [49] = {.entry = {.count = 1, .reusable = false}}, SHIFT(93), + [51] = {.entry = {.count = 1, .reusable = false}}, SHIFT(77), + [53] = {.entry = {.count = 1, .reusable = false}}, SHIFT(92), + [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [57] = {.entry = {.count = 1, .reusable = false}}, SHIFT(91), + [59] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), + [61] = {.entry = {.count = 1, .reusable = false}}, SHIFT(78), + [63] = {.entry = {.count = 1, .reusable = false}}, SHIFT(101), + [65] = {.entry = {.count = 1, .reusable = false}}, SHIFT(60), + [67] = {.entry = {.count = 1, .reusable = false}}, SHIFT(83), + [69] = {.entry = {.count = 1, .reusable = false}}, SHIFT(82), + [71] = {.entry = {.count = 1, .reusable = false}}, SHIFT(72), + [73] = {.entry = {.count = 1, .reusable = false}}, SHIFT(79), + [75] = {.entry = {.count = 1, .reusable = false}}, SHIFT(80), + [77] = {.entry = {.count = 1, .reusable = false}}, SHIFT(102), + [79] = {.entry = {.count = 1, .reusable = false}}, SHIFT(44), + [81] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), + [83] = {.entry = {.count = 1, .reusable = false}}, SHIFT(94), + [85] = {.entry = {.count = 1, .reusable = false}}, SHIFT(55), + [87] = {.entry = {.count = 1, .reusable = false}}, SHIFT(104), + [89] = {.entry = {.count = 1, .reusable = false}}, SHIFT(103), + [91] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97), + [93] = {.entry = {.count = 1, .reusable = false}}, SHIFT(43), + [95] = {.entry = {.count = 1, .reusable = false}}, SHIFT(89), + [97] = {.entry = {.count = 1, .reusable = false}}, SHIFT(96), + [99] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), + [101] = {.entry = {.count = 1, .reusable = false}}, SHIFT(81), + [103] = {.entry = {.count = 1, .reusable = false}}, SHIFT(100), + [105] = {.entry = {.count = 1, .reusable = false}}, SHIFT(99), + [107] = {.entry = {.count = 1, .reusable = false}}, SHIFT(62), + [109] = {.entry = {.count = 1, .reusable = false}}, SHIFT(88), + [111] = {.entry = {.count = 1, .reusable = false}}, SHIFT(67), + [113] = {.entry = {.count = 1, .reusable = false}}, SHIFT(66), + [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(65), + [117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(64), + [119] = {.entry = {.count = 1, .reusable = false}}, SHIFT(63), + [121] = {.entry = {.count = 1, .reusable = false}}, SHIFT(49), + [123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__lvalue, 1), + [125] = {.entry = {.count = 2, .reusable = true}}, REDUCE(sym__lvalue, 1), SHIFT(27), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [130] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__lvalue, 1), + [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(162), + [134] = {.entry = {.count = 1, .reusable = false}}, SHIFT(106), + [136] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_value, 3, .production_id = 7), + [138] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_value, 3, .production_id = 7), + [140] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), + [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(191), + [144] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [146] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym__expr, 1), + [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [150] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_meta_lvalue, 4, .production_id = 17), + [152] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_meta_lvalue, 4, .production_id = 17), + [154] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_value, 4, .production_id = 18), + [156] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_array_value, 4, .production_id = 18), + [158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 4, .production_id = 11), + [160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [166] = {.entry = {.count = 1, .reusable = false}}, SHIFT(33), + [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), + [172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [174] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_if_expression, 6, .production_id = 27), + [176] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 20), + [178] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 20), + [180] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 5, .production_id = 19), + [182] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 5, .production_id = 19), + [184] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 2), + [186] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 2), + [188] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_meta_expression, 4, .production_id = 17), + [190] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_meta_expression, 4, .production_id = 17), + [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_unary_expression, 2, .production_id = 1), + [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 6, .production_id = 25), + [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 6, .production_id = 26), + [198] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 6, .production_id = 26), + [200] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 4, .production_id = 14), + [202] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 4, .production_id = 14), + [204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 5, .production_id = 21), + [206] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 5, .production_id = 21), + [208] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 4, .production_id = 13), + [210] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 4, .production_id = 13), + [212] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_while_expression, 4, .production_id = 12), + [214] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 4), + [216] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 4), + [218] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 6, .production_id = 28), + [220] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 6, .production_id = 28), + [222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 4, .production_id = 10), + [224] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 4, .production_id = 10), + [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 3, .production_id = 9), + [228] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 3, .production_id = 9), + [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_for_expression, 8, .production_id = 43), + [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 7, .production_id = 42), + [234] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 7, .production_id = 42), + [236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment_expression, 3, .production_id = 8), + [238] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_assignment_expression, 3, .production_id = 8), + [240] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 6), + [242] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_binary_expression, 3, .production_id = 6), + [244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 3), + [246] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 3), + [248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_string_literal, 2), + [250] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_string_literal, 2), + [252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_meta_cast, 6, .production_id = 33), + [254] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_meta_cast, 6, .production_id = 33), + [256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_call, 3, .production_id = 3), + [258] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_function_call, 3, .production_id = 3), + [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_expression, 6, .production_id = 34), + [262] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 6, .production_id = 35), + [264] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 6, .production_id = 35), + [266] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 3, .production_id = 4), + [268] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 3, .production_id = 4), + [270] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_sequence_expression, 3), + [272] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_sequence_expression, 3), + [274] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_expression, 7, .production_id = 36), + [276] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_record_expression, 7, .production_id = 36), + [278] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_let_expression, 3), + [280] = {.entry = {.count = 1, .reusable = false}}, REDUCE(sym_let_expression, 3), + [282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 5, .production_id = 22), + [284] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 6, .production_id = 32), + [286] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 6, .production_id = 31), + [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_variable_declaration, 4, .production_id = 16), + [290] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 7, .production_id = 40), + [292] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_function_declaration, 7, .production_id = 41), + [294] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), + [296] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(181), + [299] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(182), + [302] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(190), + [305] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(199), + [308] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(161), + [311] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunks, 2), SHIFT_REPEAT(211), + [314] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [316] = {.entry = {.count = 1, .reusable = true}}, SHIFT(181), + [318] = {.entry = {.count = 1, .reusable = true}}, SHIFT(182), + [320] = {.entry = {.count = 1, .reusable = true}}, SHIFT(190), + [322] = {.entry = {.count = 1, .reusable = true}}, SHIFT(199), + [324] = {.entry = {.count = 1, .reusable = true}}, SHIFT(161), + [326] = {.entry = {.count = 1, .reusable = true}}, SHIFT(211), + [328] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [330] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [332] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_sequence_expression_repeat1, 2), + [334] = {.entry = {.count = 1, .reusable = true}}, SHIFT(187), + [336] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [338] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_meta_type_identifier, 4), + [340] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [342] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [344] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [346] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [348] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [350] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [352] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), + [354] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_function_call_repeat1, 2), + [356] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 4, .production_id = 49), + [358] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [360] = {.entry = {.count = 1, .reusable = true}}, SHIFT(184), + [362] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [364] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [366] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [368] = {.entry = {.count = 1, .reusable = true}}, SHIFT(213), + [370] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [372] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [374] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat2, 2), + [376] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat2, 2), SHIFT_REPEAT(182), + [379] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat2, 2), SHIFT_REPEAT(190), + [382] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 5, .production_id = 38), + [384] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 6, .production_id = 46), + [386] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat1, 2), + [388] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__declaration_chunk_repeat1, 2), SHIFT_REPEAT(181), + [391] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 2), + [393] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 6, .production_id = 48), + [395] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_parameters, 5, .production_id = 39), + [397] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 2), + [399] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 6, .production_id = 50), + [401] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias, 1, .production_id = 15), + [403] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_alias, 1), + [405] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 3, .production_id = 29), + [407] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_array_type, 3, .production_id = 30), + [409] = {.entry = {.count = 1, .reusable = false}}, SHIFT(116), + [411] = {.entry = {.count = 1, .reusable = true}}, SHIFT(163), + [413] = {.entry = {.count = 1, .reusable = false}}, SHIFT(186), + [415] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 5, .production_id = 44), + [417] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 5, .production_id = 45), + [419] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_declaration, 3, .production_id = 5), + [421] = {.entry = {.count = 1, .reusable = true}}, SHIFT(153), + [423] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_record_type, 6, .production_id = 51), + [425] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_type_declaration, 4, .production_id = 16), + [427] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_declaration, 5, .production_id = 24), + [429] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_primitive_declaration, 5, .production_id = 23), + [431] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_meta_chunks, 4, .production_id = 17), + [433] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_import_declaration, 2, .production_id = 2), + [435] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_sequence_expression_repeat1, 2), SHIFT_REPEAT(30), + [438] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_string_literal_repeat1, 2), + [440] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_string_literal_repeat1, 2), SHIFT_REPEAT(132), + [443] = {.entry = {.count = 1, .reusable = false}}, SHIFT(69), + [445] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [447] = {.entry = {.count = 1, .reusable = false}}, SHIFT(68), + [449] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [451] = {.entry = {.count = 1, .reusable = true}}, SHIFT(185), + [453] = {.entry = {.count = 1, .reusable = true}}, SHIFT(113), + [455] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [457] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), + [459] = {.entry = {.count = 1, .reusable = false}}, SHIFT(118), + [461] = {.entry = {.count = 1, .reusable = false}}, SHIFT(143), + [463] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_function_call_repeat1, 2), SHIFT_REPEAT(24), + [466] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), + [468] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 2, .production_id = 37), SHIFT_REPEAT(187), + [471] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_expression_repeat1, 2, .production_id = 37), + [473] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [475] = {.entry = {.count = 1, .reusable = true}}, SHIFT(195), + [477] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [479] = {.entry = {.count = 1, .reusable = false}}, SHIFT(173), + [481] = {.entry = {.count = 1, .reusable = false}}, SHIFT(169), + [483] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 47), SHIFT_REPEAT(195), + [486] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 2, .production_id = 47), [488] = {.entry = {.count = 1, .reusable = true}}, SHIFT(123), - [490] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), - [492] = {.entry = {.count = 1, .reusable = true}}, SHIFT(135), - [494] = {.entry = {.count = 1, .reusable = true}}, SHIFT(137), + [490] = {.entry = {.count = 1, .reusable = false}}, SHIFT(144), + [492] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2, .production_id = 47), SHIFT_REPEAT(185), + [495] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 2, .production_id = 47), + [497] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [499] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [501] = {.entry = {.count = 1, .reusable = false}}, SHIFT(128), + [503] = {.entry = {.count = 1, .reusable = false}}, SHIFT(201), + [505] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), + [507] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [509] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [511] = {.entry = {.count = 1, .reusable = false}}, SHIFT(203), + [513] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [515] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [517] = {.entry = {.count = 1, .reusable = true}}, SHIFT(188), + [519] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [521] = {.entry = {.count = 1, .reusable = true}}, SHIFT(207), + [523] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [525] = {.entry = {.count = 1, .reusable = true}}, SHIFT(183), + [527] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [529] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [531] = {.entry = {.count = 1, .reusable = true}}, SHIFT(164), + [533] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [535] = {.entry = {.count = 1, .reusable = false}}, SHIFT(154), + [537] = {.entry = {.count = 1, .reusable = true}}, SHIFT(170), + [539] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 4, .production_id = 38), + [541] = {.entry = {.count = 1, .reusable = true}}, SHIFT(189), + [543] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [545] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_parameters_repeat1, 4, .production_id = 39), + [547] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [549] = {.entry = {.count = 1, .reusable = true}}, SHIFT(158), + [551] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 4, .production_id = 44), + [553] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_record_type_repeat1, 4, .production_id = 45), + [555] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [557] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), + [559] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [561] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [563] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [565] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [567] = {.entry = {.count = 1, .reusable = true}}, SHIFT(206), + [569] = {.entry = {.count = 1, .reusable = true}}, SHIFT(168), + [571] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [573] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [575] = {.entry = {.count = 1, .reusable = true}}, SHIFT(200), + [577] = {.entry = {.count = 1, .reusable = true}}, SHIFT(138), + [579] = {.entry = {.count = 1, .reusable = true}}, SHIFT(179), + [581] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [583] = {.entry = {.count = 1, .reusable = true}}, SHIFT(139), + [585] = {.entry = {.count = 1, .reusable = true}}, SHIFT(167), + [587] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [589] = {.entry = {.count = 1, .reusable = true}}, SHIFT(180), + [591] = {.entry = {.count = 1, .reusable = true}}, SHIFT(208), + [593] = {.entry = {.count = 1, .reusable = true}}, SHIFT(175), + [595] = {.entry = {.count = 1, .reusable = true}}, SHIFT(205), + [597] = {.entry = {.count = 1, .reusable = true}}, SHIFT(176), + [599] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), + [601] = {.entry = {.count = 1, .reusable = true}}, SHIFT(177), + [603] = {.entry = {.count = 1, .reusable = true}}, SHIFT(166), + [605] = {.entry = {.count = 1, .reusable = true}}, SHIFT(146), + [607] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [609] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [611] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [613] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), + [615] = {.entry = {.count = 1, .reusable = true}}, SHIFT(145), + [617] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [619] = {.entry = {.count = 1, .reusable = true}}, SHIFT(149), + [621] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [623] = {.entry = {.count = 1, .reusable = true}}, SHIFT(196), + [625] = {.entry = {.count = 1, .reusable = true}}, SHIFT(194), + [627] = {.entry = {.count = 1, .reusable = true}}, SHIFT(198), + [629] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [631] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [633] = {.entry = {.count = 1, .reusable = true}}, SHIFT(192), }; #ifdef __cplusplus diff --git a/test/corpus/meta-variables.txt b/test/corpus/meta-variables.txt new file mode 100644 index 0000000..4697fc2 --- /dev/null +++ b/test/corpus/meta-variables.txt @@ -0,0 +1,65 @@ +================================================================================ +Meta chunks +================================================================================ + +_chunks(42) + +-------------------------------------------------------------------------------- + +(source_file + (meta_chunks + index: (integer_literal))) + +================================================================================ +Cast +================================================================================ + +_cast(42, string) + +-------------------------------------------------------------------------------- + +(source_file + (meta_cast + expression: (integer_literal) + type: (type_alias + (type_identifier)))) + +================================================================================ +Meta expression +================================================================================ + +_exp(42) + +-------------------------------------------------------------------------------- + +(source_file + (meta_expression + index: (integer_literal))) + +================================================================================ +Meta lvalue +================================================================================ + +_lvalue(42) + +-------------------------------------------------------------------------------- + +(source_file + (meta_lvalue + index: (integer_literal))) + +================================================================================ +Meta type identifier +================================================================================ + +var a : _namety(42) := "I'm So Meta Even This Acronym" + +-------------------------------------------------------------------------------- + +(source_file + (variable_declaration + name: (identifier) + type: (meta_type_identifier + (integer_literal)) + (operator) + value: (string_literal)))