From f267a5be95b6f2f9465dd3bbe0eda031dddb63cc Mon Sep 17 00:00:00 2001 From: Bruno BELANYI Date: Tue, 23 Apr 2024 15:43:10 +0000 Subject: [PATCH] Add multi-valued `select` expression --- grammar.js | 24 +- src/grammar.json | 162 ++- src/node-types.json | 43 +- src/parser.c | 2753 ++++++++++++++++++++++++---------------- test/corpus/select.txt | 122 +- 5 files changed, 1926 insertions(+), 1178 deletions(-) diff --git a/grammar.js b/grammar.js index c75b229..a9e0d8c 100644 --- a/grammar.js +++ b/grammar.js @@ -131,7 +131,12 @@ module.exports = grammar({ ")", ), - select_value: ($) => seq( + select_value: ($) => choice( + $._select_value, + seq("(", commaSeparatedOptTrailing($._select_value), ")"), + ), + + _select_value: ($) => seq( field("name", $.identifier), "(", field("arguments", optional(commaSeparatedNoTrailing($._string_literal))), @@ -145,15 +150,22 @@ module.exports = grammar({ ), select_case: ($) => seq( - field("pattern", choice( - $._string_literal, - $.boolean_literal, - alias("default", $.default), - )), + field("pattern", $.select_pattern), ":", field("value", $._case_value) ), + select_pattern: ($) => choice( + $._select_pattern, + seq("(", commaSeparatedOptTrailing($._select_pattern), ")"), + ), + + _select_pattern: ($) => choice( + $._string_literal, + $.boolean_literal, + alias("default", $.default), + ), + _case_value: ($) => choice( alias("unset", $.unset), $._expr, diff --git a/src/grammar.json b/src/grammar.json index 89b43b4..f55607c 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -487,6 +487,65 @@ ] }, "select_value": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_select_value" + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_select_value" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_select_value" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + } + ] + }, + "_select_value": { "type": "SEQ", "members": [ { @@ -588,26 +647,8 @@ "type": "FIELD", "name": "pattern", "content": { - "type": "CHOICE", - "members": [ - { - "type": "SYMBOL", - "name": "_string_literal" - }, - { - "type": "SYMBOL", - "name": "boolean_literal" - }, - { - "type": "ALIAS", - "content": { - "type": "STRING", - "value": "default" - }, - "named": true, - "value": "default" - } - ] + "type": "SYMBOL", + "name": "select_pattern" } }, { @@ -624,6 +665,87 @@ } ] }, + "select_pattern": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_select_pattern" + }, + { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "(" + }, + { + "type": "SEQ", + "members": [ + { + "type": "SYMBOL", + "name": "_select_pattern" + }, + { + "type": "REPEAT", + "content": { + "type": "SEQ", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "SYMBOL", + "name": "_select_pattern" + } + ] + } + }, + { + "type": "CHOICE", + "members": [ + { + "type": "STRING", + "value": "," + }, + { + "type": "BLANK" + } + ] + } + ] + }, + { + "type": "STRING", + "value": ")" + } + ] + } + ] + }, + "_select_pattern": { + "type": "CHOICE", + "members": [ + { + "type": "SYMBOL", + "name": "_string_literal" + }, + { + "type": "SYMBOL", + "name": "boolean_literal" + }, + { + "type": "ALIAS", + "content": { + "type": "STRING", + "value": "default" + }, + "named": true, + "value": "default" + } + ] + }, "_case_value": { "type": "CHOICE", "members": [ diff --git a/src/node-types.json b/src/node-types.json index 9c77e07..f1817a2 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -354,19 +354,7 @@ "required": true, "types": [ { - "type": "boolean_literal", - "named": true - }, - { - "type": "default", - "named": true - }, - { - "type": "interpreted_string_literal", - "named": true - }, - { - "type": "raw_string_literal", + "type": "select_pattern", "named": true } ] @@ -453,6 +441,33 @@ ] } }, + { + "type": "select_pattern", + "named": true, + "fields": {}, + "children": { + "multiple": true, + "required": true, + "types": [ + { + "type": "boolean_literal", + "named": true + }, + { + "type": "default", + "named": true + }, + { + "type": "interpreted_string_literal", + "named": true + }, + { + "type": "raw_string_literal", + "named": true + } + ] + } + }, { "type": "select_value", "named": true, @@ -476,7 +491,7 @@ ] }, "name": { - "multiple": false, + "multiple": true, "required": true, "types": [ { diff --git a/src/parser.c b/src/parser.c index 1fab250..2efc422 100644 --- a/src/parser.c +++ b/src/parser.c @@ -5,15 +5,15 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 114 +#define STATE_COUNT 140 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 59 +#define SYMBOL_COUNT 64 #define ALIAS_COUNT 0 #define TOKEN_COUNT 30 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 11 #define MAX_ALIAS_SEQUENCE_LENGTH 6 -#define PRODUCTION_ID_COUNT 18 +#define PRODUCTION_ID_COUNT 22 enum ts_symbol_identifiers { anon_sym_SLASH_SLASH = 1, @@ -39,8 +39,8 @@ enum ts_symbol_identifiers { anon_sym_DQUOTE2 = 21, sym_escape_sequence = 22, anon_sym_select = 23, - anon_sym_default = 24, - anon_sym_COLON = 25, + anon_sym_COLON = 24, + anon_sym_default = 25, anon_sym_unset = 26, anon_sym_LBRACK = 27, anon_sym_RBRACK = 28, @@ -59,21 +59,26 @@ enum ts_symbol_identifiers { sym_interpreted_string_literal = 41, sym_select_expression = 42, sym_select_value = 43, - sym_select_cases = 44, - sym_select_case = 45, - sym__case_value = 46, - sym_list_expression = 47, - sym_map_expression = 48, - sym_binary_expression = 49, - sym__colon_property = 50, - sym__equal_property = 51, - aux_sym_source_file_repeat1 = 52, - aux_sym__old_module_repeat1 = 53, - aux_sym__new_module_repeat1 = 54, - aux_sym_interpreted_string_literal_repeat1 = 55, - aux_sym_select_value_repeat1 = 56, - aux_sym_select_cases_repeat1 = 57, - aux_sym_list_expression_repeat1 = 58, + sym__select_value = 44, + sym_select_cases = 45, + sym_select_case = 46, + sym_select_pattern = 47, + sym__select_pattern = 48, + sym__case_value = 49, + sym_list_expression = 50, + sym_map_expression = 51, + sym_binary_expression = 52, + sym__colon_property = 53, + sym__equal_property = 54, + aux_sym_source_file_repeat1 = 55, + aux_sym__old_module_repeat1 = 56, + aux_sym__new_module_repeat1 = 57, + aux_sym_interpreted_string_literal_repeat1 = 58, + aux_sym_select_value_repeat1 = 59, + aux_sym__select_value_repeat1 = 60, + aux_sym_select_cases_repeat1 = 61, + aux_sym_select_pattern_repeat1 = 62, + aux_sym_list_expression_repeat1 = 63, }; static const char * const ts_symbol_names[] = { @@ -101,8 +106,8 @@ static const char * const ts_symbol_names[] = { [anon_sym_DQUOTE2] = "\"", [sym_escape_sequence] = "escape_sequence", [anon_sym_select] = "select", - [anon_sym_default] = "default", [anon_sym_COLON] = ":", + [anon_sym_default] = "default", [anon_sym_unset] = "unset", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", @@ -121,8 +126,11 @@ static const char * const ts_symbol_names[] = { [sym_interpreted_string_literal] = "interpreted_string_literal", [sym_select_expression] = "select_expression", [sym_select_value] = "select_value", + [sym__select_value] = "_select_value", [sym_select_cases] = "select_cases", [sym_select_case] = "select_case", + [sym_select_pattern] = "select_pattern", + [sym__select_pattern] = "_select_pattern", [sym__case_value] = "_case_value", [sym_list_expression] = "list_expression", [sym_map_expression] = "map_expression", @@ -134,7 +142,9 @@ static const char * const ts_symbol_names[] = { [aux_sym__new_module_repeat1] = "_new_module_repeat1", [aux_sym_interpreted_string_literal_repeat1] = "interpreted_string_literal_repeat1", [aux_sym_select_value_repeat1] = "select_value_repeat1", + [aux_sym__select_value_repeat1] = "_select_value_repeat1", [aux_sym_select_cases_repeat1] = "select_cases_repeat1", + [aux_sym_select_pattern_repeat1] = "select_pattern_repeat1", [aux_sym_list_expression_repeat1] = "list_expression_repeat1", }; @@ -163,8 +173,8 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_DQUOTE2] = anon_sym_DQUOTE, [sym_escape_sequence] = sym_escape_sequence, [anon_sym_select] = anon_sym_select, - [anon_sym_default] = anon_sym_default, [anon_sym_COLON] = anon_sym_COLON, + [anon_sym_default] = anon_sym_default, [anon_sym_unset] = anon_sym_unset, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, @@ -183,8 +193,11 @@ static const TSSymbol ts_symbol_map[] = { [sym_interpreted_string_literal] = sym_interpreted_string_literal, [sym_select_expression] = sym_select_expression, [sym_select_value] = sym_select_value, + [sym__select_value] = sym__select_value, [sym_select_cases] = sym_select_cases, [sym_select_case] = sym_select_case, + [sym_select_pattern] = sym_select_pattern, + [sym__select_pattern] = sym__select_pattern, [sym__case_value] = sym__case_value, [sym_list_expression] = sym_list_expression, [sym_map_expression] = sym_map_expression, @@ -196,7 +209,9 @@ static const TSSymbol ts_symbol_map[] = { [aux_sym__new_module_repeat1] = aux_sym__new_module_repeat1, [aux_sym_interpreted_string_literal_repeat1] = aux_sym_interpreted_string_literal_repeat1, [aux_sym_select_value_repeat1] = aux_sym_select_value_repeat1, + [aux_sym__select_value_repeat1] = aux_sym__select_value_repeat1, [aux_sym_select_cases_repeat1] = aux_sym_select_cases_repeat1, + [aux_sym_select_pattern_repeat1] = aux_sym_select_pattern_repeat1, [aux_sym_list_expression_repeat1] = aux_sym_list_expression_repeat1, }; @@ -297,14 +312,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, - [anon_sym_default] = { - .visible = true, - .named = true, - }, [anon_sym_COLON] = { .visible = true, .named = false, }, + [anon_sym_default] = { + .visible = true, + .named = true, + }, [anon_sym_unset] = { .visible = true, .named = true, @@ -377,6 +392,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym__select_value] = { + .visible = false, + .named = true, + }, [sym_select_cases] = { .visible = true, .named = true, @@ -385,6 +404,14 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_select_pattern] = { + .visible = true, + .named = true, + }, + [sym__select_pattern] = { + .visible = false, + .named = true, + }, [sym__case_value] = { .visible = false, .named = true, @@ -429,10 +456,18 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = false, .named = false, }, + [aux_sym__select_value_repeat1] = { + .visible = false, + .named = false, + }, [aux_sym_select_cases_repeat1] = { .visible = false, .named = false, }, + [aux_sym_select_pattern_repeat1] = { + .visible = false, + .named = false, + }, [aux_sym_list_expression_repeat1] = { .visible = false, .named = false, @@ -474,18 +509,22 @@ static const TSFieldMapSlice ts_field_map_slices[PRODUCTION_ID_COUNT] = { [3] = {.index = 5, .length = 1}, [4] = {.index = 6, .length = 4}, [5] = {.index = 10, .length = 3}, - [6] = {.index = 13, .length = 1}, - [7] = {.index = 2, .length = 3}, - [8] = {.index = 14, .length = 2}, - [9] = {.index = 16, .length = 5}, - [10] = {.index = 21, .length = 2}, - [11] = {.index = 23, .length = 4}, - [12] = {.index = 27, .length = 2}, + [6] = {.index = 13, .length = 2}, + [7] = {.index = 15, .length = 1}, + [8] = {.index = 2, .length = 3}, + [9] = {.index = 16, .length = 2}, + [10] = {.index = 18, .length = 5}, + [11] = {.index = 23, .length = 2}, + [12] = {.index = 25, .length = 4}, [13] = {.index = 29, .length = 2}, - [14] = {.index = 31, .length = 1}, - [15] = {.index = 32, .length = 2}, - [16] = {.index = 34, .length = 3}, - [17] = {.index = 37, .length = 2}, + [14] = {.index = 31, .length = 2}, + [15] = {.index = 33, .length = 2}, + [16] = {.index = 35, .length = 1}, + [17] = {.index = 36, .length = 4}, + [18] = {.index = 40, .length = 4}, + [19] = {.index = 44, .length = 2}, + [20] = {.index = 46, .length = 3}, + [21] = {.index = 49, .length = 2}, }; static const TSFieldMapEntry ts_field_map_entries[] = { @@ -508,40 +547,56 @@ static const TSFieldMapEntry ts_field_map_entries[] = { {field_property, 1}, {field_value, 1, .inherited = true}, [13] = + {field_arguments, 0, .inherited = true}, + {field_name, 0, .inherited = true}, + [15] = {field_element, 1}, - [14] = + [16] = {field_field, 0}, {field_value, 2}, - [16] = + [18] = {field_field, 2, .inherited = true}, {field_property, 2}, {field_property, 3, .inherited = true}, {field_type, 0}, {field_value, 2, .inherited = true}, - [21] = + [23] = {field_property, 0, .inherited = true}, {field_property, 1, .inherited = true}, - [23] = + [25] = {field_field, 1, .inherited = true}, {field_property, 1}, {field_property, 2, .inherited = true}, {field_value, 1, .inherited = true}, - [27] = + [29] = {field_element, 1}, {field_element, 2, .inherited = true}, - [29] = + [31] = {field_element, 0, .inherited = true}, {field_element, 1, .inherited = true}, - [31] = + [33] = + {field_arguments, 1, .inherited = true}, + {field_name, 1, .inherited = true}, + [35] = {field_name, 0}, - [32] = + [36] = + {field_arguments, 1, .inherited = true}, + {field_arguments, 2, .inherited = true}, + {field_name, 1, .inherited = true}, + {field_name, 2, .inherited = true}, + [40] = + {field_arguments, 0, .inherited = true}, + {field_arguments, 1, .inherited = true}, + {field_name, 0, .inherited = true}, + {field_name, 1, .inherited = true}, + [44] = {field_arguments, 2}, {field_name, 0}, - [34] = + [46] = {field_arguments, 2}, {field_arguments, 3}, {field_name, 0}, - [37] = + [49] = {field_pattern, 0}, {field_value, 2}, }; @@ -672,6 +727,32 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [111] = 111, [112] = 112, [113] = 113, + [114] = 114, + [115] = 115, + [116] = 116, + [117] = 117, + [118] = 118, + [119] = 119, + [120] = 120, + [121] = 121, + [122] = 122, + [123] = 123, + [124] = 124, + [125] = 125, + [126] = 126, + [127] = 127, + [128] = 128, + [129] = 129, + [130] = 130, + [131] = 131, + [132] = 132, + [133] = 133, + [134] = 134, + [135] = 135, + [136] = 136, + [137] = 137, + [138] = 138, + [139] = 139, }; static inline bool sym_identifier_character_set_1(int32_t c) { @@ -3525,7 +3606,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == ',') ADVANCE(57); if (lookahead == '-') ADVANCE(88); if (lookahead == '/') ADVANCE(53); - if (lookahead == ':') ADVANCE(102); + if (lookahead == ':') ADVANCE(100); if (lookahead == '=') ADVANCE(54); if (lookahead == '[') ADVANCE(104); if (lookahead == '\\') ADVANCE(11); @@ -3562,6 +3643,19 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { lookahead != '\\') ADVANCE(94); END_STATE(); case 3: + if (lookahead == '"') ADVANCE(91); + if (lookahead == '(') ADVANCE(59); + if (lookahead == ')') ADVANCE(60); + if (lookahead == '/') ADVANCE(6); + if (lookahead == '`') ADVANCE(35); + if (lookahead == 'd') ADVANCE(15); + if (lookahead == 'f') ADVANCE(13); + if (lookahead == 't') ADVANCE(21); + if (lookahead == '}') ADVANCE(58); + if (('\t' <= lookahead && lookahead <= '\r') || + lookahead == ' ') SKIP(3) + END_STATE(); + case 4: if (lookahead == '"') ADVANCE(91); if (lookahead == '(') ADVANCE(59); if (lookahead == '+') ADVANCE(10); @@ -3576,11 +3670,11 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 'u') ADVANCE(74); if (lookahead == '{') ADVANCE(56); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(3) + lookahead == ' ') SKIP(4) if (('0' <= lookahead && lookahead <= '9')) ADVANCE(89); if (sym_identifier_character_set_1(lookahead)) ADVANCE(83); END_STATE(); - case 4: + case 5: if (lookahead == '"') ADVANCE(91); if (lookahead == '-') ADVANCE(88); if (lookahead == '/') ADVANCE(6); @@ -3592,21 +3686,10 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 't') ADVANCE(75); if (lookahead == '{') ADVANCE(56); if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(4) + lookahead == ' ') SKIP(5) if (('0' <= lookahead && lookahead <= '9')) ADVANCE(89); if (sym_identifier_character_set_1(lookahead)) ADVANCE(83); END_STATE(); - case 5: - if (lookahead == '"') ADVANCE(91); - if (lookahead == '/') ADVANCE(6); - if (lookahead == '`') ADVANCE(35); - if (lookahead == 'd') ADVANCE(15); - if (lookahead == 'f') ADVANCE(13); - if (lookahead == 't') ADVANCE(21); - if (lookahead == '}') ADVANCE(58); - if (('\t' <= lookahead && lookahead <= '\r') || - lookahead == ' ') SKIP(5) - END_STATE(); case 6: if (lookahead == '*') ADVANCE(48); if (lookahead == '/') ADVANCE(39); @@ -3672,7 +3755,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == 's') ADVANCE(17); END_STATE(); case 23: - if (lookahead == 't') ADVANCE(100); + if (lookahead == 't') ADVANCE(101); END_STATE(); case 24: if (lookahead == 'u') ADVANCE(16); @@ -3740,7 +3823,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == ',') ADVANCE(57); if (lookahead == '-') ADVANCE(88); if (lookahead == '/') ADVANCE(53); - if (lookahead == ':') ADVANCE(102); + if (lookahead == ':') ADVANCE(100); if (lookahead == '=') ADVANCE(54); if (lookahead == '[') ADVANCE(104); if (lookahead == ']') ADVANCE(105); @@ -3760,11 +3843,12 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 37: if (eof) ADVANCE(38); if (lookahead == '"') ADVANCE(91); + if (lookahead == '(') ADVANCE(59); if (lookahead == ')') ADVANCE(60); if (lookahead == '+') ADVANCE(106); if (lookahead == ',') ADVANCE(57); if (lookahead == '/') ADVANCE(6); - if (lookahead == ':') ADVANCE(102); + if (lookahead == ':') ADVANCE(100); if (lookahead == ']') ADVANCE(105); if (lookahead == '`') ADVANCE(35); if (lookahead == '}') ADVANCE(58); @@ -3985,7 +4069,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { END_STATE(); case 80: ACCEPT_TOKEN(sym_identifier); - if (lookahead == 't') ADVANCE(101); + if (lookahead == 't') ADVANCE(102); if (sym_identifier_character_set_3(lookahead)) ADVANCE(83); END_STATE(); case 81: @@ -4075,14 +4159,14 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (sym_identifier_character_set_3(lookahead)) ADVANCE(83); END_STATE(); case 100: - ACCEPT_TOKEN(anon_sym_default); + ACCEPT_TOKEN(anon_sym_COLON); END_STATE(); case 101: ACCEPT_TOKEN(anon_sym_default); - if (sym_identifier_character_set_3(lookahead)) ADVANCE(83); END_STATE(); case 102: - ACCEPT_TOKEN(anon_sym_COLON); + ACCEPT_TOKEN(anon_sym_default); + if (sym_identifier_character_set_3(lookahead)) ADVANCE(83); END_STATE(); case 103: ACCEPT_TOKEN(anon_sym_unset); @@ -4109,22 +4193,22 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, [1] = {.lex_state = 37}, - [2] = {.lex_state = 3}, - [3] = {.lex_state = 4}, - [4] = {.lex_state = 4}, - [5] = {.lex_state = 4}, - [6] = {.lex_state = 4}, - [7] = {.lex_state = 4}, - [8] = {.lex_state = 4}, - [9] = {.lex_state = 4}, - [10] = {.lex_state = 4}, - [11] = {.lex_state = 5}, - [12] = {.lex_state = 5}, - [13] = {.lex_state = 5}, - [14] = {.lex_state = 37}, - [15] = {.lex_state = 37}, - [16] = {.lex_state = 37}, - [17] = {.lex_state = 37}, + [2] = {.lex_state = 4}, + [3] = {.lex_state = 5}, + [4] = {.lex_state = 5}, + [5] = {.lex_state = 5}, + [6] = {.lex_state = 5}, + [7] = {.lex_state = 5}, + [8] = {.lex_state = 5}, + [9] = {.lex_state = 5}, + [10] = {.lex_state = 5}, + [11] = {.lex_state = 3}, + [12] = {.lex_state = 3}, + [13] = {.lex_state = 3}, + [14] = {.lex_state = 3}, + [15] = {.lex_state = 3}, + [16] = {.lex_state = 3}, + [17] = {.lex_state = 3}, [18] = {.lex_state = 37}, [19] = {.lex_state = 37}, [20] = {.lex_state = 37}, @@ -4132,7 +4216,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [22] = {.lex_state = 37}, [23] = {.lex_state = 37}, [24] = {.lex_state = 37}, - [25] = {.lex_state = 37}, + [25] = {.lex_state = 3}, [26] = {.lex_state = 37}, [27] = {.lex_state = 37}, [28] = {.lex_state = 37}, @@ -4142,85 +4226,111 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [32] = {.lex_state = 37}, [33] = {.lex_state = 37}, [34] = {.lex_state = 37}, - [35] = {.lex_state = 5}, + [35] = {.lex_state = 37}, [36] = {.lex_state = 37}, - [37] = {.lex_state = 3}, - [38] = {.lex_state = 1}, - [39] = {.lex_state = 1}, - [40] = {.lex_state = 1}, - [41] = {.lex_state = 37}, + [37] = {.lex_state = 37}, + [38] = {.lex_state = 37}, + [39] = {.lex_state = 37}, + [40] = {.lex_state = 37}, + [41] = {.lex_state = 1}, [42] = {.lex_state = 37}, - [43] = {.lex_state = 0}, + [43] = {.lex_state = 37}, [44] = {.lex_state = 37}, - [45] = {.lex_state = 0}, - [46] = {.lex_state = 1}, - [47] = {.lex_state = 0}, + [45] = {.lex_state = 1}, + [46] = {.lex_state = 4}, + [47] = {.lex_state = 1}, [48] = {.lex_state = 37}, [49] = {.lex_state = 0}, [50] = {.lex_state = 0}, - [51] = {.lex_state = 37}, + [51] = {.lex_state = 1}, [52] = {.lex_state = 37}, [53] = {.lex_state = 0}, - [54] = {.lex_state = 37}, - [55] = {.lex_state = 0}, + [54] = {.lex_state = 0}, + [55] = {.lex_state = 37}, [56] = {.lex_state = 0}, - [57] = {.lex_state = 37}, + [57] = {.lex_state = 0}, [58] = {.lex_state = 37}, - [59] = {.lex_state = 37}, + [59] = {.lex_state = 0}, [60] = {.lex_state = 37}, [61] = {.lex_state = 0}, [62] = {.lex_state = 0}, [63] = {.lex_state = 37}, [64] = {.lex_state = 0}, - [65] = {.lex_state = 0}, - [66] = {.lex_state = 37}, + [65] = {.lex_state = 37}, + [66] = {.lex_state = 0}, [67] = {.lex_state = 37}, - [68] = {.lex_state = 0}, + [68] = {.lex_state = 37}, [69] = {.lex_state = 37}, - [70] = {.lex_state = 37}, - [71] = {.lex_state = 37}, - [72] = {.lex_state = 37}, - [73] = {.lex_state = 37}, - [74] = {.lex_state = 0}, + [70] = {.lex_state = 0}, + [71] = {.lex_state = 0}, + [72] = {.lex_state = 0}, + [73] = {.lex_state = 0}, + [74] = {.lex_state = 37}, [75] = {.lex_state = 37}, - [76] = {.lex_state = 37}, - [77] = {.lex_state = 37}, + [76] = {.lex_state = 0}, + [77] = {.lex_state = 0}, [78] = {.lex_state = 37}, [79] = {.lex_state = 0}, - [80] = {.lex_state = 37}, - [81] = {.lex_state = 37}, + [80] = {.lex_state = 0}, + [81] = {.lex_state = 0}, [82] = {.lex_state = 37}, - [83] = {.lex_state = 0}, + [83] = {.lex_state = 37}, [84] = {.lex_state = 37}, [85] = {.lex_state = 37}, - [86] = {.lex_state = 37}, + [86] = {.lex_state = 0}, [87] = {.lex_state = 37}, [88] = {.lex_state = 37}, [89] = {.lex_state = 37}, [90] = {.lex_state = 37}, - [91] = {.lex_state = 0}, - [92] = {.lex_state = 0}, - [93] = {.lex_state = 0}, - [94] = {.lex_state = 0}, + [91] = {.lex_state = 37}, + [92] = {.lex_state = 37}, + [93] = {.lex_state = 37}, + [94] = {.lex_state = 37}, [95] = {.lex_state = 0}, - [96] = {.lex_state = 0}, + [96] = {.lex_state = 37}, [97] = {.lex_state = 0}, - [98] = {.lex_state = 44}, - [99] = {.lex_state = 0}, + [98] = {.lex_state = 37}, + [99] = {.lex_state = 37}, [100] = {.lex_state = 0}, [101] = {.lex_state = 0}, - [102] = {.lex_state = 0}, - [103] = {.lex_state = 0}, + [102] = {.lex_state = 37}, + [103] = {.lex_state = 37}, [104] = {.lex_state = 0}, [105] = {.lex_state = 0}, - [106] = {.lex_state = 0}, - [107] = {.lex_state = 0}, - [108] = {.lex_state = 0}, + [106] = {.lex_state = 37}, + [107] = {.lex_state = 37}, + [108] = {.lex_state = 37}, [109] = {.lex_state = 0}, - [110] = {.lex_state = 7}, - [111] = {.lex_state = 0}, - [112] = {(TSStateId)(-1)}, - [113] = {(TSStateId)(-1)}, + [110] = {.lex_state = 0}, + [111] = {.lex_state = 37}, + [112] = {.lex_state = 0}, + [113] = {.lex_state = 0}, + [114] = {.lex_state = 0}, + [115] = {.lex_state = 0}, + [116] = {.lex_state = 0}, + [117] = {.lex_state = 7}, + [118] = {.lex_state = 0}, + [119] = {.lex_state = 0}, + [120] = {.lex_state = 0}, + [121] = {.lex_state = 0}, + [122] = {.lex_state = 0}, + [123] = {.lex_state = 0}, + [124] = {.lex_state = 0}, + [125] = {.lex_state = 0}, + [126] = {.lex_state = 0}, + [127] = {.lex_state = 0}, + [128] = {.lex_state = 0}, + [129] = {.lex_state = 0}, + [130] = {.lex_state = 0}, + [131] = {.lex_state = 0}, + [132] = {.lex_state = 44}, + [133] = {.lex_state = 0}, + [134] = {.lex_state = 0}, + [135] = {.lex_state = 0}, + [136] = {.lex_state = 0}, + [137] = {.lex_state = 0}, + [138] = {(TSStateId)(-1)}, + [139] = {(TSStateId)(-1)}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -4247,22 +4357,22 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [anon_sym_DQUOTE2] = ACTIONS(1), [sym_escape_sequence] = ACTIONS(1), [anon_sym_select] = ACTIONS(1), - [anon_sym_default] = ACTIONS(1), [anon_sym_COLON] = ACTIONS(1), + [anon_sym_default] = ACTIONS(1), [anon_sym_unset] = ACTIONS(1), [anon_sym_LBRACK] = ACTIONS(1), [anon_sym_RBRACK] = ACTIONS(1), [anon_sym_PLUS] = ACTIONS(1), }, [1] = { - [sym_source_file] = STATE(108), - [sym__definition] = STATE(80), + [sym_source_file] = STATE(136), + [sym__definition] = STATE(92), [sym_comment] = STATE(1), - [sym_assignment] = STATE(84), - [sym_module] = STATE(84), - [sym__old_module] = STATE(89), - [sym__new_module] = STATE(81), - [aux_sym_source_file_repeat1] = STATE(15), + [sym_assignment] = STATE(88), + [sym_module] = STATE(88), + [sym__old_module] = STATE(94), + [sym__new_module] = STATE(84), + [aux_sym_source_file_repeat1] = STATE(20), [ts_builtin_sym_end] = ACTIONS(7), [anon_sym_SLASH_SLASH] = ACTIONS(3), [anon_sym_SLASH_STAR] = ACTIONS(5), @@ -4296,16 +4406,16 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(2), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(76), 1, + STATE(103), 1, sym__expr, - STATE(95), 1, + STATE(133), 1, sym__case_value, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4338,14 +4448,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(3), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(59), 1, + STATE(83), 1, sym__expr, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4378,14 +4488,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(4), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(59), 1, + STATE(83), 1, sym__expr, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4418,14 +4528,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(5), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, STATE(42), 1, sym__expr, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4456,14 +4566,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(6), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(69), 1, + STATE(82), 1, sym__expr, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4494,14 +4604,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(7), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(63), 1, + STATE(48), 1, sym__expr, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4532,14 +4642,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(8), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(59), 1, + STATE(65), 1, sym__expr, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4570,14 +4680,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(9), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(20), 1, + STATE(36), 1, sym__expr, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4608,14 +4718,14 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(10), 1, sym_comment, - STATE(19), 1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(60), 1, + STATE(83), 1, sym__expr, ACTIONS(15), 2, anon_sym_true, anon_sym_false, - STATE(25), 7, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, @@ -4623,60 +4733,40 @@ static const uint16_t ts_small_parse_table[] = { sym_list_expression, sym_map_expression, sym_binary_expression, - [492] = 11, + [492] = 15, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(21), 1, + sym_raw_string_literal, + ACTIONS(23), 1, + anon_sym_DQUOTE, ACTIONS(37), 1, anon_sym_RBRACE, - ACTIONS(42), 1, - sym_raw_string_literal, - ACTIONS(45), 1, - anon_sym_DQUOTE, - ACTIONS(48), 1, - anon_sym_default, - STATE(19), 1, - sym_interpreted_string_literal, - STATE(101), 1, - sym_select_case, - ACTIONS(39), 2, - anon_sym_true, - anon_sym_false, - STATE(11), 2, - sym_comment, - aux_sym_select_cases_repeat1, - STATE(100), 2, - sym_boolean_literal, - sym__string_literal, - [529] = 12, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(21), 1, - sym_raw_string_literal, - ACTIONS(23), 1, - anon_sym_DQUOTE, - ACTIONS(51), 1, - anon_sym_RBRACE, - ACTIONS(55), 1, + ACTIONS(39), 1, + anon_sym_LPAREN, + ACTIONS(43), 1, anon_sym_default, STATE(11), 1, - aux_sym_select_cases_repeat1, - STATE(12), 1, sym_comment, - STATE(19), 1, + STATE(12), 1, + aux_sym_select_cases_repeat1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(101), 1, + STATE(114), 1, + sym_select_pattern, + STATE(115), 1, + sym__select_pattern, + STATE(131), 1, sym_select_case, - ACTIONS(53), 2, + ACTIONS(41), 2, anon_sym_true, anon_sym_false, - STATE(100), 2, + STATE(56), 2, sym_boolean_literal, sym__string_literal, - [568] = 12, + [540] = 15, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, @@ -4685,107 +4775,166 @@ static const uint16_t ts_small_parse_table[] = { sym_raw_string_literal, ACTIONS(23), 1, anon_sym_DQUOTE, - ACTIONS(55), 1, + ACTIONS(39), 1, + anon_sym_LPAREN, + ACTIONS(43), 1, anon_sym_default, - ACTIONS(57), 1, + ACTIONS(45), 1, anon_sym_RBRACE, STATE(12), 1, - aux_sym_select_cases_repeat1, - STATE(13), 1, sym_comment, - STATE(19), 1, + STATE(13), 1, + aux_sym_select_cases_repeat1, + STATE(23), 1, sym_interpreted_string_literal, - STATE(101), 1, + STATE(114), 1, + sym_select_pattern, + STATE(115), 1, + sym__select_pattern, + STATE(131), 1, sym_select_case, - ACTIONS(53), 2, + ACTIONS(41), 2, anon_sym_true, anon_sym_false, - STATE(100), 2, + STATE(56), 2, sym_boolean_literal, sym__string_literal, - [607] = 4, + [588] = 14, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(47), 1, + anon_sym_RBRACE, + ACTIONS(49), 1, + anon_sym_LPAREN, + ACTIONS(55), 1, + sym_raw_string_literal, + ACTIONS(58), 1, + anon_sym_DQUOTE, + ACTIONS(61), 1, + anon_sym_default, + STATE(23), 1, + sym_interpreted_string_literal, + STATE(114), 1, + sym_select_pattern, + STATE(115), 1, + sym__select_pattern, + STATE(131), 1, + sym_select_case, + ACTIONS(52), 2, + anon_sym_true, + anon_sym_false, + STATE(13), 2, + sym_comment, + aux_sym_select_cases_repeat1, + STATE(56), 2, + sym_boolean_literal, + sym__string_literal, + [634] = 11, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(21), 1, + sym_raw_string_literal, + ACTIONS(23), 1, + anon_sym_DQUOTE, + ACTIONS(43), 1, + anon_sym_default, + ACTIONS(64), 1, + anon_sym_RPAREN, STATE(14), 1, sym_comment, - ACTIONS(59), 8, - ts_builtin_sym_end, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_RPAREN, - sym_identifier, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_PLUS, - [627] = 10, + STATE(23), 1, + sym_interpreted_string_literal, + STATE(105), 1, + sym__select_pattern, + ACTIONS(41), 2, + anon_sym_true, + anon_sym_false, + STATE(56), 2, + sym_boolean_literal, + sym__string_literal, + [670] = 11, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(9), 1, - sym_identifier, - ACTIONS(61), 1, - ts_builtin_sym_end, + ACTIONS(21), 1, + sym_raw_string_literal, + ACTIONS(23), 1, + anon_sym_DQUOTE, + ACTIONS(43), 1, + anon_sym_default, + ACTIONS(66), 1, + anon_sym_RPAREN, STATE(15), 1, sym_comment, - STATE(17), 1, - aux_sym_source_file_repeat1, - STATE(80), 1, - sym__definition, - STATE(81), 1, - sym__new_module, - STATE(89), 1, - sym__old_module, - STATE(84), 2, - sym_assignment, - sym_module, - [659] = 4, + STATE(23), 1, + sym_interpreted_string_literal, + STATE(105), 1, + sym__select_pattern, + ACTIONS(41), 2, + anon_sym_true, + anon_sym_false, + STATE(56), 2, + sym_boolean_literal, + sym__string_literal, + [706] = 10, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(21), 1, + sym_raw_string_literal, + ACTIONS(23), 1, + anon_sym_DQUOTE, + ACTIONS(43), 1, + anon_sym_default, STATE(16), 1, sym_comment, - ACTIONS(63), 8, - ts_builtin_sym_end, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_RPAREN, - sym_identifier, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_PLUS, - [679] = 9, + STATE(23), 1, + sym_interpreted_string_literal, + STATE(80), 1, + sym__select_pattern, + ACTIONS(41), 2, + anon_sym_true, + anon_sym_false, + STATE(56), 2, + sym_boolean_literal, + sym__string_literal, + [739] = 10, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(65), 1, - ts_builtin_sym_end, - ACTIONS(67), 1, - sym_identifier, - STATE(80), 1, - sym__definition, - STATE(81), 1, - sym__new_module, - STATE(89), 1, - sym__old_module, - STATE(17), 2, + ACTIONS(21), 1, + sym_raw_string_literal, + ACTIONS(23), 1, + anon_sym_DQUOTE, + ACTIONS(43), 1, + anon_sym_default, + STATE(17), 1, sym_comment, - aux_sym_source_file_repeat1, - STATE(84), 2, - sym_assignment, - sym_module, - [709] = 4, + STATE(23), 1, + sym_interpreted_string_literal, + STATE(105), 1, + sym__select_pattern, + ACTIONS(41), 2, + anon_sym_true, + anon_sym_false, + STATE(56), 2, + sym_boolean_literal, + sym__string_literal, + [772] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(18), 1, sym_comment, - ACTIONS(70), 8, + ACTIONS(68), 8, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -4794,90 +4943,105 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_COLON, anon_sym_RBRACK, anon_sym_PLUS, - [729] = 4, + [792] = 9, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - STATE(19), 1, + ACTIONS(70), 1, + ts_builtin_sym_end, + ACTIONS(72), 1, + sym_identifier, + STATE(84), 1, + sym__new_module, + STATE(92), 1, + sym__definition, + STATE(94), 1, + sym__old_module, + STATE(19), 2, sym_comment, - ACTIONS(72), 8, - ts_builtin_sym_end, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_RPAREN, - sym_identifier, - anon_sym_COLON, - anon_sym_RBRACK, - anon_sym_PLUS, - [749] = 4, + aux_sym_source_file_repeat1, + STATE(88), 2, + sym_assignment, + sym_module, + [822] = 10, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(9), 1, + sym_identifier, + ACTIONS(75), 1, + ts_builtin_sym_end, + STATE(19), 1, + aux_sym_source_file_repeat1, STATE(20), 1, sym_comment, - ACTIONS(74), 7, - ts_builtin_sym_end, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_RPAREN, - sym_identifier, - anon_sym_RBRACK, - anon_sym_PLUS, - [768] = 4, + STATE(84), 1, + sym__new_module, + STATE(92), 1, + sym__definition, + STATE(94), 1, + sym__old_module, + STATE(88), 2, + sym_assignment, + sym_module, + [854] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(21), 1, sym_comment, - ACTIONS(76), 7, + ACTIONS(77), 8, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_PLUS, - [787] = 4, + [874] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(22), 1, sym_comment, - ACTIONS(78), 7, + ACTIONS(79), 8, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_PLUS, - [806] = 4, + [894] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(23), 1, sym_comment, - ACTIONS(80), 7, + ACTIONS(81), 8, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, + anon_sym_COLON, anon_sym_RBRACK, anon_sym_PLUS, - [825] = 4, + [914] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(24), 1, sym_comment, - ACTIONS(82), 7, + ACTIONS(83), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -4885,29 +5049,29 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [844] = 4, + [933] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(25), 1, sym_comment, - ACTIONS(84), 7, - ts_builtin_sym_end, - anon_sym_COMMA, + ACTIONS(47), 7, anon_sym_RBRACE, - anon_sym_RPAREN, - sym_identifier, - anon_sym_RBRACK, - anon_sym_PLUS, - [863] = 4, + anon_sym_LPAREN, + anon_sym_true, + anon_sym_false, + sym_raw_string_literal, + anon_sym_DQUOTE, + anon_sym_default, + [952] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(26), 1, sym_comment, - ACTIONS(86), 7, + ACTIONS(85), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -4915,14 +5079,14 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [882] = 4, + [971] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(27), 1, sym_comment, - ACTIONS(88), 7, + ACTIONS(87), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -4930,14 +5094,14 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [901] = 4, + [990] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(28), 1, sym_comment, - ACTIONS(90), 7, + ACTIONS(89), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -4945,14 +5109,14 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [920] = 4, + [1009] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(29), 1, sym_comment, - ACTIONS(92), 7, + ACTIONS(91), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -4960,14 +5124,14 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [939] = 4, + [1028] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(30), 1, sym_comment, - ACTIONS(94), 7, + ACTIONS(93), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -4975,14 +5139,14 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [958] = 4, + [1047] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(31), 1, sym_comment, - ACTIONS(96), 7, + ACTIONS(95), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -4990,14 +5154,14 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [977] = 4, + [1066] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(32), 1, sym_comment, - ACTIONS(98), 7, + ACTIONS(97), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -5005,14 +5169,14 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [996] = 4, + [1085] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(33), 1, sym_comment, - ACTIONS(100), 7, + ACTIONS(99), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -5020,14 +5184,14 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [1015] = 4, + [1104] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(34), 1, sym_comment, - ACTIONS(102), 7, + ACTIONS(101), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -5035,96 +5199,82 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_RBRACK, anon_sym_PLUS, - [1034] = 4, + [1123] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(35), 1, sym_comment, - ACTIONS(37), 6, + ACTIONS(103), 7, + ts_builtin_sym_end, + anon_sym_COMMA, anon_sym_RBRACE, - anon_sym_true, - anon_sym_false, - sym_raw_string_literal, - anon_sym_DQUOTE, - anon_sym_default, - [1052] = 8, + anon_sym_RPAREN, + sym_identifier, + anon_sym_RBRACK, + anon_sym_PLUS, + [1142] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(21), 1, - sym_raw_string_literal, - ACTIONS(23), 1, - anon_sym_DQUOTE, - ACTIONS(104), 1, - anon_sym_RPAREN, - STATE(19), 1, - sym_interpreted_string_literal, STATE(36), 1, sym_comment, - STATE(56), 1, - sym__string_literal, - [1077] = 6, + ACTIONS(105), 7, + ts_builtin_sym_end, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_RBRACK, + anon_sym_PLUS, + [1161] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(108), 1, - anon_sym_LBRACE, - ACTIONS(110), 1, - anon_sym_LPAREN, STATE(37), 1, sym_comment, - ACTIONS(106), 2, - anon_sym_EQ, - anon_sym_PLUS_EQ, - [1097] = 7, - ACTIONS(112), 1, + ACTIONS(107), 7, + ts_builtin_sym_end, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_RBRACK, + anon_sym_PLUS, + [1180] = 4, + ACTIONS(3), 1, anon_sym_SLASH_SLASH, - ACTIONS(114), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(116), 1, - aux_sym_interpreted_string_literal_token1, - ACTIONS(118), 1, - anon_sym_DQUOTE2, - ACTIONS(120), 1, - sym_escape_sequence, STATE(38), 1, sym_comment, - STATE(39), 1, - aux_sym_interpreted_string_literal_repeat1, - [1119] = 7, - ACTIONS(112), 1, + ACTIONS(109), 7, + ts_builtin_sym_end, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_RBRACK, + anon_sym_PLUS, + [1199] = 4, + ACTIONS(3), 1, anon_sym_SLASH_SLASH, - ACTIONS(114), 1, + ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(116), 1, - aux_sym_interpreted_string_literal_token1, - ACTIONS(120), 1, - sym_escape_sequence, - ACTIONS(122), 1, - anon_sym_DQUOTE2, STATE(39), 1, sym_comment, - STATE(40), 1, - aux_sym_interpreted_string_literal_repeat1, - [1141] = 6, - ACTIONS(112), 1, - anon_sym_SLASH_SLASH, - ACTIONS(114), 1, - anon_sym_SLASH_STAR, - ACTIONS(124), 1, - aux_sym_interpreted_string_literal_token1, - ACTIONS(127), 1, - anon_sym_DQUOTE2, - ACTIONS(129), 1, - sym_escape_sequence, - STATE(40), 2, - sym_comment, - aux_sym_interpreted_string_literal_repeat1, - [1161] = 7, + ACTIONS(111), 7, + ts_builtin_sym_end, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_RBRACK, + anon_sym_PLUS, + [1218] = 8, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, @@ -5133,779 +5283,1097 @@ static const uint16_t ts_small_parse_table[] = { sym_raw_string_literal, ACTIONS(23), 1, anon_sym_DQUOTE, - STATE(19), 1, + ACTIONS(113), 1, + anon_sym_RPAREN, + STATE(23), 1, sym_interpreted_string_literal, - STATE(41), 1, + STATE(40), 1, sym_comment, - STATE(83), 1, + STATE(72), 1, sym__string_literal, - [1183] = 7, + [1243] = 6, + ACTIONS(115), 1, + anon_sym_SLASH_SLASH, + ACTIONS(117), 1, + anon_sym_SLASH_STAR, + ACTIONS(119), 1, + aux_sym_interpreted_string_literal_token1, + ACTIONS(122), 1, + anon_sym_DQUOTE2, + ACTIONS(124), 1, + sym_escape_sequence, + STATE(41), 2, + sym_comment, + aux_sym_interpreted_string_literal_repeat1, + [1263] = 7, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(132), 1, + ACTIONS(127), 1, anon_sym_COMMA, - ACTIONS(134), 1, + ACTIONS(129), 1, anon_sym_RBRACK, - ACTIONS(136), 1, + ACTIONS(131), 1, anon_sym_PLUS, STATE(42), 1, sym_comment, - STATE(61), 1, + STATE(64), 1, aux_sym_list_expression_repeat1, - [1205] = 5, + [1285] = 7, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(138), 1, - anon_sym_COMMA, - ACTIONS(141), 1, - anon_sym_RBRACK, - STATE(43), 2, + ACTIONS(21), 1, + sym_raw_string_literal, + ACTIONS(23), 1, + anon_sym_DQUOTE, + STATE(23), 1, + sym_interpreted_string_literal, + STATE(43), 1, sym_comment, - aux_sym_list_expression_repeat1, - [1222] = 6, + STATE(109), 1, + sym__string_literal, + [1307] = 7, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(143), 1, - anon_sym_RBRACE, - ACTIONS(145), 1, + ACTIONS(133), 1, + anon_sym_LPAREN, + ACTIONS(135), 1, sym_identifier, STATE(44), 1, sym_comment, - STATE(91), 1, - sym__colon_property, - [1241] = 6, - ACTIONS(3), 1, + STATE(135), 1, + sym__select_value, + STATE(137), 1, + sym_select_value, + [1329] = 7, + ACTIONS(115), 1, anon_sym_SLASH_SLASH, - ACTIONS(5), 1, + ACTIONS(117), 1, anon_sym_SLASH_STAR, - ACTIONS(147), 1, - anon_sym_COMMA, - ACTIONS(149), 1, - anon_sym_RBRACE, + ACTIONS(137), 1, + aux_sym_interpreted_string_literal_token1, + ACTIONS(139), 1, + anon_sym_DQUOTE2, + ACTIONS(141), 1, + sym_escape_sequence, + STATE(41), 1, + aux_sym_interpreted_string_literal_repeat1, STATE(45), 1, sym_comment, - STATE(55), 1, - aux_sym__old_module_repeat1, - [1260] = 5, - ACTIONS(112), 1, - anon_sym_SLASH_SLASH, - ACTIONS(114), 1, - anon_sym_SLASH_STAR, - ACTIONS(151), 1, - aux_sym_interpreted_string_literal_token1, - STATE(46), 1, - sym_comment, - ACTIONS(153), 2, - anon_sym_DQUOTE2, - sym_escape_sequence, - [1277] = 5, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(155), 1, - anon_sym_COMMA, - ACTIONS(158), 1, - anon_sym_RPAREN, - STATE(47), 2, - sym_comment, - aux_sym_select_value_repeat1, - [1294] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(145), 1, - sym_identifier, - ACTIONS(160), 1, - anon_sym_RBRACE, - STATE(48), 1, - sym_comment, - STATE(91), 1, - sym__colon_property, - [1313] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(162), 1, - anon_sym_COMMA, - ACTIONS(164), 1, - anon_sym_RPAREN, - STATE(47), 1, - aux_sym_select_value_repeat1, - STATE(49), 1, - sym_comment, - [1332] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(166), 1, - anon_sym_COMMA, - ACTIONS(168), 1, - anon_sym_RBRACE, - STATE(50), 1, - sym_comment, - STATE(68), 1, - aux_sym__old_module_repeat1, [1351] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(170), 1, - anon_sym_RPAREN, - ACTIONS(172), 1, - sym_identifier, - STATE(51), 1, - sym_comment, - STATE(74), 1, - sym__equal_property, - [1370] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(145), 1, - sym_identifier, - ACTIONS(174), 1, - anon_sym_RBRACE, - STATE(52), 1, + anon_sym_LBRACE, + ACTIONS(147), 1, + anon_sym_LPAREN, + STATE(46), 1, sym_comment, - STATE(62), 1, - sym__colon_property, - [1389] = 6, + ACTIONS(143), 2, + anon_sym_EQ, + anon_sym_PLUS_EQ, + [1371] = 7, + ACTIONS(115), 1, + anon_sym_SLASH_SLASH, + ACTIONS(117), 1, + anon_sym_SLASH_STAR, + ACTIONS(137), 1, + aux_sym_interpreted_string_literal_token1, + ACTIONS(141), 1, + sym_escape_sequence, + ACTIONS(149), 1, + anon_sym_DQUOTE2, + STATE(45), 1, + aux_sym_interpreted_string_literal_repeat1, + STATE(47), 1, + sym_comment, + [1393] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(176), 1, + ACTIONS(131), 1, + anon_sym_PLUS, + STATE(48), 1, + sym_comment, + ACTIONS(151), 2, anon_sym_COMMA, - ACTIONS(178), 1, anon_sym_RPAREN, - STATE(53), 1, - sym_comment, - STATE(65), 1, - aux_sym__new_module_repeat1, - [1408] = 6, + [1410] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(145), 1, - sym_identifier, - ACTIONS(180), 1, - anon_sym_RBRACE, - STATE(54), 1, - sym_comment, - STATE(91), 1, - sym__colon_property, - [1427] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(182), 1, + ACTIONS(153), 1, anon_sym_COMMA, - ACTIONS(184), 1, - anon_sym_RBRACE, - STATE(55), 1, - sym_comment, - STATE(68), 1, - aux_sym__old_module_repeat1, - [1446] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(162), 1, - anon_sym_COMMA, - ACTIONS(186), 1, + ACTIONS(155), 1, anon_sym_RPAREN, STATE(49), 1, - aux_sym_select_value_repeat1, - STATE(56), 1, sym_comment, + STATE(73), 1, + aux_sym_select_value_repeat1, + [1429] = 6, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(157), 1, + anon_sym_COMMA, + ACTIONS(159), 1, + anon_sym_RBRACE, + STATE(50), 1, + sym_comment, + STATE(59), 1, + aux_sym__old_module_repeat1, + [1448] = 5, + ACTIONS(115), 1, + anon_sym_SLASH_SLASH, + ACTIONS(117), 1, + anon_sym_SLASH_STAR, + ACTIONS(161), 1, + aux_sym_interpreted_string_literal_token1, + STATE(51), 1, + sym_comment, + ACTIONS(163), 2, + anon_sym_DQUOTE2, + sym_escape_sequence, [1465] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(172), 1, + ACTIONS(165), 1, + anon_sym_RBRACE, + ACTIONS(167), 1, sym_identifier, - ACTIONS(188), 1, + STATE(52), 1, + sym_comment, + STATE(101), 1, + sym__colon_property, + [1484] = 5, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(169), 1, + anon_sym_COMMA, + ACTIONS(172), 1, + anon_sym_RPAREN, + STATE(53), 2, + sym_comment, + aux_sym__select_value_repeat1, + [1501] = 6, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(174), 1, + anon_sym_COMMA, + ACTIONS(176), 1, + anon_sym_RBRACE, + STATE(54), 1, + sym_comment, + STATE(70), 1, + aux_sym__old_module_repeat1, + [1520] = 6, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(178), 1, + anon_sym_RPAREN, + ACTIONS(180), 1, + sym_identifier, + STATE(55), 1, + sym_comment, + STATE(95), 1, + sym__equal_property, + [1539] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(56), 1, + sym_comment, + ACTIONS(182), 3, + anon_sym_COMMA, + anon_sym_RPAREN, + anon_sym_COLON, + [1554] = 6, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(184), 1, + anon_sym_COMMA, + ACTIONS(186), 1, anon_sym_RPAREN, STATE(57), 1, sym_comment, - STATE(64), 1, - sym__equal_property, - [1484] = 6, + STATE(76), 1, + aux_sym__new_module_repeat1, + [1573] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(145), 1, + ACTIONS(167), 1, sym_identifier, - ACTIONS(190), 1, + ACTIONS(188), 1, anon_sym_RBRACE, - STATE(45), 1, - sym__colon_property, STATE(58), 1, sym_comment, - [1503] = 5, + STATE(101), 1, + sym__colon_property, + [1592] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(136), 1, - anon_sym_PLUS, + ACTIONS(190), 1, + anon_sym_COMMA, + ACTIONS(192), 1, + anon_sym_RBRACE, STATE(59), 1, sym_comment, - ACTIONS(192), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [1520] = 5, + STATE(70), 1, + aux_sym__old_module_repeat1, + [1611] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(136), 1, - anon_sym_PLUS, + ACTIONS(167), 1, + sym_identifier, + ACTIONS(194), 1, + anon_sym_RBRACE, STATE(60), 1, sym_comment, - ACTIONS(194), 2, - ts_builtin_sym_end, - sym_identifier, - [1537] = 6, + STATE(81), 1, + sym__colon_property, + [1630] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, ACTIONS(196), 1, anon_sym_COMMA, - ACTIONS(198), 1, - anon_sym_RBRACK, - STATE(43), 1, - aux_sym_list_expression_repeat1, - STATE(61), 1, - sym_comment, - [1556] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(200), 1, - anon_sym_COMMA, - ACTIONS(202), 1, - anon_sym_RBRACE, - STATE(50), 1, - aux_sym__old_module_repeat1, - STATE(62), 1, - sym_comment, - [1575] = 5, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(136), 1, - anon_sym_PLUS, - STATE(63), 1, - sym_comment, - ACTIONS(204), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [1592] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(206), 1, - anon_sym_COMMA, - ACTIONS(208), 1, + ACTIONS(199), 1, anon_sym_RPAREN, - STATE(53), 1, - aux_sym__new_module_repeat1, - STATE(64), 1, + STATE(61), 2, sym_comment, - [1611] = 5, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(210), 1, - anon_sym_COMMA, - ACTIONS(213), 1, - anon_sym_RPAREN, - STATE(65), 2, - sym_comment, - aux_sym__new_module_repeat1, - [1628] = 6, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(145), 1, - sym_identifier, - ACTIONS(215), 1, - anon_sym_RBRACE, - STATE(66), 1, - sym_comment, - STATE(91), 1, - sym__colon_property, + aux_sym_select_pattern_repeat1, [1647] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(172), 1, + ACTIONS(201), 1, + anon_sym_COMMA, + ACTIONS(203), 1, + anon_sym_RPAREN, + STATE(53), 1, + aux_sym__select_value_repeat1, + STATE(62), 1, + sym_comment, + [1666] = 6, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(180), 1, sym_identifier, - ACTIONS(217), 1, + ACTIONS(205), 1, + anon_sym_RPAREN, + STATE(63), 1, + sym_comment, + STATE(77), 1, + sym__equal_property, + [1685] = 6, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(207), 1, + anon_sym_COMMA, + ACTIONS(209), 1, + anon_sym_RBRACK, + STATE(64), 1, + sym_comment, + STATE(79), 1, + aux_sym_list_expression_repeat1, + [1704] = 5, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(131), 1, + anon_sym_PLUS, + STATE(65), 1, + sym_comment, + ACTIONS(211), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [1721] = 5, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(213), 1, + anon_sym_COMMA, + ACTIONS(216), 1, + anon_sym_RPAREN, + STATE(66), 2, + sym_comment, + aux_sym_select_value_repeat1, + [1738] = 6, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(135), 1, + sym_identifier, + ACTIONS(218), 1, anon_sym_RPAREN, STATE(67), 1, sym_comment, - STATE(74), 1, - sym__equal_property, - [1666] = 5, + STATE(100), 1, + sym__select_value, + [1757] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(219), 1, - anon_sym_COMMA, + ACTIONS(167), 1, + sym_identifier, + ACTIONS(220), 1, + anon_sym_RBRACE, + STATE(68), 1, + sym_comment, + STATE(101), 1, + sym__colon_property, + [1776] = 6, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(167), 1, + sym_identifier, ACTIONS(222), 1, anon_sym_RBRACE, - STATE(68), 2, - sym_comment, - aux_sym__old_module_repeat1, - [1683] = 5, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(136), 1, - anon_sym_PLUS, + STATE(50), 1, + sym__colon_property, STATE(69), 1, sym_comment, - ACTIONS(224), 2, + [1795] = 5, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(224), 1, anon_sym_COMMA, - anon_sym_RPAREN, - [1700] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - STATE(70), 1, + ACTIONS(227), 1, + anon_sym_RBRACE, + STATE(70), 2, sym_comment, - ACTIONS(226), 2, - ts_builtin_sym_end, - sym_identifier, - [1714] = 4, + aux_sym__old_module_repeat1, + [1812] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(64), 1, + anon_sym_RPAREN, + ACTIONS(229), 1, + anon_sym_COMMA, + STATE(61), 1, + aux_sym_select_pattern_repeat1, STATE(71), 1, sym_comment, - ACTIONS(228), 2, - ts_builtin_sym_end, - sym_identifier, - [1728] = 4, + [1831] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(201), 1, + anon_sym_COMMA, + ACTIONS(231), 1, + anon_sym_RPAREN, + STATE(62), 1, + aux_sym__select_value_repeat1, STATE(72), 1, sym_comment, - ACTIONS(230), 2, - ts_builtin_sym_end, - sym_identifier, - [1742] = 4, + [1850] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(233), 1, + anon_sym_COMMA, + ACTIONS(235), 1, + anon_sym_RPAREN, + STATE(66), 1, + aux_sym_select_value_repeat1, STATE(73), 1, sym_comment, - ACTIONS(232), 2, - ts_builtin_sym_end, - sym_identifier, - [1756] = 4, + [1869] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(180), 1, + sym_identifier, + ACTIONS(237), 1, + anon_sym_RPAREN, STATE(74), 1, sym_comment, - ACTIONS(234), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [1770] = 4, + STATE(95), 1, + sym__equal_property, + [1888] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(135), 1, + sym_identifier, + ACTIONS(239), 1, + anon_sym_RPAREN, STATE(75), 1, sym_comment, - ACTIONS(236), 2, - ts_builtin_sym_end, - sym_identifier, - [1784] = 5, + STATE(100), 1, + sym__select_value, + [1907] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(136), 1, - anon_sym_PLUS, - ACTIONS(238), 1, + ACTIONS(241), 1, anon_sym_COMMA, - STATE(76), 1, + ACTIONS(244), 1, + anon_sym_RPAREN, + STATE(76), 2, sym_comment, - [1800] = 5, + aux_sym__new_module_repeat1, + [1924] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(240), 1, - sym_identifier, + ACTIONS(246), 1, + anon_sym_COMMA, + ACTIONS(248), 1, + anon_sym_RPAREN, + STATE(57), 1, + aux_sym__new_module_repeat1, STATE(77), 1, sym_comment, - STATE(93), 1, - sym_select_value, - [1816] = 4, + [1943] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(167), 1, + sym_identifier, + ACTIONS(250), 1, + anon_sym_RBRACE, STATE(78), 1, sym_comment, - ACTIONS(242), 2, - ts_builtin_sym_end, - sym_identifier, - [1830] = 5, + STATE(101), 1, + sym__colon_property, + [1962] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(244), 1, - anon_sym_LBRACE, - STATE(79), 1, + ACTIONS(252), 1, + anon_sym_COMMA, + ACTIONS(255), 1, + anon_sym_RBRACK, + STATE(79), 2, sym_comment, - STATE(103), 1, - sym_select_cases, - [1846] = 4, + aux_sym_list_expression_repeat1, + [1979] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(257), 1, + anon_sym_COMMA, + ACTIONS(259), 1, + anon_sym_RPAREN, + STATE(71), 1, + aux_sym_select_pattern_repeat1, STATE(80), 1, sym_comment, - ACTIONS(246), 2, - ts_builtin_sym_end, - sym_identifier, - [1860] = 4, + [1998] = 6, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(261), 1, + anon_sym_COMMA, + ACTIONS(263), 1, + anon_sym_RBRACE, + STATE(54), 1, + aux_sym__old_module_repeat1, STATE(81), 1, sym_comment, - ACTIONS(248), 2, - ts_builtin_sym_end, - sym_identifier, - [1874] = 4, + [2017] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(131), 1, + anon_sym_PLUS, STATE(82), 1, sym_comment, - ACTIONS(250), 2, + ACTIONS(265), 2, ts_builtin_sym_end, sym_identifier, - [1888] = 4, + [2034] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(131), 1, + anon_sym_PLUS, STATE(83), 1, sym_comment, - ACTIONS(158), 2, + ACTIONS(267), 2, anon_sym_COMMA, - anon_sym_RPAREN, - [1902] = 4, + anon_sym_RBRACK, + [2051] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(84), 1, sym_comment, - ACTIONS(252), 2, + ACTIONS(269), 2, ts_builtin_sym_end, sym_identifier, - [1916] = 4, + [2065] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(85), 1, sym_comment, - ACTIONS(254), 2, + ACTIONS(271), 2, ts_builtin_sym_end, sym_identifier, - [1930] = 5, + [2079] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(145), 1, - sym_identifier, + ACTIONS(273), 1, + anon_sym_LBRACE, STATE(86), 1, sym_comment, - STATE(91), 1, - sym__colon_property, - [1946] = 4, + STATE(123), 1, + sym_select_cases, + [2095] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(87), 1, sym_comment, - ACTIONS(256), 2, + ACTIONS(275), 2, ts_builtin_sym_end, sym_identifier, - [1960] = 5, + [2109] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(172), 1, - sym_identifier, - STATE(74), 1, - sym__equal_property, STATE(88), 1, sym_comment, - [1976] = 4, + ACTIONS(277), 2, + ts_builtin_sym_end, + sym_identifier, + [2123] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(167), 1, + sym_identifier, STATE(89), 1, sym_comment, - ACTIONS(248), 2, - ts_builtin_sym_end, - sym_identifier, - [1990] = 4, + STATE(101), 1, + sym__colon_property, + [2139] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, STATE(90), 1, sym_comment, - ACTIONS(258), 2, + ACTIONS(279), 2, ts_builtin_sym_end, sym_identifier, - [2004] = 4, + [2153] = 5, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, + ACTIONS(180), 1, + sym_identifier, STATE(91), 1, sym_comment, - ACTIONS(260), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [2018] = 4, + STATE(95), 1, + sym__equal_property, + [2169] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(262), 1, - anon_sym_LPAREN, STATE(92), 1, sym_comment, - [2031] = 4, + ACTIONS(281), 2, + ts_builtin_sym_end, + sym_identifier, + [2183] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(264), 1, - anon_sym_COMMA, STATE(93), 1, sym_comment, - [2044] = 4, + ACTIONS(283), 2, + ts_builtin_sym_end, + sym_identifier, + [2197] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(266), 1, - anon_sym_SLASH, STATE(94), 1, sym_comment, - [2057] = 4, + ACTIONS(269), 2, + ts_builtin_sym_end, + sym_identifier, + [2211] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(268), 1, - anon_sym_COMMA, STATE(95), 1, sym_comment, - [2070] = 4, + ACTIONS(285), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [2225] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(270), 1, - anon_sym_COLON, STATE(96), 1, sym_comment, - [2083] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(272), 1, - anon_sym_COMMA, - STATE(97), 1, - sym_comment, - [2096] = 4, - ACTIONS(112), 1, - anon_sym_SLASH_SLASH, - ACTIONS(114), 1, - anon_sym_SLASH_STAR, - ACTIONS(274), 1, - aux_sym_comment_token1, - STATE(98), 1, - sym_comment, - [2109] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(276), 1, - anon_sym_RPAREN, - STATE(99), 1, - sym_comment, - [2122] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(278), 1, - anon_sym_COLON, - STATE(100), 1, - sym_comment, - [2135] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(280), 1, - anon_sym_COMMA, - STATE(101), 1, - sym_comment, - [2148] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(282), 1, - anon_sym_COMMA, - STATE(102), 1, - sym_comment, - [2161] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(284), 1, - anon_sym_RPAREN, - STATE(103), 1, - sym_comment, - [2174] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(286), 1, - anon_sym_LPAREN, - STATE(104), 1, - sym_comment, - [2187] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(288), 1, - anon_sym_COMMA, - STATE(105), 1, - sym_comment, - [2200] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(290), 1, - anon_sym_EQ, - STATE(106), 1, - sym_comment, - [2213] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(292), 1, - aux_sym_integer_literal_token1, - STATE(107), 1, - sym_comment, - [2226] = 4, - ACTIONS(3), 1, - anon_sym_SLASH_SLASH, - ACTIONS(5), 1, - anon_sym_SLASH_STAR, - ACTIONS(294), 1, + ACTIONS(287), 2, ts_builtin_sym_end, - STATE(108), 1, - sym_comment, + sym_identifier, [2239] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(296), 1, + STATE(97), 1, + sym_comment, + ACTIONS(289), 2, + anon_sym_COMMA, anon_sym_RPAREN, - STATE(109), 1, - sym_comment, - [2252] = 4, - ACTIONS(112), 1, - anon_sym_SLASH_SLASH, - ACTIONS(114), 1, - anon_sym_SLASH_STAR, - ACTIONS(298), 1, - aux_sym_comment_token2, - STATE(110), 1, - sym_comment, - [2265] = 4, + [2253] = 4, ACTIONS(3), 1, anon_sym_SLASH_SLASH, ACTIONS(5), 1, anon_sym_SLASH_STAR, - ACTIONS(238), 1, + STATE(98), 1, + sym_comment, + ACTIONS(291), 2, + ts_builtin_sym_end, + sym_identifier, + [2267] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(99), 1, + sym_comment, + ACTIONS(293), 2, + ts_builtin_sym_end, + sym_identifier, + [2281] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(100), 1, + sym_comment, + ACTIONS(295), 2, anon_sym_COMMA, + anon_sym_RPAREN, + [2295] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(101), 1, + sym_comment, + ACTIONS(297), 2, + anon_sym_COMMA, + anon_sym_RBRACE, + [2309] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(102), 1, + sym_comment, + ACTIONS(299), 2, + ts_builtin_sym_end, + sym_identifier, + [2323] = 5, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(131), 1, + anon_sym_PLUS, + ACTIONS(301), 1, + anon_sym_COMMA, + STATE(103), 1, + sym_comment, + [2339] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(104), 1, + sym_comment, + ACTIONS(303), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [2353] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(105), 1, + sym_comment, + ACTIONS(199), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [2367] = 5, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(135), 1, + sym_identifier, + STATE(49), 1, + sym__select_value, + STATE(106), 1, + sym_comment, + [2383] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(107), 1, + sym_comment, + ACTIONS(305), 2, + ts_builtin_sym_end, + sym_identifier, + [2397] = 5, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(135), 1, + sym_identifier, + STATE(100), 1, + sym__select_value, + STATE(108), 1, + sym_comment, + [2413] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(109), 1, + sym_comment, + ACTIONS(172), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [2427] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + STATE(110), 1, + sym_comment, + ACTIONS(307), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [2441] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, STATE(111), 1, sym_comment, - [2278] = 1, - ACTIONS(300), 1, + ACTIONS(309), 2, ts_builtin_sym_end, - [2282] = 1, - ACTIONS(302), 1, + sym_identifier, + [2455] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(311), 1, + anon_sym_LPAREN, + STATE(112), 1, + sym_comment, + [2468] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(301), 1, + anon_sym_COMMA, + STATE(113), 1, + sym_comment, + [2481] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(313), 1, + anon_sym_COLON, + STATE(114), 1, + sym_comment, + [2494] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(315), 1, + anon_sym_COLON, + STATE(115), 1, + sym_comment, + [2507] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(317), 1, + anon_sym_SLASH, + STATE(116), 1, + sym_comment, + [2520] = 4, + ACTIONS(115), 1, + anon_sym_SLASH_SLASH, + ACTIONS(117), 1, + anon_sym_SLASH_STAR, + ACTIONS(319), 1, + aux_sym_comment_token2, + STATE(117), 1, + sym_comment, + [2533] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(321), 1, + anon_sym_COMMA, + STATE(118), 1, + sym_comment, + [2546] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(323), 1, + anon_sym_COLON, + STATE(119), 1, + sym_comment, + [2559] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(325), 1, + anon_sym_COMMA, + STATE(120), 1, + sym_comment, + [2572] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(327), 1, + anon_sym_RPAREN, + STATE(121), 1, + sym_comment, + [2585] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(329), 1, + anon_sym_COMMA, + STATE(122), 1, + sym_comment, + [2598] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(331), 1, + anon_sym_RPAREN, + STATE(123), 1, + sym_comment, + [2611] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(333), 1, + anon_sym_LPAREN, + STATE(124), 1, + sym_comment, + [2624] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(335), 1, + aux_sym_integer_literal_token1, + STATE(125), 1, + sym_comment, + [2637] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(337), 1, + anon_sym_RPAREN, + STATE(126), 1, + sym_comment, + [2650] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(339), 1, + anon_sym_COMMA, + STATE(127), 1, + sym_comment, + [2663] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(341), 1, + anon_sym_COLON, + STATE(128), 1, + sym_comment, + [2676] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(343), 1, + anon_sym_COLON, + STATE(129), 1, + sym_comment, + [2689] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(345), 1, + anon_sym_EQ, + STATE(130), 1, + sym_comment, + [2702] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(347), 1, + anon_sym_COMMA, + STATE(131), 1, + sym_comment, + [2715] = 4, + ACTIONS(115), 1, + anon_sym_SLASH_SLASH, + ACTIONS(117), 1, + anon_sym_SLASH_STAR, + ACTIONS(349), 1, + aux_sym_comment_token1, + STATE(132), 1, + sym_comment, + [2728] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(351), 1, + anon_sym_COMMA, + STATE(133), 1, + sym_comment, + [2741] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(353), 1, + anon_sym_COLON, + STATE(134), 1, + sym_comment, + [2754] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(355), 1, + anon_sym_COMMA, + STATE(135), 1, + sym_comment, + [2767] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(357), 1, + ts_builtin_sym_end, + STATE(136), 1, + sym_comment, + [2780] = 4, + ACTIONS(3), 1, + anon_sym_SLASH_SLASH, + ACTIONS(5), 1, + anon_sym_SLASH_STAR, + ACTIONS(359), 1, + anon_sym_COMMA, + STATE(137), 1, + sym_comment, + [2793] = 1, + ACTIONS(361), 1, + ts_builtin_sym_end, + [2797] = 1, + ACTIONS(363), 1, ts_builtin_sym_end, }; @@ -5920,258 +6388,313 @@ static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(9)] = 386, [SMALL_STATE(10)] = 439, [SMALL_STATE(11)] = 492, - [SMALL_STATE(12)] = 529, - [SMALL_STATE(13)] = 568, - [SMALL_STATE(14)] = 607, - [SMALL_STATE(15)] = 627, - [SMALL_STATE(16)] = 659, - [SMALL_STATE(17)] = 679, - [SMALL_STATE(18)] = 709, - [SMALL_STATE(19)] = 729, - [SMALL_STATE(20)] = 749, - [SMALL_STATE(21)] = 768, - [SMALL_STATE(22)] = 787, - [SMALL_STATE(23)] = 806, - [SMALL_STATE(24)] = 825, - [SMALL_STATE(25)] = 844, - [SMALL_STATE(26)] = 863, - [SMALL_STATE(27)] = 882, - [SMALL_STATE(28)] = 901, - [SMALL_STATE(29)] = 920, - [SMALL_STATE(30)] = 939, - [SMALL_STATE(31)] = 958, - [SMALL_STATE(32)] = 977, - [SMALL_STATE(33)] = 996, - [SMALL_STATE(34)] = 1015, - [SMALL_STATE(35)] = 1034, - [SMALL_STATE(36)] = 1052, - [SMALL_STATE(37)] = 1077, - [SMALL_STATE(38)] = 1097, - [SMALL_STATE(39)] = 1119, - [SMALL_STATE(40)] = 1141, - [SMALL_STATE(41)] = 1161, - [SMALL_STATE(42)] = 1183, - [SMALL_STATE(43)] = 1205, - [SMALL_STATE(44)] = 1222, - [SMALL_STATE(45)] = 1241, - [SMALL_STATE(46)] = 1260, - [SMALL_STATE(47)] = 1277, - [SMALL_STATE(48)] = 1294, - [SMALL_STATE(49)] = 1313, - [SMALL_STATE(50)] = 1332, - [SMALL_STATE(51)] = 1351, - [SMALL_STATE(52)] = 1370, - [SMALL_STATE(53)] = 1389, - [SMALL_STATE(54)] = 1408, - [SMALL_STATE(55)] = 1427, - [SMALL_STATE(56)] = 1446, - [SMALL_STATE(57)] = 1465, - [SMALL_STATE(58)] = 1484, - [SMALL_STATE(59)] = 1503, - [SMALL_STATE(60)] = 1520, - [SMALL_STATE(61)] = 1537, - [SMALL_STATE(62)] = 1556, - [SMALL_STATE(63)] = 1575, - [SMALL_STATE(64)] = 1592, - [SMALL_STATE(65)] = 1611, - [SMALL_STATE(66)] = 1628, - [SMALL_STATE(67)] = 1647, - [SMALL_STATE(68)] = 1666, - [SMALL_STATE(69)] = 1683, - [SMALL_STATE(70)] = 1700, - [SMALL_STATE(71)] = 1714, - [SMALL_STATE(72)] = 1728, - [SMALL_STATE(73)] = 1742, - [SMALL_STATE(74)] = 1756, - [SMALL_STATE(75)] = 1770, - [SMALL_STATE(76)] = 1784, - [SMALL_STATE(77)] = 1800, - [SMALL_STATE(78)] = 1816, - [SMALL_STATE(79)] = 1830, - [SMALL_STATE(80)] = 1846, - [SMALL_STATE(81)] = 1860, - [SMALL_STATE(82)] = 1874, - [SMALL_STATE(83)] = 1888, - [SMALL_STATE(84)] = 1902, - [SMALL_STATE(85)] = 1916, - [SMALL_STATE(86)] = 1930, - [SMALL_STATE(87)] = 1946, - [SMALL_STATE(88)] = 1960, - [SMALL_STATE(89)] = 1976, - [SMALL_STATE(90)] = 1990, - [SMALL_STATE(91)] = 2004, - [SMALL_STATE(92)] = 2018, - [SMALL_STATE(93)] = 2031, - [SMALL_STATE(94)] = 2044, - [SMALL_STATE(95)] = 2057, - [SMALL_STATE(96)] = 2070, - [SMALL_STATE(97)] = 2083, - [SMALL_STATE(98)] = 2096, - [SMALL_STATE(99)] = 2109, - [SMALL_STATE(100)] = 2122, - [SMALL_STATE(101)] = 2135, - [SMALL_STATE(102)] = 2148, - [SMALL_STATE(103)] = 2161, - [SMALL_STATE(104)] = 2174, - [SMALL_STATE(105)] = 2187, - [SMALL_STATE(106)] = 2200, - [SMALL_STATE(107)] = 2213, - [SMALL_STATE(108)] = 2226, - [SMALL_STATE(109)] = 2239, - [SMALL_STATE(110)] = 2252, - [SMALL_STATE(111)] = 2265, - [SMALL_STATE(112)] = 2278, - [SMALL_STATE(113)] = 2282, + [SMALL_STATE(12)] = 540, + [SMALL_STATE(13)] = 588, + [SMALL_STATE(14)] = 634, + [SMALL_STATE(15)] = 670, + [SMALL_STATE(16)] = 706, + [SMALL_STATE(17)] = 739, + [SMALL_STATE(18)] = 772, + [SMALL_STATE(19)] = 792, + [SMALL_STATE(20)] = 822, + [SMALL_STATE(21)] = 854, + [SMALL_STATE(22)] = 874, + [SMALL_STATE(23)] = 894, + [SMALL_STATE(24)] = 914, + [SMALL_STATE(25)] = 933, + [SMALL_STATE(26)] = 952, + [SMALL_STATE(27)] = 971, + [SMALL_STATE(28)] = 990, + [SMALL_STATE(29)] = 1009, + [SMALL_STATE(30)] = 1028, + [SMALL_STATE(31)] = 1047, + [SMALL_STATE(32)] = 1066, + [SMALL_STATE(33)] = 1085, + [SMALL_STATE(34)] = 1104, + [SMALL_STATE(35)] = 1123, + [SMALL_STATE(36)] = 1142, + [SMALL_STATE(37)] = 1161, + [SMALL_STATE(38)] = 1180, + [SMALL_STATE(39)] = 1199, + [SMALL_STATE(40)] = 1218, + [SMALL_STATE(41)] = 1243, + [SMALL_STATE(42)] = 1263, + [SMALL_STATE(43)] = 1285, + [SMALL_STATE(44)] = 1307, + [SMALL_STATE(45)] = 1329, + [SMALL_STATE(46)] = 1351, + [SMALL_STATE(47)] = 1371, + [SMALL_STATE(48)] = 1393, + [SMALL_STATE(49)] = 1410, + [SMALL_STATE(50)] = 1429, + [SMALL_STATE(51)] = 1448, + [SMALL_STATE(52)] = 1465, + [SMALL_STATE(53)] = 1484, + [SMALL_STATE(54)] = 1501, + [SMALL_STATE(55)] = 1520, + [SMALL_STATE(56)] = 1539, + [SMALL_STATE(57)] = 1554, + [SMALL_STATE(58)] = 1573, + [SMALL_STATE(59)] = 1592, + [SMALL_STATE(60)] = 1611, + [SMALL_STATE(61)] = 1630, + [SMALL_STATE(62)] = 1647, + [SMALL_STATE(63)] = 1666, + [SMALL_STATE(64)] = 1685, + [SMALL_STATE(65)] = 1704, + [SMALL_STATE(66)] = 1721, + [SMALL_STATE(67)] = 1738, + [SMALL_STATE(68)] = 1757, + [SMALL_STATE(69)] = 1776, + [SMALL_STATE(70)] = 1795, + [SMALL_STATE(71)] = 1812, + [SMALL_STATE(72)] = 1831, + [SMALL_STATE(73)] = 1850, + [SMALL_STATE(74)] = 1869, + [SMALL_STATE(75)] = 1888, + [SMALL_STATE(76)] = 1907, + [SMALL_STATE(77)] = 1924, + [SMALL_STATE(78)] = 1943, + [SMALL_STATE(79)] = 1962, + [SMALL_STATE(80)] = 1979, + [SMALL_STATE(81)] = 1998, + [SMALL_STATE(82)] = 2017, + [SMALL_STATE(83)] = 2034, + [SMALL_STATE(84)] = 2051, + [SMALL_STATE(85)] = 2065, + [SMALL_STATE(86)] = 2079, + [SMALL_STATE(87)] = 2095, + [SMALL_STATE(88)] = 2109, + [SMALL_STATE(89)] = 2123, + [SMALL_STATE(90)] = 2139, + [SMALL_STATE(91)] = 2153, + [SMALL_STATE(92)] = 2169, + [SMALL_STATE(93)] = 2183, + [SMALL_STATE(94)] = 2197, + [SMALL_STATE(95)] = 2211, + [SMALL_STATE(96)] = 2225, + [SMALL_STATE(97)] = 2239, + [SMALL_STATE(98)] = 2253, + [SMALL_STATE(99)] = 2267, + [SMALL_STATE(100)] = 2281, + [SMALL_STATE(101)] = 2295, + [SMALL_STATE(102)] = 2309, + [SMALL_STATE(103)] = 2323, + [SMALL_STATE(104)] = 2339, + [SMALL_STATE(105)] = 2353, + [SMALL_STATE(106)] = 2367, + [SMALL_STATE(107)] = 2383, + [SMALL_STATE(108)] = 2397, + [SMALL_STATE(109)] = 2413, + [SMALL_STATE(110)] = 2427, + [SMALL_STATE(111)] = 2441, + [SMALL_STATE(112)] = 2455, + [SMALL_STATE(113)] = 2468, + [SMALL_STATE(114)] = 2481, + [SMALL_STATE(115)] = 2494, + [SMALL_STATE(116)] = 2507, + [SMALL_STATE(117)] = 2520, + [SMALL_STATE(118)] = 2533, + [SMALL_STATE(119)] = 2546, + [SMALL_STATE(120)] = 2559, + [SMALL_STATE(121)] = 2572, + [SMALL_STATE(122)] = 2585, + [SMALL_STATE(123)] = 2598, + [SMALL_STATE(124)] = 2611, + [SMALL_STATE(125)] = 2624, + [SMALL_STATE(126)] = 2637, + [SMALL_STATE(127)] = 2650, + [SMALL_STATE(128)] = 2663, + [SMALL_STATE(129)] = 2676, + [SMALL_STATE(130)] = 2689, + [SMALL_STATE(131)] = 2702, + [SMALL_STATE(132)] = 2715, + [SMALL_STATE(133)] = 2728, + [SMALL_STATE(134)] = 2741, + [SMALL_STATE(135)] = 2754, + [SMALL_STATE(136)] = 2767, + [SMALL_STATE(137)] = 2780, + [SMALL_STATE(138)] = 2793, + [SMALL_STATE(139)] = 2797, }; static const TSParseActionEntry ts_parse_actions[] = { [0] = {.entry = {.count = 0, .reusable = false}}, [1] = {.entry = {.count = 1, .reusable = false}}, RECOVER(), - [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), - [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(132), + [5] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), [7] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(25), - [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(14), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(104), - [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(111), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), + [11] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35), + [15] = {.entry = {.count = 1, .reusable = false}}, SHIFT(22), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(125), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [23] = {.entry = {.count = 1, .reusable = true}}, SHIFT(47), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(112), + [27] = {.entry = {.count = 1, .reusable = false}}, SHIFT(113), [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [37] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), - [39] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(14), - [42] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(19), - [45] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(38), - [48] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(100), - [51] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [53] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), - [55] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [57] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), - [59] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1), - [61] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [63] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 3), - [65] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [67] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(37), - [70] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 2), - [72] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__string_literal, 1), - [74] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 7), - [76] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 3, .production_id = 5), - [78] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4, .production_id = 6), - [80] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 1), - [82] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 2), - [84] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), - [86] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 11), - [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 5), - [90] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 5, .production_id = 12), - [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 3, .production_id = 6), - [94] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4, .production_id = 12), - [96] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 5, .production_id = 11), - [98] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_expression, 6), - [100] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 2), - [102] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 2), - [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), - [106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), - [108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), - [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(57), - [112] = {.entry = {.count = 1, .reusable = false}}, SHIFT(98), - [114] = {.entry = {.count = 1, .reusable = false}}, SHIFT(110), - [116] = {.entry = {.count = 1, .reusable = false}}, SHIFT(46), - [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [124] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(46), - [127] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), - [129] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(46), - [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [138] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 13), SHIFT_REPEAT(8), - [141] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 13), - [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), - [151] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), - [153] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), - [155] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_value_repeat1, 2), SHIFT_REPEAT(41), - [158] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_select_value_repeat1, 2), - [160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), - [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), - [164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(105), - [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), - [172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(70), - [176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), - [178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), - [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [182] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), - [188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [192] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 6), - [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 2), - [196] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [198] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [200] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [202] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [204] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__colon_property, 3, .production_id = 8), - [206] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), - [208] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), - [210] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 10), SHIFT_REPEAT(88), - [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 10), - [215] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), - [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [219] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 10), SHIFT_REPEAT(86), - [222] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 10), - [224] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__equal_property, 3, .production_id = 8), - [226] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 3, .production_id = 3), - [228] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 3, .production_id = 3), - [230] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 5, .production_id = 9), - [232] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 5, .production_id = 4), - [234] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 5), - [236] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 5, .production_id = 9), - [238] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__case_value, 1), - [240] = {.entry = {.count = 1, .reusable = true}}, SHIFT(92), - [242] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 5, .production_id = 4), - [244] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), - [246] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), - [248] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, .production_id = 1), - [250] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 4, .production_id = 4), - [252] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__definition, 1), - [254] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 6, .production_id = 9), - [256] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 6, .production_id = 9), - [258] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 4, .production_id = 4), - [260] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 5), - [262] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [264] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [266] = {.entry = {.count = 1, .reusable = false}}, SHIFT(112), - [268] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_case, 3, .production_id = 17), - [270] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [272] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 4, .production_id = 15), - [274] = {.entry = {.count = 1, .reusable = false}}, SHIFT(113), - [276] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 2), - [278] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [280] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [282] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 3, .production_id = 14), - [284] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [286] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), - [288] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 5, .production_id = 16), - [290] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [292] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [294] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [296] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 3), - [298] = {.entry = {.count = 1, .reusable = false}}, SHIFT(94), - [300] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 3), - [302] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), + [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38), + [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(121), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), + [41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [43] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), + [45] = {.entry = {.count = 1, .reusable = true}}, SHIFT(126), + [47] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), + [49] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(16), + [52] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(22), + [55] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(23), + [58] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(47), + [61] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(56), + [64] = {.entry = {.count = 1, .reusable = true}}, SHIFT(134), + [66] = {.entry = {.count = 1, .reusable = true}}, SHIFT(119), + [68] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 2), + [70] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [72] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(46), + [75] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [77] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 3), + [79] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1), + [81] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__string_literal, 1), + [83] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 2), + [85] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 3, .production_id = 7), + [87] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 3, .production_id = 5), + [89] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4, .production_id = 7), + [91] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 12), + [93] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 5), + [95] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 1), + [97] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 5, .production_id = 12), + [99] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 2), + [101] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4, .production_id = 13), + [103] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), + [105] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 8), + [107] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 5, .production_id = 13), + [109] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 2), + [111] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_expression, 6), + [113] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [115] = {.entry = {.count = 1, .reusable = false}}, SHIFT(132), + [117] = {.entry = {.count = 1, .reusable = false}}, SHIFT(117), + [119] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(51), + [122] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), + [124] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(51), + [127] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [129] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [131] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [133] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [135] = {.entry = {.count = 1, .reusable = true}}, SHIFT(124), + [137] = {.entry = {.count = 1, .reusable = false}}, SHIFT(51), + [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(51), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(60), + [147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), + [151] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__equal_property, 3, .production_id = 9), + [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(75), + [155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(127), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [161] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), + [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), + [165] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(128), + [169] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__select_value_repeat1, 2), SHIFT_REPEAT(43), + [172] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__select_value_repeat1, 2), + [174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(68), + [176] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99), + [178] = {.entry = {.count = 1, .reusable = true}}, SHIFT(107), + [180] = {.entry = {.count = 1, .reusable = true}}, SHIFT(130), + [182] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__select_pattern, 1), + [184] = {.entry = {.count = 1, .reusable = true}}, SHIFT(74), + [186] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [188] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), + [190] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [192] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [194] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), + [196] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_pattern_repeat1, 2), SHIFT_REPEAT(17), + [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_select_pattern_repeat1, 2), + [201] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [205] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), + [207] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [209] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__colon_property, 3, .production_id = 9), + [213] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_value_repeat1, 2, .production_id = 18), SHIFT_REPEAT(108), + [216] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_select_value_repeat1, 2, .production_id = 18), + [218] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [220] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [222] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [224] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 11), SHIFT_REPEAT(89), + [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 11), + [229] = {.entry = {.count = 1, .reusable = true}}, SHIFT(15), + [231] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [233] = {.entry = {.count = 1, .reusable = true}}, SHIFT(67), + [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120), + [237] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), + [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(122), + [241] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 11), SHIFT_REPEAT(91), + [244] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 11), + [246] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [248] = {.entry = {.count = 1, .reusable = true}}, SHIFT(85), + [250] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), + [252] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 14), SHIFT_REPEAT(10), + [255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 14), + [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(129), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(111), + [265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 2), + [267] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 7), + [269] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, .production_id = 1), + [271] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 4, .production_id = 4), + [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(11), + [275] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 3, .production_id = 3), + [277] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__definition, 1), + [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 6, .production_id = 10), + [281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), + [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 5, .production_id = 10), + [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 5), + [287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 3, .production_id = 3), + [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__select_value, 3, .production_id = 16), + [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 6, .production_id = 10), + [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 5, .production_id = 10), + [295] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_select_value_repeat1, 2, .production_id = 15), + [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 5), + [299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 5, .production_id = 4), + [301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__case_value, 1), + [303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__select_value, 4, .production_id = 19), + [305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 5, .production_id = 4), + [307] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__select_value, 5, .production_id = 20), + [309] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 4, .production_id = 4), + [311] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), + [313] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [315] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_pattern, 1), + [317] = {.entry = {.count = 1, .reusable = false}}, SHIFT(138), + [319] = {.entry = {.count = 1, .reusable = false}}, SHIFT(116), + [321] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 5, .production_id = 17), + [323] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_pattern, 5), + [325] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 4, .production_id = 17), + [327] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 2), + [329] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 4, .production_id = 15), + [331] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), + [333] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [335] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [337] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 3), + [339] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 3, .production_id = 15), + [341] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [343] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_pattern, 3), + [345] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [347] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [349] = {.entry = {.count = 1, .reusable = false}}, SHIFT(139), + [351] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_case, 3, .production_id = 21), + [353] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_pattern, 4), + [355] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 1, .production_id = 6), + [357] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [359] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [361] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 3), + [363] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), }; #ifdef __cplusplus diff --git a/test/corpus/select.txt b/test/corpus/select.txt index fc4bf04..281a985 100644 --- a/test/corpus/select.txt +++ b/test/corpus/select.txt @@ -19,10 +19,12 @@ foo = select(release_variable("RELEASE_TEST"), { (interpreted_string_literal)) (select_cases (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (default) + (select_pattern + (default)) (unset)))))) ================================================================================ @@ -47,10 +49,12 @@ foo = select(soong_config_variable("my_namespace", "my_var"), { (interpreted_string_literal)) (select_cases (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (unset)) (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)))))) ================================================================================ @@ -76,16 +80,20 @@ foo = select(variant("arch"), { (interpreted_string_literal)) (select_cases (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)))))) ================================================================================ @@ -130,19 +138,24 @@ foo = select(variant("VARIANT"), { (interpreted_string_literal)) (select_cases (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (default) + (select_pattern + (default)) (unset)) (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)))))) ================================================================================ @@ -165,10 +178,12 @@ foo = select(variant(), { (identifier)) (select_cases (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (unset)) (select_case - (default) + (select_pattern + (default)) (interpreted_string_literal)))))) ================================================================================ @@ -192,10 +207,12 @@ foo = select(some_unknown_type("CONDITION"), { (interpreted_string_literal)) (select_cases (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (default) + (select_pattern + (default)) (interpreted_string_literal)))))) ================================================================================ @@ -220,10 +237,12 @@ foo = select(release_variable("ONE", "TWO"), { (interpreted_string_literal)) (select_cases (select_case - (interpreted_string_literal) + (select_pattern + (interpreted_string_literal)) (interpreted_string_literal)) (select_case - (default) + (select_pattern + (default)) (interpreted_string_literal)))))) ================================================================================ @@ -248,10 +267,65 @@ foo = select(some_boolean("VALUE",), { (ERROR)) (select_cases (select_case - (boolean_literal) + (select_pattern + (boolean_literal)) (interpreted_string_literal)) (select_case - (boolean_literal) + (select_pattern + (boolean_literal)) + (interpreted_string_literal)))))) + +================================================================================ +Select (trailing comma in values) +================================================================================ + +foo = select(( + arch(), + os(), +), { + (default, default): "true", +}) + +-------------------------------------------------------------------------------- + +(source_file + (assignment + (identifier) + (operator) + (select_expression + (select_value + (identifier) + (identifier)) + (select_cases + (select_case + (select_pattern + (default) + (default)) + (interpreted_string_literal)))))) + +================================================================================ +Select (trailing comma in pattern) +================================================================================ + +foo = select((arch(), os()), { + (default, default,): "true", +}) + +-------------------------------------------------------------------------------- + +(source_file + (assignment + (identifier) + (operator) + (select_expression + (select_value + (identifier) + (identifier)) + (select_cases + (select_case + (select_pattern + (default) + (default)) (interpreted_string_literal)))))) ================================================================================ @@ -275,10 +349,12 @@ foo = select(some_boolean("IS_TRUE"), { (interpreted_string_literal)) (select_cases (select_case - (boolean_literal) + (select_pattern + (boolean_literal)) (interpreted_string_literal)) (select_case - (boolean_literal) + (select_pattern + (boolean_literal)) (interpreted_string_literal)))))) ================================================================================