diff --git a/grammar.js b/grammar.js index f07c99a..e1536ae 100644 --- a/grammar.js +++ b/grammar.js @@ -71,6 +71,8 @@ module.exports = grammar({ // Composites $.list_expression, $.map_expression, + // Operators + $.binary_expression, ), // The Blueprint scanner makes use of Go's lexer, so copy their rule @@ -185,6 +187,12 @@ module.exports = grammar({ "}", ), + binary_expression: ($) => prec.left(seq( + field("left", $._expr), + field("operator", "+"), + field("right", $._expr), + )), + // }}} // Properties {{{ diff --git a/src/grammar.json b/src/grammar.json index e5a5ec7..5561434 100644 --- a/src/grammar.json +++ b/src/grammar.json @@ -279,6 +279,10 @@ { "type": "SYMBOL", "name": "map_expression" + }, + { + "type": "SYMBOL", + "name": "binary_expression" } ] }, @@ -830,6 +834,39 @@ } ] }, + "binary_expression": { + "type": "PREC_LEFT", + "value": 0, + "content": { + "type": "SEQ", + "members": [ + { + "type": "FIELD", + "name": "left", + "content": { + "type": "SYMBOL", + "name": "_expr" + } + }, + { + "type": "FIELD", + "name": "operator", + "content": { + "type": "STRING", + "value": "+" + } + }, + { + "type": "FIELD", + "name": "right", + "content": { + "type": "SYMBOL", + "name": "_expr" + } + } + ] + } + }, "_colon_property": { "type": "SEQ", "members": [ diff --git a/src/node-types.json b/src/node-types.json index 73e03df..9a87060 100644 --- a/src/node-types.json +++ b/src/node-types.json @@ -31,6 +31,110 @@ "multiple": false, "required": true, "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "boolean_literal", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "integer_literal", + "named": true + }, + { + "type": "interpreted_string_literal", + "named": true + }, + { + "type": "list_expression", + "named": true + }, + { + "type": "map_expression", + "named": true + }, + { + "type": "raw_string_literal", + "named": true + }, + { + "type": "select_expression", + "named": true + } + ] + } + } + }, + { + "type": "binary_expression", + "named": true, + "fields": { + "left": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, + { + "type": "boolean_literal", + "named": true + }, + { + "type": "identifier", + "named": true + }, + { + "type": "integer_literal", + "named": true + }, + { + "type": "interpreted_string_literal", + "named": true + }, + { + "type": "list_expression", + "named": true + }, + { + "type": "map_expression", + "named": true + }, + { + "type": "raw_string_literal", + "named": true + }, + { + "type": "select_expression", + "named": true + } + ] + }, + "operator": { + "multiple": false, + "required": true, + "types": [ + { + "type": "+", + "named": false + } + ] + }, + "right": { + "multiple": false, + "required": true, + "types": [ + { + "type": "binary_expression", + "named": true + }, { "type": "boolean_literal", "named": true @@ -95,6 +199,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "binary_expression", + "named": true + }, { "type": "boolean_literal", "named": true @@ -163,6 +271,10 @@ "multiple": true, "required": false, "types": [ + { + "type": "binary_expression", + "named": true + }, { "type": "boolean_literal", "named": true @@ -269,6 +381,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "binary_expression", + "named": true + }, { "type": "boolean_literal", "named": true @@ -327,6 +443,10 @@ "multiple": false, "required": true, "types": [ + { + "type": "binary_expression", + "named": true + }, { "type": "boolean_literal", "named": true @@ -528,6 +648,10 @@ "type": ")", "named": false }, + { + "type": "+", + "named": false + }, { "type": "+=", "named": false diff --git a/src/parser.c b/src/parser.c index 0341730..601e5eb 100644 --- a/src/parser.c +++ b/src/parser.c @@ -6,11 +6,11 @@ #endif #define LANGUAGE_VERSION 14 -#define STATE_COUNT 117 +#define STATE_COUNT 120 #define LARGE_STATE_COUNT 2 -#define SYMBOL_COUNT 59 +#define SYMBOL_COUNT 61 #define ALIAS_COUNT 0 -#define TOKEN_COUNT 30 +#define TOKEN_COUNT 31 #define EXTERNAL_TOKEN_COUNT 0 #define FIELD_COUNT 12 #define MAX_ALIAS_SEQUENCE_LENGTH 6 @@ -46,35 +46,37 @@ enum ts_symbol_identifiers { anon_sym_unset = 27, anon_sym_LBRACK = 28, anon_sym_RBRACK = 29, - sym_source_file = 30, - sym__definition = 31, - sym_comment = 32, - sym_assignment = 33, - sym_module = 34, - sym__old_module = 35, - sym__new_module = 36, - sym__expr = 37, - sym_boolean_literal = 38, - sym_integer_literal = 39, - sym__string_literal = 40, - sym_interpreted_string_literal = 41, - sym_select_expression = 42, - sym_select_value = 43, - sym_soong_config_variable = 44, - sym_select_cases = 45, - sym_select_case = 46, - sym_default_case = 47, - sym__case_value = 48, - sym_list_expression = 49, - sym_map_expression = 50, - sym__colon_property = 51, - sym__equal_property = 52, - aux_sym_source_file_repeat1 = 53, - aux_sym__old_module_repeat1 = 54, - aux_sym__new_module_repeat1 = 55, - aux_sym_interpreted_string_literal_repeat1 = 56, - aux_sym_select_cases_repeat1 = 57, - aux_sym_list_expression_repeat1 = 58, + anon_sym_PLUS = 30, + sym_source_file = 31, + sym__definition = 32, + sym_comment = 33, + sym_assignment = 34, + sym_module = 35, + sym__old_module = 36, + sym__new_module = 37, + sym__expr = 38, + sym_boolean_literal = 39, + sym_integer_literal = 40, + sym__string_literal = 41, + sym_interpreted_string_literal = 42, + sym_select_expression = 43, + sym_select_value = 44, + sym_soong_config_variable = 45, + sym_select_cases = 46, + sym_select_case = 47, + sym_default_case = 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_cases_repeat1 = 59, + aux_sym_list_expression_repeat1 = 60, }; static const char * const ts_symbol_names[] = { @@ -108,6 +110,7 @@ static const char * const ts_symbol_names[] = { [anon_sym_unset] = "unset", [anon_sym_LBRACK] = "[", [anon_sym_RBRACK] = "]", + [anon_sym_PLUS] = "+", [sym_source_file] = "source_file", [sym__definition] = "_definition", [sym_comment] = "comment", @@ -129,6 +132,7 @@ static const char * const ts_symbol_names[] = { [sym__case_value] = "_case_value", [sym_list_expression] = "list_expression", [sym_map_expression] = "map_expression", + [sym_binary_expression] = "binary_expression", [sym__colon_property] = "property", [sym__equal_property] = "property", [aux_sym_source_file_repeat1] = "source_file_repeat1", @@ -170,6 +174,7 @@ static const TSSymbol ts_symbol_map[] = { [anon_sym_unset] = anon_sym_unset, [anon_sym_LBRACK] = anon_sym_LBRACK, [anon_sym_RBRACK] = anon_sym_RBRACK, + [anon_sym_PLUS] = anon_sym_PLUS, [sym_source_file] = sym_source_file, [sym__definition] = sym__definition, [sym_comment] = sym_comment, @@ -191,6 +196,7 @@ static const TSSymbol ts_symbol_map[] = { [sym__case_value] = sym__case_value, [sym_list_expression] = sym_list_expression, [sym_map_expression] = sym_map_expression, + [sym_binary_expression] = sym_binary_expression, [sym__colon_property] = sym__colon_property, [sym__equal_property] = sym__colon_property, [aux_sym_source_file_repeat1] = aux_sym_source_file_repeat1, @@ -322,6 +328,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = false, }, + [anon_sym_PLUS] = { + .visible = true, + .named = false, + }, [sym_source_file] = { .visible = true, .named = true, @@ -406,6 +416,10 @@ static const TSSymbolMetadata ts_symbol_metadata[] = { .visible = true, .named = true, }, + [sym_binary_expression] = { + .visible = true, + .named = true, + }, [sym__colon_property] = { .visible = true, .named = true, @@ -686,6 +700,9 @@ static const TSStateId ts_primary_state_ids[STATE_COUNT] = { [114] = 114, [115] = 115, [116] = 116, + [117] = 117, + [118] = 118, + [119] = 119, }; static inline bool sym_identifier_character_set_1(int32_t c) { @@ -4552,7 +4569,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '#') ADVANCE(83); if (lookahead == '(') ADVANCE(93); if (lookahead == ')') ADVANCE(94); - if (lookahead == '+') ADVANCE(6); + if (lookahead == '+') ADVANCE(202); if (lookahead == ',') ADVANCE(91); if (lookahead == '-') ADVANCE(176); if (lookahead == ':') ADVANCE(195); @@ -4597,13 +4614,16 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 3: if (lookahead == '"') ADVANCE(179); if (lookahead == '#') ADVANCE(83); + if (lookahead == '(') ADVANCE(93); + if (lookahead == '+') ADVANCE(6); if (lookahead == '-') ADVANCE(176); + if (lookahead == '=') ADVANCE(88); if (lookahead == '[') ADVANCE(199); - if (lookahead == ']') ADVANCE(200); if (lookahead == '`') ADVANCE(79); if (lookahead == 'f') ADVANCE(99); if (lookahead == 's') ADVANCE(128); if (lookahead == 't') ADVANCE(154); + if (lookahead == 'u') ADVANCE(146); if (lookahead == '{') ADVANCE(90); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(3) @@ -4615,11 +4635,11 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '#') ADVANCE(83); if (lookahead == '-') ADVANCE(176); if (lookahead == '[') ADVANCE(199); + if (lookahead == ']') ADVANCE(200); if (lookahead == '`') ADVANCE(79); if (lookahead == 'f') ADVANCE(99); if (lookahead == 's') ADVANCE(128); if (lookahead == 't') ADVANCE(154); - if (lookahead == 'u') ADVANCE(146); if (lookahead == '{') ADVANCE(90); if (('\t' <= lookahead && lookahead <= '\r') || lookahead == ' ') SKIP(4) @@ -4889,7 +4909,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '#') ADVANCE(83); if (lookahead == '(') ADVANCE(93); if (lookahead == ')') ADVANCE(94); - if (lookahead == '+') ADVANCE(6); + if (lookahead == '+') ADVANCE(202); if (lookahead == ',') ADVANCE(91); if (lookahead == '-') ADVANCE(176); if (lookahead == ':') ADVANCE(195); @@ -4917,6 +4937,7 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { if (lookahead == '"') ADVANCE(179); if (lookahead == '#') ADVANCE(83); if (lookahead == ')') ADVANCE(94); + if (lookahead == '+') ADVANCE(201); if (lookahead == ',') ADVANCE(91); if (lookahead == ':') ADVANCE(195); if (lookahead == ']') ADVANCE(200); @@ -5479,6 +5500,13 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { case 200: ACCEPT_TOKEN(anon_sym_RBRACK); END_STATE(); + case 201: + ACCEPT_TOKEN(anon_sym_PLUS); + END_STATE(); + case 202: + ACCEPT_TOKEN(anon_sym_PLUS); + if (lookahead == '=') ADVANCE(89); + END_STATE(); default: return false; } @@ -5487,25 +5515,25 @@ static bool ts_lex(TSLexer *lexer, TSStateId state) { static const TSLexMode ts_lex_modes[STATE_COUNT] = { [0] = {.lex_state = 0}, [1] = {.lex_state = 81}, - [2] = {.lex_state = 4}, - [3] = {.lex_state = 4}, - [4] = {.lex_state = 3}, - [5] = {.lex_state = 3}, - [6] = {.lex_state = 3}, - [7] = {.lex_state = 3}, - [8] = {.lex_state = 3}, - [9] = {.lex_state = 3}, - [10] = {.lex_state = 3}, - [11] = {.lex_state = 5}, + [2] = {.lex_state = 3}, + [3] = {.lex_state = 3}, + [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 = 4}, [12] = {.lex_state = 5}, [13] = {.lex_state = 5}, [14] = {.lex_state = 81}, - [15] = {.lex_state = 81}, + [15] = {.lex_state = 5}, [16] = {.lex_state = 81}, [17] = {.lex_state = 81}, [18] = {.lex_state = 81}, [19] = {.lex_state = 81}, - [20] = {.lex_state = 5}, + [20] = {.lex_state = 81}, [21] = {.lex_state = 81}, [22] = {.lex_state = 81}, [23] = {.lex_state = 81}, @@ -5521,50 +5549,50 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [33] = {.lex_state = 81}, [34] = {.lex_state = 81}, [35] = {.lex_state = 81}, - [36] = {.lex_state = 1}, - [37] = {.lex_state = 0}, + [36] = {.lex_state = 5}, + [37] = {.lex_state = 81}, [38] = {.lex_state = 1}, - [39] = {.lex_state = 5}, - [40] = {.lex_state = 81}, - [41] = {.lex_state = 1}, + [39] = {.lex_state = 81}, + [40] = {.lex_state = 1}, + [41] = {.lex_state = 81}, [42] = {.lex_state = 81}, - [43] = {.lex_state = 0}, - [44] = {.lex_state = 81}, - [45] = {.lex_state = 0}, - [46] = {.lex_state = 81}, + [43] = {.lex_state = 3}, + [44] = {.lex_state = 1}, + [45] = {.lex_state = 5}, + [46] = {.lex_state = 0}, [47] = {.lex_state = 0}, - [48] = {.lex_state = 81}, + [48] = {.lex_state = 0}, [49] = {.lex_state = 81}, - [50] = {.lex_state = 1}, + [50] = {.lex_state = 81}, [51] = {.lex_state = 0}, - [52] = {.lex_state = 0}, - [53] = {.lex_state = 81}, + [52] = {.lex_state = 81}, + [53] = {.lex_state = 0}, [54] = {.lex_state = 81}, - [55] = {.lex_state = 0}, + [55] = {.lex_state = 81}, [56] = {.lex_state = 81}, - [57] = {.lex_state = 0}, - [58] = {.lex_state = 0}, - [59] = {.lex_state = 81}, + [57] = {.lex_state = 81}, + [58] = {.lex_state = 81}, + [59] = {.lex_state = 1}, [60] = {.lex_state = 0}, [61] = {.lex_state = 81}, [62] = {.lex_state = 0}, - [63] = {.lex_state = 0}, + [63] = {.lex_state = 81}, [64] = {.lex_state = 81}, - [65] = {.lex_state = 81}, - [66] = {.lex_state = 81}, - [67] = {.lex_state = 0}, + [65] = {.lex_state = 0}, + [66] = {.lex_state = 0}, + [67] = {.lex_state = 81}, [68] = {.lex_state = 0}, [69] = {.lex_state = 81}, - [70] = {.lex_state = 0}, + [70] = {.lex_state = 81}, [71] = {.lex_state = 81}, [72] = {.lex_state = 81}, [73] = {.lex_state = 81}, [74] = {.lex_state = 0}, [75] = {.lex_state = 81}, - [76] = {.lex_state = 0}, + [76] = {.lex_state = 81}, [77] = {.lex_state = 81}, [78] = {.lex_state = 0}, - [79] = {.lex_state = 81}, + [79] = {.lex_state = 0}, [80] = {.lex_state = 81}, [81] = {.lex_state = 81}, [82] = {.lex_state = 81}, @@ -5572,10 +5600,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [84] = {.lex_state = 81}, [85] = {.lex_state = 81}, [86] = {.lex_state = 81}, - [87] = {.lex_state = 0}, - [88] = {.lex_state = 0}, - [89] = {.lex_state = 0}, - [90] = {.lex_state = 0}, + [87] = {.lex_state = 81}, + [88] = {.lex_state = 81}, + [89] = {.lex_state = 81}, + [90] = {.lex_state = 86}, [91] = {.lex_state = 0}, [92] = {.lex_state = 0}, [93] = {.lex_state = 0}, @@ -5590,7 +5618,7 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [102] = {.lex_state = 0}, [103] = {.lex_state = 0}, [104] = {.lex_state = 0}, - [105] = {.lex_state = 86}, + [105] = {.lex_state = 0}, [106] = {.lex_state = 0}, [107] = {.lex_state = 0}, [108] = {.lex_state = 0}, @@ -5601,7 +5629,10 @@ static const TSLexMode ts_lex_modes[STATE_COUNT] = { [113] = {.lex_state = 0}, [114] = {.lex_state = 0}, [115] = {.lex_state = 0}, - [116] = {(TSStateId)(-1)}, + [116] = {.lex_state = 0}, + [117] = {.lex_state = 0}, + [118] = {.lex_state = 0}, + [119] = {(TSStateId)(-1)}, }; static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { @@ -5635,16 +5666,17 @@ static const uint16_t ts_parse_table[LARGE_STATE_COUNT][SYMBOL_COUNT] = { [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(103), - [sym__definition] = STATE(73), + [sym_source_file] = STATE(111), + [sym__definition] = STATE(71), [sym_comment] = STATE(1), - [sym_assignment] = STATE(65), - [sym_module] = STATE(65), - [sym__old_module] = STATE(75), - [sym__new_module] = STATE(77), - [aux_sym_source_file_repeat1] = STATE(14), + [sym_assignment] = STATE(70), + [sym_module] = STATE(70), + [sym__old_module] = STATE(80), + [sym__new_module] = STATE(82), + [aux_sym_source_file_repeat1] = STATE(16), [ts_builtin_sym_end] = ACTIONS(5), [anon_sym_POUND] = ACTIONS(3), [sym_identifier] = ACTIONS(7), @@ -5675,23 +5707,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(2), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(111), 1, + STATE(75), 1, sym__expr, - STATE(113), 1, + STATE(116), 1, sym__case_value, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [55] = 16, + sym_binary_expression, + [56] = 16, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, @@ -5714,23 +5747,24 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(3), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(111), 1, + STATE(75), 1, sym__expr, - STATE(112), 1, + STATE(115), 1, sym__case_value, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [110] = 15, + sym_binary_expression, + [112] = 15, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, @@ -5753,21 +5787,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(4), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(52), 1, + STATE(57), 1, sym__expr, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [162] = 15, + sym_binary_expression, + [165] = 15, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, @@ -5790,21 +5825,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(5), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(78), 1, + STATE(57), 1, sym__expr, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [214] = 15, + sym_binary_expression, + [218] = 15, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, @@ -5827,21 +5863,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACK, STATE(6), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(78), 1, + STATE(39), 1, sym__expr, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [266] = 14, + sym_binary_expression, + [271] = 14, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, @@ -5862,21 +5899,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(7), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(74), 1, + STATE(67), 1, sym__expr, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [315] = 14, + sym_binary_expression, + [321] = 14, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, @@ -5897,21 +5935,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(8), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(81), 1, + STATE(61), 1, sym__expr, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [364] = 14, + sym_binary_expression, + [371] = 14, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, @@ -5932,21 +5971,22 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(9), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(70), 1, + STATE(30), 1, sym__expr, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [413] = 14, + sym_binary_expression, + [421] = 14, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(9), 1, @@ -5967,21 +6007,58 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_LBRACK, STATE(10), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(78), 1, + STATE(56), 1, sym__expr, ACTIONS(13), 2, anon_sym_true, anon_sym_false, - STATE(21), 6, + STATE(35), 7, sym_boolean_literal, sym_integer_literal, sym__string_literal, sym_select_expression, sym_list_expression, sym_map_expression, - [462] = 11, + sym_binary_expression, + [471] = 14, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(9), 1, + anon_sym_LBRACE, + ACTIONS(11), 1, + sym_identifier, + ACTIONS(15), 1, + anon_sym_DASH, + ACTIONS(17), 1, + aux_sym_integer_literal_token1, + ACTIONS(19), 1, + sym_raw_string_literal, + ACTIONS(21), 1, + anon_sym_DQUOTE, + ACTIONS(23), 1, + anon_sym_select, + ACTIONS(27), 1, + anon_sym_LBRACK, + STATE(11), 1, + sym_comment, + STATE(14), 1, + sym_interpreted_string_literal, + STATE(57), 1, + sym__expr, + ACTIONS(13), 2, + anon_sym_true, + anon_sym_false, + STATE(35), 7, + sym_boolean_literal, + sym_integer_literal, + sym__string_literal, + sym_select_expression, + sym_list_expression, + sym_map_expression, + sym_binary_expression, + [521] = 11, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(19), 1, @@ -5992,19 +6069,19 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_RBRACE, ACTIONS(37), 1, anon_sym_default, - STATE(11), 1, + STATE(12), 1, sym_comment, - STATE(13), 1, - aux_sym_select_cases_repeat1, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(97), 1, - sym__string_literal, - STATE(98), 1, - sym_select_case, - STATE(108), 1, + STATE(15), 1, + aux_sym_select_cases_repeat1, + STATE(91), 1, sym_default_case, - [496] = 11, + STATE(99), 1, + sym__string_literal, + STATE(100), 1, + sym_select_case, + [555] = 11, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(19), 1, @@ -6015,95 +6092,77 @@ static const uint16_t ts_small_parse_table[] = { anon_sym_default, ACTIONS(39), 1, anon_sym_RBRACE, - STATE(11), 1, - aux_sym_select_cases_repeat1, STATE(12), 1, + aux_sym_select_cases_repeat1, + STATE(13), 1, sym_comment, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(97), 1, - sym__string_literal, - STATE(98), 1, - sym_select_case, STATE(99), 1, + sym__string_literal, + STATE(100), 1, + sym_select_case, + STATE(101), 1, sym_default_case, - [530] = 8, + [589] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(43), 1, + STATE(14), 1, + sym_comment, + ACTIONS(41), 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, + [606] = 8, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(45), 1, sym_raw_string_literal, - ACTIONS(46), 1, + ACTIONS(48), 1, anon_sym_DQUOTE, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(97), 1, + STATE(99), 1, sym__string_literal, - STATE(98), 1, + STATE(100), 1, sym_select_case, - ACTIONS(41), 2, + ACTIONS(43), 2, anon_sym_RBRACE, anon_sym_default, - STATE(13), 2, + STATE(15), 2, sym_comment, aux_sym_select_cases_repeat1, - [557] = 9, + [633] = 9, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(7), 1, sym_identifier, - ACTIONS(49), 1, - ts_builtin_sym_end, - STATE(14), 1, - sym_comment, - STATE(15), 1, - aux_sym_source_file_repeat1, - STATE(73), 1, - sym__definition, - STATE(75), 1, - sym__old_module, - STATE(77), 1, - sym__new_module, - STATE(65), 2, - sym_assignment, - sym_module, - [586] = 8, - ACTIONS(3), 1, - anon_sym_POUND, ACTIONS(51), 1, ts_builtin_sym_end, - ACTIONS(53), 1, - sym_identifier, - STATE(73), 1, - sym__definition, - STATE(75), 1, - sym__old_module, - STATE(77), 1, - sym__new_module, - STATE(15), 2, - sym_comment, - aux_sym_source_file_repeat1, - STATE(65), 2, - sym_assignment, - sym_module, - [613] = 3, - ACTIONS(3), 1, - anon_sym_POUND, STATE(16), 1, sym_comment, - ACTIONS(56), 7, - ts_builtin_sym_end, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_RPAREN, - sym_identifier, - anon_sym_COLON, - anon_sym_RBRACK, - [629] = 3, + STATE(18), 1, + aux_sym_source_file_repeat1, + STATE(71), 1, + sym__definition, + STATE(80), 1, + sym__old_module, + STATE(82), 1, + sym__new_module, + STATE(70), 2, + sym_assignment, + sym_module, + [662] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(17), 1, sym_comment, - ACTIONS(58), 7, + ACTIONS(53), 8, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, @@ -6111,596 +6170,639 @@ static const uint16_t ts_small_parse_table[] = { sym_identifier, anon_sym_COLON, anon_sym_RBRACK, - [645] = 3, + anon_sym_PLUS, + [679] = 8, ACTIONS(3), 1, anon_sym_POUND, - STATE(18), 1, - sym_comment, - ACTIONS(60), 7, + ACTIONS(55), 1, ts_builtin_sym_end, - anon_sym_COMMA, - anon_sym_RBRACE, - anon_sym_RPAREN, + ACTIONS(57), 1, sym_identifier, - anon_sym_COLON, - anon_sym_RBRACK, - [661] = 3, + STATE(71), 1, + sym__definition, + STATE(80), 1, + sym__old_module, + STATE(82), 1, + sym__new_module, + STATE(18), 2, + sym_comment, + aux_sym_source_file_repeat1, + STATE(70), 2, + sym_assignment, + sym_module, + [706] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(19), 1, sym_comment, - ACTIONS(62), 6, + ACTIONS(60), 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, + [723] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + STATE(20), 1, + sym_comment, + ACTIONS(62), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [676] = 5, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(66), 1, - anon_sym_soong_config_variable, - STATE(20), 1, - sym_comment, - STATE(104), 2, - sym_select_value, - sym_soong_config_variable, - ACTIONS(64), 3, - anon_sym_product_variable, - anon_sym_release_variable, - anon_sym_variant, - [695] = 3, + anon_sym_PLUS, + [739] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(21), 1, sym_comment, - ACTIONS(68), 6, + ACTIONS(64), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [710] = 3, + anon_sym_PLUS, + [755] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(22), 1, sym_comment, - ACTIONS(70), 6, + ACTIONS(66), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [725] = 3, + anon_sym_PLUS, + [771] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(23), 1, sym_comment, - ACTIONS(72), 6, + ACTIONS(68), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [740] = 3, + anon_sym_PLUS, + [787] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(24), 1, sym_comment, - ACTIONS(74), 6, + ACTIONS(70), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [755] = 3, + anon_sym_PLUS, + [803] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(25), 1, sym_comment, - ACTIONS(76), 6, + ACTIONS(72), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [770] = 3, + anon_sym_PLUS, + [819] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(26), 1, sym_comment, - ACTIONS(78), 6, + ACTIONS(74), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [785] = 3, + anon_sym_PLUS, + [835] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(27), 1, sym_comment, - ACTIONS(80), 6, + ACTIONS(76), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [800] = 3, + anon_sym_PLUS, + [851] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(28), 1, sym_comment, - ACTIONS(82), 6, + ACTIONS(78), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [815] = 3, + anon_sym_PLUS, + [867] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(29), 1, sym_comment, - ACTIONS(84), 6, + ACTIONS(80), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [830] = 3, + anon_sym_PLUS, + [883] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(30), 1, sym_comment, - ACTIONS(86), 6, + ACTIONS(82), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [845] = 3, + anon_sym_PLUS, + [899] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(31), 1, sym_comment, - ACTIONS(88), 6, + ACTIONS(84), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [860] = 3, + anon_sym_PLUS, + [915] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(32), 1, sym_comment, - ACTIONS(90), 6, + ACTIONS(86), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [875] = 3, + anon_sym_PLUS, + [931] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(33), 1, sym_comment, - ACTIONS(92), 6, + ACTIONS(88), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [890] = 3, + anon_sym_PLUS, + [947] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(34), 1, sym_comment, - ACTIONS(94), 6, + ACTIONS(90), 7, ts_builtin_sym_end, anon_sym_COMMA, anon_sym_RBRACE, anon_sym_RPAREN, sym_identifier, anon_sym_RBRACK, - [905] = 6, + anon_sym_PLUS, + [963] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + STATE(35), 1, + sym_comment, + ACTIONS(92), 7, + ts_builtin_sym_end, + anon_sym_COMMA, + anon_sym_RBRACE, + anon_sym_RPAREN, + sym_identifier, + anon_sym_RBRACK, + anon_sym_PLUS, + [979] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(96), 1, + anon_sym_soong_config_variable, + STATE(36), 1, + sym_comment, + STATE(105), 2, + sym_select_value, + sym_soong_config_variable, + ACTIONS(94), 3, + anon_sym_product_variable, + anon_sym_release_variable, + anon_sym_variant, + [998] = 6, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(19), 1, sym_raw_string_literal, ACTIONS(21), 1, anon_sym_DQUOTE, - STATE(18), 1, + STATE(14), 1, sym_interpreted_string_literal, - STATE(35), 1, + STATE(37), 1, sym_comment, - STATE(101), 1, + STATE(94), 1, sym__string_literal, - [924] = 6, - ACTIONS(96), 1, - anon_sym_POUND, + [1017] = 6, ACTIONS(98), 1, - aux_sym_interpreted_string_literal_token1, + anon_sym_POUND, ACTIONS(100), 1, - anon_sym_DQUOTE2, + aux_sym_interpreted_string_literal_token1, ACTIONS(102), 1, + anon_sym_DQUOTE2, + ACTIONS(104), 1, sym_escape_sequence, - STATE(36), 1, - sym_comment, STATE(38), 1, + sym_comment, + STATE(44), 1, aux_sym_interpreted_string_literal_repeat1, - [943] = 5, + [1036] = 6, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(106), 1, - anon_sym_LBRACE, + anon_sym_COMMA, ACTIONS(108), 1, - anon_sym_LPAREN, - STATE(37), 1, - sym_comment, - ACTIONS(104), 2, - anon_sym_EQ, - anon_sym_PLUS_EQ, - [960] = 6, - ACTIONS(96), 1, - anon_sym_POUND, - ACTIONS(98), 1, - aux_sym_interpreted_string_literal_token1, - ACTIONS(102), 1, - sym_escape_sequence, + anon_sym_RBRACK, ACTIONS(110), 1, - anon_sym_DQUOTE2, - STATE(38), 1, - sym_comment, - STATE(41), 1, - aux_sym_interpreted_string_literal_repeat1, - [979] = 3, - ACTIONS(3), 1, - anon_sym_POUND, + anon_sym_PLUS, STATE(39), 1, sym_comment, - ACTIONS(41), 4, + STATE(46), 1, + aux_sym_list_expression_repeat1, + [1055] = 6, + ACTIONS(98), 1, + anon_sym_POUND, + ACTIONS(100), 1, + aux_sym_interpreted_string_literal_token1, + ACTIONS(104), 1, + sym_escape_sequence, + ACTIONS(112), 1, + anon_sym_DQUOTE2, + STATE(38), 1, + aux_sym_interpreted_string_literal_repeat1, + STATE(40), 1, + sym_comment, + [1074] = 6, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(19), 1, + sym_raw_string_literal, + ACTIONS(21), 1, + anon_sym_DQUOTE, + STATE(14), 1, + sym_interpreted_string_literal, + STATE(41), 1, + sym_comment, + STATE(107), 1, + sym__string_literal, + [1093] = 6, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(19), 1, + sym_raw_string_literal, + ACTIONS(21), 1, + anon_sym_DQUOTE, + STATE(14), 1, + sym_interpreted_string_literal, + STATE(42), 1, + sym_comment, + STATE(103), 1, + sym__string_literal, + [1112] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(116), 1, + anon_sym_LBRACE, + ACTIONS(118), 1, + anon_sym_LPAREN, + STATE(43), 1, + sym_comment, + ACTIONS(114), 2, + anon_sym_EQ, + anon_sym_PLUS_EQ, + [1129] = 5, + ACTIONS(98), 1, + anon_sym_POUND, + ACTIONS(120), 1, + aux_sym_interpreted_string_literal_token1, + ACTIONS(123), 1, + anon_sym_DQUOTE2, + ACTIONS(125), 1, + sym_escape_sequence, + STATE(44), 2, + sym_comment, + aux_sym_interpreted_string_literal_repeat1, + [1146] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + STATE(45), 1, + sym_comment, + ACTIONS(43), 4, anon_sym_RBRACE, sym_raw_string_literal, anon_sym_DQUOTE, anon_sym_default, - [992] = 6, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(19), 1, - sym_raw_string_literal, - ACTIONS(21), 1, - anon_sym_DQUOTE, - STATE(18), 1, - sym_interpreted_string_literal, - STATE(40), 1, - sym_comment, - STATE(102), 1, - sym__string_literal, - [1011] = 5, - ACTIONS(96), 1, - anon_sym_POUND, - ACTIONS(112), 1, - aux_sym_interpreted_string_literal_token1, - ACTIONS(115), 1, - anon_sym_DQUOTE2, - ACTIONS(117), 1, - sym_escape_sequence, - STATE(41), 2, - sym_comment, - aux_sym_interpreted_string_literal_repeat1, - [1028] = 6, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(19), 1, - sym_raw_string_literal, - ACTIONS(21), 1, - anon_sym_DQUOTE, - STATE(18), 1, - sym_interpreted_string_literal, - STATE(42), 1, - sym_comment, - STATE(107), 1, - sym__string_literal, - [1047] = 5, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(120), 1, - anon_sym_COMMA, - ACTIONS(122), 1, - anon_sym_RBRACE, - STATE(43), 1, - sym_comment, - STATE(60), 1, - aux_sym__old_module_repeat1, - [1063] = 5, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(124), 1, - anon_sym_RBRACE, - ACTIONS(126), 1, - sym_identifier, - STATE(44), 1, - sym_comment, - STATE(57), 1, - sym__colon_property, - [1079] = 5, + [1159] = 5, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(128), 1, anon_sym_COMMA, ACTIONS(130), 1, - anon_sym_RBRACE, - STATE(45), 1, + anon_sym_RBRACK, + STATE(46), 1, sym_comment, - STATE(60), 1, - aux_sym__old_module_repeat1, - [1095] = 5, + STATE(47), 1, + aux_sym_list_expression_repeat1, + [1175] = 4, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(132), 1, - anon_sym_RPAREN, - ACTIONS(134), 1, - sym_identifier, - STATE(46), 1, - sym_comment, - STATE(67), 1, - sym__equal_property, - [1111] = 5, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(136), 1, anon_sym_COMMA, - ACTIONS(138), 1, - anon_sym_RPAREN, - STATE(47), 1, - sym_comment, - STATE(62), 1, - aux_sym__new_module_repeat1, - [1127] = 5, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(126), 1, - sym_identifier, - ACTIONS(140), 1, - anon_sym_RBRACE, - STATE(48), 1, - sym_comment, - STATE(68), 1, - sym__colon_property, - [1143] = 5, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(126), 1, - sym_identifier, - ACTIONS(142), 1, - anon_sym_RBRACE, - STATE(49), 1, - sym_comment, - STATE(68), 1, - sym__colon_property, - [1159] = 4, - ACTIONS(96), 1, - anon_sym_POUND, - ACTIONS(144), 1, - aux_sym_interpreted_string_literal_token1, - STATE(50), 1, - sym_comment, - ACTIONS(146), 2, - anon_sym_DQUOTE2, - sym_escape_sequence, - [1173] = 5, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(148), 1, - anon_sym_COMMA, - ACTIONS(150), 1, - anon_sym_RBRACE, - STATE(43), 1, - aux_sym__old_module_repeat1, - STATE(51), 1, + ACTIONS(135), 1, + anon_sym_RBRACK, + STATE(47), 2, sym_comment, + aux_sym_list_expression_repeat1, [1189] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(152), 1, + ACTIONS(137), 1, anon_sym_COMMA, - ACTIONS(154), 1, - anon_sym_RBRACK, - STATE(52), 1, + ACTIONS(139), 1, + anon_sym_RBRACE, + STATE(48), 1, sym_comment, - STATE(58), 1, - aux_sym_list_expression_repeat1, + STATE(66), 1, + aux_sym__old_module_repeat1, [1205] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(126), 1, + ACTIONS(141), 1, + anon_sym_RPAREN, + ACTIONS(143), 1, sym_identifier, - ACTIONS(156), 1, - anon_sym_RBRACE, - STATE(51), 1, - sym__colon_property, - STATE(53), 1, + STATE(49), 1, sym_comment, + STATE(79), 1, + sym__equal_property, [1221] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(126), 1, - sym_identifier, - ACTIONS(158), 1, + ACTIONS(145), 1, anon_sym_RBRACE, - STATE(54), 1, + ACTIONS(147), 1, + sym_identifier, + STATE(50), 1, sym_comment, - STATE(68), 1, + STATE(62), 1, sym__colon_property, [1237] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(160), 1, + ACTIONS(149), 1, anon_sym_COMMA, - ACTIONS(162), 1, + ACTIONS(151), 1, anon_sym_RPAREN, - STATE(47), 1, - aux_sym__new_module_repeat1, - STATE(55), 1, + STATE(51), 1, sym_comment, + STATE(68), 1, + aux_sym__new_module_repeat1, [1253] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(134), 1, + ACTIONS(147), 1, sym_identifier, - ACTIONS(164), 1, - anon_sym_RPAREN, - STATE(55), 1, - sym__equal_property, - STATE(56), 1, + ACTIONS(153), 1, + anon_sym_RBRACE, + STATE(52), 1, sym_comment, + STATE(74), 1, + sym__colon_property, [1269] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(166), 1, + ACTIONS(155), 1, anon_sym_COMMA, - ACTIONS(168), 1, + ACTIONS(157), 1, anon_sym_RBRACE, - STATE(45), 1, - aux_sym__old_module_repeat1, - STATE(57), 1, + STATE(53), 1, sym_comment, + STATE(66), 1, + aux_sym__old_module_repeat1, [1285] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(170), 1, - anon_sym_COMMA, - ACTIONS(172), 1, - anon_sym_RBRACK, - STATE(58), 1, + ACTIONS(143), 1, + sym_identifier, + ACTIONS(159), 1, + anon_sym_RPAREN, + STATE(54), 1, sym_comment, - STATE(63), 1, - aux_sym_list_expression_repeat1, + STATE(65), 1, + sym__equal_property, [1301] = 5, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(126), 1, + ACTIONS(147), 1, sym_identifier, - ACTIONS(174), 1, + ACTIONS(161), 1, anon_sym_RBRACE, - STATE(59), 1, + STATE(55), 1, sym_comment, - STATE(68), 1, + STATE(60), 1, sym__colon_property, [1317] = 4, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(176), 1, - anon_sym_COMMA, - ACTIONS(179), 1, - anon_sym_RBRACE, - STATE(60), 2, + ACTIONS(110), 1, + anon_sym_PLUS, + STATE(56), 1, sym_comment, - aux_sym__old_module_repeat1, - [1331] = 5, + ACTIONS(163), 2, + ts_builtin_sym_end, + sym_identifier, + [1331] = 4, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(134), 1, + ACTIONS(110), 1, + anon_sym_PLUS, + STATE(57), 1, + sym_comment, + ACTIONS(165), 2, + anon_sym_COMMA, + anon_sym_RBRACK, + [1345] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(147), 1, sym_identifier, - ACTIONS(181), 1, - anon_sym_RPAREN, + ACTIONS(167), 1, + anon_sym_RBRACE, + STATE(58), 1, + sym_comment, + STATE(74), 1, + sym__colon_property, + [1361] = 4, + ACTIONS(98), 1, + anon_sym_POUND, + ACTIONS(169), 1, + aux_sym_interpreted_string_literal_token1, + STATE(59), 1, + sym_comment, + ACTIONS(171), 2, + anon_sym_DQUOTE2, + sym_escape_sequence, + [1375] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(173), 1, + anon_sym_COMMA, + ACTIONS(175), 1, + anon_sym_RBRACE, + STATE(53), 1, + aux_sym__old_module_repeat1, + STATE(60), 1, + sym_comment, + [1391] = 4, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(110), 1, + anon_sym_PLUS, STATE(61), 1, sym_comment, - STATE(67), 1, - sym__equal_property, - [1347] = 4, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(183), 1, - anon_sym_COMMA, - ACTIONS(186), 1, - anon_sym_RPAREN, - STATE(62), 2, - sym_comment, - aux_sym__new_module_repeat1, - [1361] = 4, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(188), 1, - anon_sym_COMMA, - ACTIONS(191), 1, - anon_sym_RBRACK, - STATE(63), 2, - sym_comment, - aux_sym_list_expression_repeat1, - [1375] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(64), 1, - sym_comment, - ACTIONS(193), 2, - ts_builtin_sym_end, - sym_identifier, - [1386] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(65), 1, - sym_comment, - ACTIONS(195), 2, - ts_builtin_sym_end, - sym_identifier, - [1397] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(66), 1, - sym_comment, - ACTIONS(197), 2, - ts_builtin_sym_end, - sym_identifier, - [1408] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(67), 1, - sym_comment, - ACTIONS(199), 2, - anon_sym_COMMA, - anon_sym_RPAREN, - [1419] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(68), 1, - sym_comment, - ACTIONS(201), 2, + ACTIONS(177), 2, anon_sym_COMMA, anon_sym_RBRACE, - [1430] = 3, + [1405] = 5, ACTIONS(3), 1, anon_sym_POUND, + ACTIONS(179), 1, + anon_sym_COMMA, + ACTIONS(181), 1, + anon_sym_RBRACE, + STATE(48), 1, + aux_sym__old_module_repeat1, + STATE(62), 1, + sym_comment, + [1421] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(147), 1, + sym_identifier, + ACTIONS(183), 1, + anon_sym_RBRACE, + STATE(63), 1, + sym_comment, + STATE(74), 1, + sym__colon_property, + [1437] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(147), 1, + sym_identifier, + ACTIONS(185), 1, + anon_sym_RBRACE, + STATE(64), 1, + sym_comment, + STATE(74), 1, + sym__colon_property, + [1453] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(187), 1, + anon_sym_COMMA, + ACTIONS(189), 1, + anon_sym_RPAREN, + STATE(51), 1, + aux_sym__new_module_repeat1, + STATE(65), 1, + sym_comment, + [1469] = 4, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(191), 1, + anon_sym_COMMA, + ACTIONS(194), 1, + anon_sym_RBRACE, + STATE(66), 2, + sym_comment, + aux_sym__old_module_repeat1, + [1483] = 4, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(110), 1, + anon_sym_PLUS, + STATE(67), 1, + sym_comment, + ACTIONS(196), 2, + anon_sym_COMMA, + anon_sym_RPAREN, + [1497] = 4, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(198), 1, + anon_sym_COMMA, + ACTIONS(201), 1, + anon_sym_RPAREN, + STATE(68), 2, + sym_comment, + aux_sym__new_module_repeat1, + [1511] = 5, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(143), 1, + sym_identifier, + ACTIONS(203), 1, + anon_sym_RPAREN, STATE(69), 1, sym_comment, - ACTIONS(203), 2, - ts_builtin_sym_end, - sym_identifier, - [1441] = 3, + STATE(79), 1, + sym__equal_property, + [1527] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(70), 1, sym_comment, ACTIONS(205), 2, - anon_sym_COMMA, - anon_sym_RBRACE, - [1452] = 3, + ts_builtin_sym_end, + sym_identifier, + [1538] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(71), 1, @@ -6708,7 +6810,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(207), 2, ts_builtin_sym_end, sym_identifier, - [1463] = 3, + [1549] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(72), 1, @@ -6716,7 +6818,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(209), 2, ts_builtin_sym_end, sym_identifier, - [1474] = 3, + [1560] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(73), 1, @@ -6724,32 +6826,32 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(211), 2, ts_builtin_sym_end, sym_identifier, - [1485] = 3, + [1571] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(74), 1, sym_comment, ACTIONS(213), 2, anon_sym_COMMA, - anon_sym_RPAREN, - [1496] = 3, + anon_sym_RBRACE, + [1582] = 4, ACTIONS(3), 1, anon_sym_POUND, + ACTIONS(110), 1, + anon_sym_PLUS, + ACTIONS(215), 1, + anon_sym_COMMA, STATE(75), 1, sym_comment, - ACTIONS(215), 2, - ts_builtin_sym_end, - sym_identifier, - [1507] = 4, + [1595] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(217), 1, - anon_sym_LBRACE, STATE(76), 1, sym_comment, - STATE(90), 1, - sym_select_cases, - [1520] = 3, + ACTIONS(217), 2, + ts_builtin_sym_end, + sym_identifier, + [1606] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(77), 1, @@ -6757,23 +6859,24 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(219), 2, ts_builtin_sym_end, sym_identifier, - [1531] = 3, + [1617] = 4, ACTIONS(3), 1, anon_sym_POUND, + ACTIONS(221), 1, + anon_sym_LBRACE, STATE(78), 1, sym_comment, - ACTIONS(221), 2, - anon_sym_COMMA, - anon_sym_RBRACK, - [1542] = 3, + STATE(92), 1, + sym_select_cases, + [1630] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(79), 1, sym_comment, ACTIONS(223), 2, - ts_builtin_sym_end, - sym_identifier, - [1553] = 3, + anon_sym_COMMA, + anon_sym_RPAREN, + [1641] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(80), 1, @@ -6781,7 +6884,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(225), 2, ts_builtin_sym_end, sym_identifier, - [1564] = 3, + [1652] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(81), 1, @@ -6789,7 +6892,7 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(227), 2, ts_builtin_sym_end, sym_identifier, - [1575] = 3, + [1663] = 3, ACTIONS(3), 1, anon_sym_POUND, STATE(82), 1, @@ -6797,511 +6900,540 @@ static const uint16_t ts_small_parse_table[] = { ACTIONS(229), 2, ts_builtin_sym_end, sym_identifier, - [1586] = 4, + [1674] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(126), 1, - sym_identifier, - STATE(68), 1, - sym__colon_property, STATE(83), 1, sym_comment, - [1599] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(84), 1, - sym_comment, ACTIONS(231), 2, ts_builtin_sym_end, sym_identifier, - [1610] = 4, + [1685] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(134), 1, - sym_identifier, - STATE(67), 1, - sym__equal_property, - STATE(85), 1, - sym_comment, - [1623] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - STATE(86), 1, + STATE(84), 1, sym_comment, ACTIONS(233), 2, ts_builtin_sym_end, sym_identifier, - [1634] = 3, + [1696] = 4, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(235), 1, - anon_sym_LPAREN, + ACTIONS(147), 1, + sym_identifier, + STATE(74), 1, + sym__colon_property, + STATE(85), 1, + sym_comment, + [1709] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + STATE(86), 1, + sym_comment, + ACTIONS(235), 2, + ts_builtin_sym_end, + sym_identifier, + [1720] = 4, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(143), 1, + sym_identifier, + STATE(79), 1, + sym__equal_property, STATE(87), 1, sym_comment, - [1644] = 3, + [1733] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(237), 1, - anon_sym_RPAREN, STATE(88), 1, sym_comment, - [1654] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(239), 1, - anon_sym_COLON, - STATE(89), 1, - sym_comment, - [1664] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(241), 1, - anon_sym_RPAREN, - STATE(90), 1, - sym_comment, - [1674] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(243), 1, - anon_sym_EQ, - STATE(91), 1, - sym_comment, - [1684] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(245), 1, - anon_sym_LPAREN, - STATE(92), 1, - sym_comment, - [1694] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(247), 1, - anon_sym_COMMA, - STATE(93), 1, - sym_comment, - [1704] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(249), 1, - aux_sym_integer_literal_token1, - STATE(94), 1, - sym_comment, - [1714] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(251), 1, - anon_sym_RPAREN, - STATE(95), 1, - sym_comment, - [1724] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(253), 1, - anon_sym_COLON, - STATE(96), 1, - sym_comment, - [1734] = 3, - ACTIONS(3), 1, - anon_sym_POUND, - ACTIONS(255), 1, - anon_sym_COLON, - STATE(97), 1, - sym_comment, + ACTIONS(237), 2, + ts_builtin_sym_end, + sym_identifier, [1744] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(257), 1, + STATE(89), 1, + sym_comment, + ACTIONS(239), 2, + ts_builtin_sym_end, + sym_identifier, + [1755] = 3, + ACTIONS(98), 1, + anon_sym_POUND, + ACTIONS(241), 1, + aux_sym_comment_token1, + STATE(90), 1, + sym_comment, + [1765] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(243), 1, anon_sym_COMMA, + STATE(91), 1, + sym_comment, + [1775] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(245), 1, + anon_sym_RPAREN, + STATE(92), 1, + sym_comment, + [1785] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(247), 1, + anon_sym_LPAREN, + STATE(93), 1, + sym_comment, + [1795] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(249), 1, + anon_sym_RPAREN, + STATE(94), 1, + sym_comment, + [1805] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(251), 1, + anon_sym_COMMA, + STATE(95), 1, + sym_comment, + [1815] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(253), 1, + anon_sym_LPAREN, + STATE(96), 1, + sym_comment, + [1825] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(255), 1, + anon_sym_RPAREN, + STATE(97), 1, + sym_comment, + [1835] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(257), 1, + anon_sym_COLON, STATE(98), 1, sym_comment, - [1754] = 3, + [1845] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(259), 1, - anon_sym_COMMA, + anon_sym_COLON, STATE(99), 1, sym_comment, - [1764] = 3, + [1855] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(261), 1, - anon_sym_RPAREN, + anon_sym_COMMA, STATE(100), 1, sym_comment, - [1774] = 3, + [1865] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(263), 1, anon_sym_COMMA, STATE(101), 1, sym_comment, - [1784] = 3, + [1875] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(265), 1, anon_sym_RPAREN, STATE(102), 1, sym_comment, - [1794] = 3, + [1885] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(267), 1, - ts_builtin_sym_end, + anon_sym_COMMA, STATE(103), 1, sym_comment, - [1804] = 3, + [1895] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(269), 1, - anon_sym_COMMA, + aux_sym_integer_literal_token1, STATE(104), 1, sym_comment, - [1814] = 3, - ACTIONS(96), 1, + [1905] = 3, + ACTIONS(3), 1, anon_sym_POUND, ACTIONS(271), 1, - aux_sym_comment_token1, + anon_sym_COMMA, STATE(105), 1, sym_comment, - [1824] = 3, + [1915] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(273), 1, - anon_sym_RBRACE, + anon_sym_COMMA, STATE(106), 1, sym_comment, - [1834] = 3, + [1925] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(275), 1, anon_sym_RPAREN, STATE(107), 1, sym_comment, - [1844] = 3, + [1935] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(277), 1, - anon_sym_COMMA, + anon_sym_RBRACE, STATE(108), 1, sym_comment, - [1854] = 3, + [1945] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(279), 1, - anon_sym_LPAREN, + anon_sym_RPAREN, STATE(109), 1, sym_comment, - [1864] = 3, + [1955] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(281), 1, - anon_sym_COMMA, + anon_sym_LPAREN, STATE(110), 1, sym_comment, - [1874] = 3, + [1965] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(283), 1, - anon_sym_COMMA, + ts_builtin_sym_end, STATE(111), 1, sym_comment, - [1884] = 3, + [1975] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(285), 1, - anon_sym_COMMA, + anon_sym_COLON, STATE(112), 1, sym_comment, - [1894] = 3, + [1985] = 3, ACTIONS(3), 1, anon_sym_POUND, - ACTIONS(287), 1, + ACTIONS(215), 1, anon_sym_COMMA, STATE(113), 1, sym_comment, - [1904] = 3, + [1995] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(287), 1, + anon_sym_EQ, + STATE(114), 1, + sym_comment, + [2005] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(289), 1, - anon_sym_RPAREN, - STATE(114), 1, + anon_sym_COMMA, + STATE(115), 1, sym_comment, - [1914] = 3, + [2015] = 3, ACTIONS(3), 1, anon_sym_POUND, ACTIONS(291), 1, - anon_sym_RBRACE, - STATE(115), 1, + anon_sym_COMMA, + STATE(116), 1, sym_comment, - [1924] = 1, + [2025] = 3, + ACTIONS(3), 1, + anon_sym_POUND, ACTIONS(293), 1, + anon_sym_RPAREN, + STATE(117), 1, + sym_comment, + [2035] = 3, + ACTIONS(3), 1, + anon_sym_POUND, + ACTIONS(295), 1, + anon_sym_RBRACE, + STATE(118), 1, + sym_comment, + [2045] = 1, + ACTIONS(297), 1, ts_builtin_sym_end, }; static const uint32_t ts_small_parse_table_map[] = { [SMALL_STATE(2)] = 0, - [SMALL_STATE(3)] = 55, - [SMALL_STATE(4)] = 110, - [SMALL_STATE(5)] = 162, - [SMALL_STATE(6)] = 214, - [SMALL_STATE(7)] = 266, - [SMALL_STATE(8)] = 315, - [SMALL_STATE(9)] = 364, - [SMALL_STATE(10)] = 413, - [SMALL_STATE(11)] = 462, - [SMALL_STATE(12)] = 496, - [SMALL_STATE(13)] = 530, - [SMALL_STATE(14)] = 557, - [SMALL_STATE(15)] = 586, - [SMALL_STATE(16)] = 613, - [SMALL_STATE(17)] = 629, - [SMALL_STATE(18)] = 645, - [SMALL_STATE(19)] = 661, - [SMALL_STATE(20)] = 676, - [SMALL_STATE(21)] = 695, - [SMALL_STATE(22)] = 710, - [SMALL_STATE(23)] = 725, - [SMALL_STATE(24)] = 740, - [SMALL_STATE(25)] = 755, - [SMALL_STATE(26)] = 770, - [SMALL_STATE(27)] = 785, - [SMALL_STATE(28)] = 800, - [SMALL_STATE(29)] = 815, - [SMALL_STATE(30)] = 830, - [SMALL_STATE(31)] = 845, - [SMALL_STATE(32)] = 860, - [SMALL_STATE(33)] = 875, - [SMALL_STATE(34)] = 890, - [SMALL_STATE(35)] = 905, - [SMALL_STATE(36)] = 924, - [SMALL_STATE(37)] = 943, - [SMALL_STATE(38)] = 960, - [SMALL_STATE(39)] = 979, - [SMALL_STATE(40)] = 992, - [SMALL_STATE(41)] = 1011, - [SMALL_STATE(42)] = 1028, - [SMALL_STATE(43)] = 1047, - [SMALL_STATE(44)] = 1063, - [SMALL_STATE(45)] = 1079, - [SMALL_STATE(46)] = 1095, - [SMALL_STATE(47)] = 1111, - [SMALL_STATE(48)] = 1127, - [SMALL_STATE(49)] = 1143, - [SMALL_STATE(50)] = 1159, - [SMALL_STATE(51)] = 1173, - [SMALL_STATE(52)] = 1189, - [SMALL_STATE(53)] = 1205, - [SMALL_STATE(54)] = 1221, - [SMALL_STATE(55)] = 1237, - [SMALL_STATE(56)] = 1253, - [SMALL_STATE(57)] = 1269, - [SMALL_STATE(58)] = 1285, - [SMALL_STATE(59)] = 1301, - [SMALL_STATE(60)] = 1317, - [SMALL_STATE(61)] = 1331, - [SMALL_STATE(62)] = 1347, - [SMALL_STATE(63)] = 1361, - [SMALL_STATE(64)] = 1375, - [SMALL_STATE(65)] = 1386, - [SMALL_STATE(66)] = 1397, - [SMALL_STATE(67)] = 1408, - [SMALL_STATE(68)] = 1419, - [SMALL_STATE(69)] = 1430, - [SMALL_STATE(70)] = 1441, - [SMALL_STATE(71)] = 1452, - [SMALL_STATE(72)] = 1463, - [SMALL_STATE(73)] = 1474, - [SMALL_STATE(74)] = 1485, - [SMALL_STATE(75)] = 1496, - [SMALL_STATE(76)] = 1507, - [SMALL_STATE(77)] = 1520, - [SMALL_STATE(78)] = 1531, - [SMALL_STATE(79)] = 1542, - [SMALL_STATE(80)] = 1553, - [SMALL_STATE(81)] = 1564, - [SMALL_STATE(82)] = 1575, - [SMALL_STATE(83)] = 1586, - [SMALL_STATE(84)] = 1599, - [SMALL_STATE(85)] = 1610, - [SMALL_STATE(86)] = 1623, - [SMALL_STATE(87)] = 1634, - [SMALL_STATE(88)] = 1644, - [SMALL_STATE(89)] = 1654, - [SMALL_STATE(90)] = 1664, - [SMALL_STATE(91)] = 1674, - [SMALL_STATE(92)] = 1684, - [SMALL_STATE(93)] = 1694, - [SMALL_STATE(94)] = 1704, - [SMALL_STATE(95)] = 1714, - [SMALL_STATE(96)] = 1724, - [SMALL_STATE(97)] = 1734, - [SMALL_STATE(98)] = 1744, - [SMALL_STATE(99)] = 1754, - [SMALL_STATE(100)] = 1764, - [SMALL_STATE(101)] = 1774, - [SMALL_STATE(102)] = 1784, - [SMALL_STATE(103)] = 1794, - [SMALL_STATE(104)] = 1804, - [SMALL_STATE(105)] = 1814, - [SMALL_STATE(106)] = 1824, - [SMALL_STATE(107)] = 1834, - [SMALL_STATE(108)] = 1844, - [SMALL_STATE(109)] = 1854, - [SMALL_STATE(110)] = 1864, - [SMALL_STATE(111)] = 1874, - [SMALL_STATE(112)] = 1884, - [SMALL_STATE(113)] = 1894, - [SMALL_STATE(114)] = 1904, - [SMALL_STATE(115)] = 1914, - [SMALL_STATE(116)] = 1924, + [SMALL_STATE(3)] = 56, + [SMALL_STATE(4)] = 112, + [SMALL_STATE(5)] = 165, + [SMALL_STATE(6)] = 218, + [SMALL_STATE(7)] = 271, + [SMALL_STATE(8)] = 321, + [SMALL_STATE(9)] = 371, + [SMALL_STATE(10)] = 421, + [SMALL_STATE(11)] = 471, + [SMALL_STATE(12)] = 521, + [SMALL_STATE(13)] = 555, + [SMALL_STATE(14)] = 589, + [SMALL_STATE(15)] = 606, + [SMALL_STATE(16)] = 633, + [SMALL_STATE(17)] = 662, + [SMALL_STATE(18)] = 679, + [SMALL_STATE(19)] = 706, + [SMALL_STATE(20)] = 723, + [SMALL_STATE(21)] = 739, + [SMALL_STATE(22)] = 755, + [SMALL_STATE(23)] = 771, + [SMALL_STATE(24)] = 787, + [SMALL_STATE(25)] = 803, + [SMALL_STATE(26)] = 819, + [SMALL_STATE(27)] = 835, + [SMALL_STATE(28)] = 851, + [SMALL_STATE(29)] = 867, + [SMALL_STATE(30)] = 883, + [SMALL_STATE(31)] = 899, + [SMALL_STATE(32)] = 915, + [SMALL_STATE(33)] = 931, + [SMALL_STATE(34)] = 947, + [SMALL_STATE(35)] = 963, + [SMALL_STATE(36)] = 979, + [SMALL_STATE(37)] = 998, + [SMALL_STATE(38)] = 1017, + [SMALL_STATE(39)] = 1036, + [SMALL_STATE(40)] = 1055, + [SMALL_STATE(41)] = 1074, + [SMALL_STATE(42)] = 1093, + [SMALL_STATE(43)] = 1112, + [SMALL_STATE(44)] = 1129, + [SMALL_STATE(45)] = 1146, + [SMALL_STATE(46)] = 1159, + [SMALL_STATE(47)] = 1175, + [SMALL_STATE(48)] = 1189, + [SMALL_STATE(49)] = 1205, + [SMALL_STATE(50)] = 1221, + [SMALL_STATE(51)] = 1237, + [SMALL_STATE(52)] = 1253, + [SMALL_STATE(53)] = 1269, + [SMALL_STATE(54)] = 1285, + [SMALL_STATE(55)] = 1301, + [SMALL_STATE(56)] = 1317, + [SMALL_STATE(57)] = 1331, + [SMALL_STATE(58)] = 1345, + [SMALL_STATE(59)] = 1361, + [SMALL_STATE(60)] = 1375, + [SMALL_STATE(61)] = 1391, + [SMALL_STATE(62)] = 1405, + [SMALL_STATE(63)] = 1421, + [SMALL_STATE(64)] = 1437, + [SMALL_STATE(65)] = 1453, + [SMALL_STATE(66)] = 1469, + [SMALL_STATE(67)] = 1483, + [SMALL_STATE(68)] = 1497, + [SMALL_STATE(69)] = 1511, + [SMALL_STATE(70)] = 1527, + [SMALL_STATE(71)] = 1538, + [SMALL_STATE(72)] = 1549, + [SMALL_STATE(73)] = 1560, + [SMALL_STATE(74)] = 1571, + [SMALL_STATE(75)] = 1582, + [SMALL_STATE(76)] = 1595, + [SMALL_STATE(77)] = 1606, + [SMALL_STATE(78)] = 1617, + [SMALL_STATE(79)] = 1630, + [SMALL_STATE(80)] = 1641, + [SMALL_STATE(81)] = 1652, + [SMALL_STATE(82)] = 1663, + [SMALL_STATE(83)] = 1674, + [SMALL_STATE(84)] = 1685, + [SMALL_STATE(85)] = 1696, + [SMALL_STATE(86)] = 1709, + [SMALL_STATE(87)] = 1720, + [SMALL_STATE(88)] = 1733, + [SMALL_STATE(89)] = 1744, + [SMALL_STATE(90)] = 1755, + [SMALL_STATE(91)] = 1765, + [SMALL_STATE(92)] = 1775, + [SMALL_STATE(93)] = 1785, + [SMALL_STATE(94)] = 1795, + [SMALL_STATE(95)] = 1805, + [SMALL_STATE(96)] = 1815, + [SMALL_STATE(97)] = 1825, + [SMALL_STATE(98)] = 1835, + [SMALL_STATE(99)] = 1845, + [SMALL_STATE(100)] = 1855, + [SMALL_STATE(101)] = 1865, + [SMALL_STATE(102)] = 1875, + [SMALL_STATE(103)] = 1885, + [SMALL_STATE(104)] = 1895, + [SMALL_STATE(105)] = 1905, + [SMALL_STATE(106)] = 1915, + [SMALL_STATE(107)] = 1925, + [SMALL_STATE(108)] = 1935, + [SMALL_STATE(109)] = 1945, + [SMALL_STATE(110)] = 1955, + [SMALL_STATE(111)] = 1965, + [SMALL_STATE(112)] = 1975, + [SMALL_STATE(113)] = 1985, + [SMALL_STATE(114)] = 1995, + [SMALL_STATE(115)] = 2005, + [SMALL_STATE(116)] = 2015, + [SMALL_STATE(117)] = 2025, + [SMALL_STATE(118)] = 2035, + [SMALL_STATE(119)] = 2045, }; 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(105), + [3] = {.entry = {.count = 1, .reusable = true}}, SHIFT(90), [5] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 0), - [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), - [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(53), - [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(21), - [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(22), - [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(94), - [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), - [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(18), - [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), - [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(92), - [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(111), - [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), - [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), - [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), - [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), - [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), - [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96), - [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), - [41] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), - [43] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(18), - [46] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(36), - [49] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), - [51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), - [53] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(37), - [56] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 3), - [58] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 2), - [60] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__string_literal, 1), - [62] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 2), - [64] = {.entry = {.count = 1, .reusable = true}}, SHIFT(87), - [66] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), - [68] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), - [70] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1), - [72] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 1), - [74] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 7), - [76] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 5, .production_id = 14), - [78] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 5, .production_id = 13), - [80] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 3, .production_id = 8), - [82] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 13), - [84] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4, .production_id = 14), - [86] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_expression, 6), - [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 2), - [90] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 3, .production_id = 7), - [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4, .production_id = 8), - [94] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 2), - [96] = {.entry = {.count = 1, .reusable = false}}, SHIFT(105), - [98] = {.entry = {.count = 1, .reusable = false}}, SHIFT(50), - [100] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), - [102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), - [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), - [106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(44), - [108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(56), - [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(16), - [112] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(50), - [115] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), - [117] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(50), - [120] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), - [122] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), - [124] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), - [126] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), - [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), - [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(71), - [132] = {.entry = {.count = 1, .reusable = true}}, SHIFT(66), - [134] = {.entry = {.count = 1, .reusable = true}}, SHIFT(91), - [136] = {.entry = {.count = 1, .reusable = true}}, SHIFT(61), - [138] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), - [140] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), - [142] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), - [144] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), - [146] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), - [148] = {.entry = {.count = 1, .reusable = true}}, SHIFT(48), - [150] = {.entry = {.count = 1, .reusable = true}}, SHIFT(32), - [152] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), - [154] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), - [156] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), - [158] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), - [160] = {.entry = {.count = 1, .reusable = true}}, SHIFT(46), - [162] = {.entry = {.count = 1, .reusable = true}}, SHIFT(79), - [164] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), - [166] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), - [168] = {.entry = {.count = 1, .reusable = true}}, SHIFT(80), - [170] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), - [172] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), - [174] = {.entry = {.count = 1, .reusable = true}}, SHIFT(82), - [176] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 11), SHIFT_REPEAT(83), - [179] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 11), - [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), - [183] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 11), SHIFT_REPEAT(85), - [186] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 11), - [188] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 15), SHIFT_REPEAT(10), - [191] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 15), - [193] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 3), - [195] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__definition, 1), - [197] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 5, .production_id = 6), - [199] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 7), - [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 7), - [203] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 5, .production_id = 12), - [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__colon_property, 3, .production_id = 9), - [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 5, .production_id = 10), - [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 5, .production_id = 5), - [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), - [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__equal_property, 3, .production_id = 9), - [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, .production_id = 1), - [217] = {.entry = {.count = 1, .reusable = true}}, SHIFT(12), - [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, .production_id = 2), - [221] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 8), - [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 4, .production_id = 6), - [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 4, .production_id = 5), - [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 3), - [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 6, .production_id = 10), - [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 6, .production_id = 12), - [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 3, .production_id = 4), - [235] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), - [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 3), - [239] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), - [241] = {.entry = {.count = 1, .reusable = true}}, SHIFT(30), - [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), - [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), - [247] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 4, .production_id = 16), - [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), - [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 2), - [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), - [255] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), - [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(39), - [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), - [261] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 5), - [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), - [265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), - [267] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), - [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), - [271] = {.entry = {.count = 1, .reusable = false}}, SHIFT(116), - [273] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), - [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), - [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(115), - [279] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35), - [281] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_soong_config_variable, 6, .production_id = 17), - [283] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__case_value, 1), - [285] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_case, 3, .production_id = 18), - [287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_case, 3, .production_id = 18), - [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 4), - [291] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100), - [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), + [7] = {.entry = {.count = 1, .reusable = true}}, SHIFT(43), + [9] = {.entry = {.count = 1, .reusable = true}}, SHIFT(55), + [11] = {.entry = {.count = 1, .reusable = false}}, SHIFT(35), + [13] = {.entry = {.count = 1, .reusable = false}}, SHIFT(32), + [15] = {.entry = {.count = 1, .reusable = true}}, SHIFT(104), + [17] = {.entry = {.count = 1, .reusable = true}}, SHIFT(22), + [19] = {.entry = {.count = 1, .reusable = true}}, SHIFT(14), + [21] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40), + [23] = {.entry = {.count = 1, .reusable = false}}, SHIFT(96), + [25] = {.entry = {.count = 1, .reusable = false}}, SHIFT(113), + [27] = {.entry = {.count = 1, .reusable = true}}, SHIFT(6), + [29] = {.entry = {.count = 1, .reusable = true}}, SHIFT(25), + [31] = {.entry = {.count = 1, .reusable = true}}, SHIFT(26), + [33] = {.entry = {.count = 1, .reusable = true}}, SHIFT(21), + [35] = {.entry = {.count = 1, .reusable = true}}, SHIFT(109), + [37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(98), + [39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(97), + [41] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__string_literal, 1), + [43] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), + [45] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(14), + [48] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(40), + [51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1), + [53] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 2), + [55] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), + [57] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 2), SHIFT_REPEAT(43), + [60] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 3), + [62] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4, .production_id = 14), + [64] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 2), + [66] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 1), + [68] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 3, .production_id = 7), + [70] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_expression, 6), + [72] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 4, .production_id = 8), + [74] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 5, .production_id = 14), + [76] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 5, .production_id = 13), + [78] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 13), + [80] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 4, .production_id = 7), + [82] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_binary_expression, 3, .production_id = 3), + [84] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_map_expression, 2), + [86] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_boolean_literal, 1), + [88] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_integer_literal, 2), + [90] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_list_expression, 3, .production_id = 8), + [92] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__expr, 1), + [94] = {.entry = {.count = 1, .reusable = true}}, SHIFT(110), + [96] = {.entry = {.count = 1, .reusable = true}}, SHIFT(93), + [98] = {.entry = {.count = 1, .reusable = false}}, SHIFT(90), + [100] = {.entry = {.count = 1, .reusable = false}}, SHIFT(59), + [102] = {.entry = {.count = 1, .reusable = true}}, SHIFT(19), + [104] = {.entry = {.count = 1, .reusable = true}}, SHIFT(59), + [106] = {.entry = {.count = 1, .reusable = true}}, SHIFT(4), + [108] = {.entry = {.count = 1, .reusable = true}}, SHIFT(34), + [110] = {.entry = {.count = 1, .reusable = true}}, SHIFT(9), + [112] = {.entry = {.count = 1, .reusable = true}}, SHIFT(17), + [114] = {.entry = {.count = 1, .reusable = true}}, SHIFT(10), + [116] = {.entry = {.count = 1, .reusable = true}}, SHIFT(50), + [118] = {.entry = {.count = 1, .reusable = true}}, SHIFT(54), + [120] = {.entry = {.count = 2, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(59), + [123] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), + [125] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 2), SHIFT_REPEAT(59), + [128] = {.entry = {.count = 1, .reusable = true}}, SHIFT(5), + [130] = {.entry = {.count = 1, .reusable = true}}, SHIFT(20), + [132] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 15), SHIFT_REPEAT(11), + [135] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 15), + [137] = {.entry = {.count = 1, .reusable = true}}, SHIFT(64), + [139] = {.entry = {.count = 1, .reusable = true}}, SHIFT(73), + [141] = {.entry = {.count = 1, .reusable = true}}, SHIFT(72), + [143] = {.entry = {.count = 1, .reusable = true}}, SHIFT(114), + [145] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81), + [147] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112), + [149] = {.entry = {.count = 1, .reusable = true}}, SHIFT(69), + [151] = {.entry = {.count = 1, .reusable = true}}, SHIFT(89), + [153] = {.entry = {.count = 1, .reusable = true}}, SHIFT(29), + [155] = {.entry = {.count = 1, .reusable = true}}, SHIFT(63), + [157] = {.entry = {.count = 1, .reusable = true}}, SHIFT(28), + [159] = {.entry = {.count = 1, .reusable = true}}, SHIFT(76), + [161] = {.entry = {.count = 1, .reusable = true}}, SHIFT(31), + [163] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_assignment, 3, .production_id = 3), + [165] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_list_expression_repeat1, 2, .production_id = 8), + [167] = {.entry = {.count = 1, .reusable = true}}, SHIFT(77), + [169] = {.entry = {.count = 1, .reusable = false}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), + [171] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_interpreted_string_literal_repeat1, 1), + [173] = {.entry = {.count = 1, .reusable = true}}, SHIFT(52), + [175] = {.entry = {.count = 1, .reusable = true}}, SHIFT(23), + [177] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__colon_property, 3, .production_id = 9), + [179] = {.entry = {.count = 1, .reusable = true}}, SHIFT(58), + [181] = {.entry = {.count = 1, .reusable = true}}, SHIFT(83), + [183] = {.entry = {.count = 1, .reusable = true}}, SHIFT(27), + [185] = {.entry = {.count = 1, .reusable = true}}, SHIFT(84), + [187] = {.entry = {.count = 1, .reusable = true}}, SHIFT(49), + [189] = {.entry = {.count = 1, .reusable = true}}, SHIFT(88), + [191] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 11), SHIFT_REPEAT(85), + [194] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 11), + [196] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__equal_property, 3, .production_id = 9), + [198] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 11), SHIFT_REPEAT(87), + [201] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 11), + [203] = {.entry = {.count = 1, .reusable = true}}, SHIFT(86), + [205] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__definition, 1), + [207] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym_source_file_repeat1, 1), + [209] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 5, .production_id = 6), + [211] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 5, .production_id = 10), + [213] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__old_module_repeat1, 2, .production_id = 7), + [215] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__case_value, 1), + [217] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 3), + [219] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 5, .production_id = 5), + [221] = {.entry = {.count = 1, .reusable = true}}, SHIFT(13), + [223] = {.entry = {.count = 1, .reusable = true}}, REDUCE(aux_sym__new_module_repeat1, 2, .production_id = 7), + [225] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, .production_id = 1), + [227] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 3, .production_id = 4), + [229] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_module, 1, .production_id = 2), + [231] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 4, .production_id = 5), + [233] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__old_module, 6, .production_id = 10), + [235] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 6, .production_id = 12), + [237] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 4, .production_id = 6), + [239] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__new_module, 5, .production_id = 12), + [241] = {.entry = {.count = 1, .reusable = false}}, SHIFT(119), + [243] = {.entry = {.count = 1, .reusable = true}}, SHIFT(118), + [245] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24), + [247] = {.entry = {.count = 1, .reusable = true}}, SHIFT(42), + [249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(106), + [251] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_soong_config_variable, 6, .production_id = 17), + [253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36), + [255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 2), + [257] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3), + [259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2), + [261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45), + [263] = {.entry = {.count = 1, .reusable = true}}, SHIFT(108), + [265] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 5), + [267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(41), + [269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(33), + [271] = {.entry = {.count = 1, .reusable = true}}, SHIFT(78), + [273] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_value, 4, .production_id = 16), + [275] = {.entry = {.count = 1, .reusable = true}}, SHIFT(95), + [277] = {.entry = {.count = 1, .reusable = true}}, SHIFT(117), + [279] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 3), + [281] = {.entry = {.count = 1, .reusable = true}}, SHIFT(37), + [283] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(), + [285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(8), + [287] = {.entry = {.count = 1, .reusable = true}}, SHIFT(7), + [289] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_case, 3, .production_id = 18), + [291] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_case, 3, .production_id = 18), + [293] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 4), + [295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(102), + [297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_comment, 2), }; #ifdef __cplusplus diff --git a/test/corpus/expressions.txt b/test/corpus/expressions.txt index 03682d9..25584d6 100644 --- a/test/corpus/expressions.txt +++ b/test/corpus/expressions.txt @@ -344,3 +344,27 @@ foo = { (identifier) (map_expression (ERROR)))) + +================================================================================ +Binary operators +================================================================================ + +foo = [ + -12 + -27 + 42, + "a" + "b", +] + +-------------------------------------------------------------------------------- + +(source_file + (assignment + (identifier) + (list_expression + (binary_expression + (binary_expression + (integer_literal) + (integer_literal)) + (integer_literal)) + (binary_expression + (interpreted_string_literal) + (interpreted_string_literal)))))