Hide 'select_cases' rule

It doesn't provide any more information to expose it.
This commit is contained in:
Bruno BELANYI 2024-04-09 12:49:36 +01:00
parent f6e1266493
commit e0aa749e1b
5 changed files with 73 additions and 94 deletions

View file

@ -123,7 +123,7 @@ module.exports = grammar({
"(",
choice($.select_value, $.soong_config_variable),
",",
$.select_cases,
$._select_cases,
")",
),
@ -151,7 +151,7 @@ module.exports = grammar({
")",
),
select_cases: ($) => seq(
_select_cases: ($) => seq(
"{",
optional(trailingCommaSeparated($.select_case)),
// default *must* be the last one, enforced at parse-time...

4
src/grammar.json generated
View file

@ -482,7 +482,7 @@
},
{
"type": "SYMBOL",
"name": "select_cases"
"name": "_select_cases"
},
{
"type": "STRING",
@ -592,7 +592,7 @@
}
]
},
"select_cases": {
"_select_cases": {
"type": "SEQ",
"members": [
{

25
src/node-types.json generated
View file

@ -478,25 +478,6 @@
}
}
},
{
"type": "select_cases",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "default_case",
"named": true
},
{
"type": "select_case",
"named": true
}
]
}
},
{
"type": "select_expression",
"named": true,
@ -506,7 +487,11 @@
"required": true,
"types": [
{
"type": "select_cases",
"type": "default_case",
"named": true
},
{
"type": "select_case",
"named": true
},
{

40
src/parser.c generated
View file

@ -66,7 +66,7 @@ enum ts_symbol_identifiers {
sym_select_expression = 47,
sym_select_value = 48,
sym_soong_config_variable = 49,
sym_select_cases = 50,
sym__select_cases = 50,
sym_select_case = 51,
sym_default_case = 52,
sym__case_value = 53,
@ -79,7 +79,7 @@ enum ts_symbol_identifiers {
aux_sym__old_module_repeat1 = 60,
aux_sym__new_module_repeat1 = 61,
aux_sym_interpreted_string_literal_repeat1 = 62,
aux_sym_select_cases_repeat1 = 63,
aux_sym__select_cases_repeat1 = 63,
aux_sym_list_expression_repeat1 = 64,
};
@ -134,7 +134,7 @@ static const char * const ts_symbol_names[] = {
[sym_select_expression] = "select_expression",
[sym_select_value] = "select_value",
[sym_soong_config_variable] = "soong_config_variable",
[sym_select_cases] = "select_cases",
[sym__select_cases] = "_select_cases",
[sym_select_case] = "select_case",
[sym_default_case] = "default_case",
[sym__case_value] = "_case_value",
@ -147,7 +147,7 @@ static const char * const ts_symbol_names[] = {
[aux_sym__old_module_repeat1] = "_old_module_repeat1",
[aux_sym__new_module_repeat1] = "_new_module_repeat1",
[aux_sym_interpreted_string_literal_repeat1] = "interpreted_string_literal_repeat1",
[aux_sym_select_cases_repeat1] = "select_cases_repeat1",
[aux_sym__select_cases_repeat1] = "_select_cases_repeat1",
[aux_sym_list_expression_repeat1] = "list_expression_repeat1",
};
@ -202,7 +202,7 @@ static const TSSymbol ts_symbol_map[] = {
[sym_select_expression] = sym_select_expression,
[sym_select_value] = sym_select_value,
[sym_soong_config_variable] = sym_soong_config_variable,
[sym_select_cases] = sym_select_cases,
[sym__select_cases] = sym__select_cases,
[sym_select_case] = sym_select_case,
[sym_default_case] = sym_default_case,
[sym__case_value] = sym__case_value,
@ -215,7 +215,7 @@ static const TSSymbol ts_symbol_map[] = {
[aux_sym__old_module_repeat1] = aux_sym__old_module_repeat1,
[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_cases_repeat1] = aux_sym_select_cases_repeat1,
[aux_sym__select_cases_repeat1] = aux_sym__select_cases_repeat1,
[aux_sym_list_expression_repeat1] = aux_sym_list_expression_repeat1,
};
@ -420,8 +420,8 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
.visible = true,
.named = true,
},
[sym_select_cases] = {
.visible = true,
[sym__select_cases] = {
.visible = false,
.named = true,
},
[sym_select_case] = {
@ -472,7 +472,7 @@ static const TSSymbolMetadata ts_symbol_metadata[] = {
.visible = false,
.named = false,
},
[aux_sym_select_cases_repeat1] = {
[aux_sym__select_cases_repeat1] = {
.visible = false,
.named = false,
},
@ -6204,7 +6204,7 @@ static const uint16_t ts_small_parse_table[] = {
ACTIONS(39), 1,
anon_sym_default,
STATE(14), 1,
aux_sym_select_cases_repeat1,
aux_sym__select_cases_repeat1,
STATE(19), 1,
sym_interpreted_string_literal,
STATE(102), 1,
@ -6230,7 +6230,7 @@ static const uint16_t ts_small_parse_table[] = {
ACTIONS(41), 1,
anon_sym_RBRACE,
STATE(12), 1,
aux_sym_select_cases_repeat1,
aux_sym__select_cases_repeat1,
STATE(19), 1,
sym_interpreted_string_literal,
STATE(102), 1,
@ -6263,7 +6263,7 @@ static const uint16_t ts_small_parse_table[] = {
STATE(14), 3,
sym_line_comment,
sym_block_comment,
aux_sym_select_cases_repeat1,
aux_sym__select_cases_repeat1,
[668] = 4,
ACTIONS(3), 1,
anon_sym_SLASH_SLASH,
@ -7231,7 +7231,7 @@ static const uint16_t ts_small_parse_table[] = {
ACTIONS(229), 1,
anon_sym_LBRACE,
STATE(95), 1,
sym_select_cases,
sym__select_cases,
STATE(81), 2,
sym_line_comment,
sym_block_comment,
@ -7789,9 +7789,9 @@ static const TSParseActionEntry ts_parse_actions[] = {
[37] = {.entry = {.count = 1, .reusable = true}}, SHIFT(112),
[39] = {.entry = {.count = 1, .reusable = true}}, SHIFT(101),
[41] = {.entry = {.count = 1, .reusable = true}}, SHIFT(100),
[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(19),
[48] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym_select_cases_repeat1, 2), SHIFT_REPEAT(41),
[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(19),
[48] = {.entry = {.count = 2, .reusable = true}}, REDUCE(aux_sym__select_cases_repeat1, 2), SHIFT_REPEAT(41),
[51] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 2),
[53] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_interpreted_string_literal, 3),
[55] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_source_file, 1),
@ -7891,11 +7891,11 @@ static const TSParseActionEntry ts_parse_actions[] = {
[249] = {.entry = {.count = 1, .reusable = true}}, SHIFT(38),
[251] = {.entry = {.count = 1, .reusable = true}}, SHIFT(35),
[253] = {.entry = {.count = 1, .reusable = true}}, SHIFT(24),
[255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 5),
[255] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__select_cases, 5),
[257] = {.entry = {.count = 1, .reusable = false}}, SHIFT(122),
[259] = {.entry = {.count = 1, .reusable = true}}, SHIFT(81),
[261] = {.entry = {.count = 1, .reusable = true}}, SHIFT(96),
[263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 2),
[263] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__select_cases, 2),
[265] = {.entry = {.count = 1, .reusable = true}}, SHIFT(3),
[267] = {.entry = {.count = 1, .reusable = true}}, SHIFT(2),
[269] = {.entry = {.count = 1, .reusable = true}}, SHIFT(45),
@ -7907,14 +7907,14 @@ static const TSParseActionEntry ts_parse_actions[] = {
[281] = {.entry = {.count = 1, .reusable = false}}, SHIFT(121),
[283] = {.entry = {.count = 1, .reusable = true}}, ACCEPT_INPUT(),
[285] = {.entry = {.count = 1, .reusable = true}}, SHIFT(120),
[287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 3),
[287] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__select_cases, 3),
[289] = {.entry = {.count = 1, .reusable = true}}, SHIFT(99),
[291] = {.entry = {.count = 1, .reusable = false}}, SHIFT(97),
[293] = {.entry = {.count = 1, .reusable = true}}, SHIFT(36),
[295] = {.entry = {.count = 1, .reusable = true}}, SHIFT(40),
[297] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_default_case, 3, .production_id = 16),
[299] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_case, 3, .production_id = 16),
[301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_select_cases, 4),
[301] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym__select_cases, 4),
[303] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_line_comment, 2),
[305] = {.entry = {.count = 1, .reusable = true}}, REDUCE(sym_block_comment, 3),
};

View file

@ -17,12 +17,11 @@ foo = select(release_variable("RELEASE_TEST"), {
(select_value
(selection_type)
(interpreted_string_literal))
(select_cases
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(default_case
(unset))))))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(default_case
(unset)))))
================================================================================
Select (soong config variable)
@ -44,13 +43,12 @@ foo = select(soong_config_variable("my_namespace", "my_var"), {
(selection_type)
(interpreted_string_literal)
(interpreted_string_literal))
(select_cases
(select_case
(interpreted_string_literal)
(unset))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))))))
(select_case
(interpreted_string_literal)
(unset))
(select_case
(interpreted_string_literal)
(interpreted_string_literal)))))
================================================================================
Select (no default)
@ -73,19 +71,18 @@ foo = select(variant("arch"), {
(select_value
(selection_type)
(interpreted_string_literal))
(select_cases
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))))))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal)))))
================================================================================
Select (no values)
@ -102,8 +99,7 @@ foo = select(variant("VARIANT"), {})
(select_expression
(select_value
(selection_type)
(interpreted_string_literal))
(select_cases))))
(interpreted_string_literal)))))
================================================================================
Select (default in wrong order)
@ -127,22 +123,21 @@ foo = select(variant("VARIANT"), {
(select_value
(selection_type)
(interpreted_string_literal))
(select_cases
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(ERROR
(default_case
(unset)))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))))))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(ERROR
(default_case
(unset)))
(select_case
(interpreted_string_literal)
(interpreted_string_literal))
(select_case
(interpreted_string_literal)
(interpreted_string_literal)))))
================================================================================
Select (no condition)
@ -163,12 +158,11 @@ foo = select(variant(), {
(select_value
(selection_type)
(MISSING raw_string_literal))
(select_cases
(select_case
(interpreted_string_literal)
(unset))
(default_case
(interpreted_string_literal))))))
(select_case
(interpreted_string_literal)
(unset))
(default_case
(interpreted_string_literal)))))
================================================================================
Select (invalid type)