Remove selector_name rule

Was a choice() with a single alternative
This commit is contained in:
Emmanuel Briot 2022-10-25 09:58:04 +02:00
parent e06723eee2
commit fb5a2b68b0
4 changed files with 167 additions and 183 deletions

View File

@ -58,8 +58,7 @@ end;
(actual_parameter_part (actual_parameter_part
(parameter_association (parameter_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation
@ -70,8 +69,7 @@ end;
(numeric_literal))))))))) (numeric_literal)))))))))
(parameter_association (parameter_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression))))))) (assoc_expression)))))))
(generic_formal_parameter_declaration (generic_formal_parameter_declaration
(formal_subprogram_declaration (formal_subprogram_declaration

View File

@ -357,18 +357,18 @@ end;
(record_extension_part (record_extension_part
(record_definition))))))))) (record_definition)))))))))
======== ================================================================================
record aggregates record aggregates
======== ================================================================================
procedure P is procedure P is
begin begin
A := (F1 => 1, F2 => 2); A := (F1 => 1, F2 => 2);
end; end;
------- --------------------------------------------------------------------------------
(compilation (compilation
(compilation_unit (compilation_unit
(proper_body (proper_body
(subprogram_body (subprogram_body
@ -395,8 +395,7 @@ end;
(record_component_association_list (record_component_association_list
(record_component_association (record_component_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation
@ -407,8 +406,7 @@ end;
(numeric_literal))))))))) (numeric_literal)))))))))
(record_component_association (record_component_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation
@ -418,18 +416,18 @@ end;
(primary (primary
(numeric_literal)))))))))))))))))))))))))))) (numeric_literal))))))))))))))))))))))))))))
====== ================================================================================
record aggregate extension record aggregate extension
====== ================================================================================
procedure P is procedure P is
begin begin
A := (B with F3 => 2); A := (B with F3 => 2);
end; end;
--------- --------------------------------------------------------------------------------
(compilation (compilation
(compilation_unit (compilation_unit
(proper_body (proper_body
(subprogram_body (subprogram_body
@ -464,8 +462,7 @@ end;
(record_component_association_list (record_component_association_list
(record_component_association (record_component_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation
@ -475,18 +472,18 @@ end;
(primary (primary
(numeric_literal)))))))))))))))))))))))))))) (numeric_literal))))))))))))))))))))))))))))
====== ================================================================================
record delta aggregate record delta aggregate
====== ================================================================================
procedure P is procedure P is
begin begin
A := (B with delta F3 => 2); A := (B with delta F3 => 2);
end; end;
------- --------------------------------------------------------------------------------
(compilation (compilation
(compilation_unit (compilation_unit
(proper_body (proper_body
(subprogram_body (subprogram_body
@ -522,8 +519,7 @@ end;
(record_component_association_list (record_component_association_list
(record_component_association (record_component_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation

View File

@ -228,8 +228,7 @@ end F;
(record_component_association_list (record_component_association_list
(record_component_association (record_component_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation
@ -390,8 +389,7 @@ end;
(actual_parameter_part (actual_parameter_part
(parameter_association (parameter_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation
@ -574,8 +572,7 @@ end;
(actual_parameter_part (actual_parameter_part
(parameter_association (parameter_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation
@ -702,8 +699,7 @@ end;
(record_component_association_list (record_component_association_list
(record_component_association (record_component_association
(component_choice_list (component_choice_list
(selector_name (identifier))
(identifier)))
(assoc_expression (assoc_expression
(expression (expression
(relation (relation

View File

@ -50,9 +50,9 @@ module.exports = grammar({
// specified in at_clause. // specified in at_clause.
[$.at_clause, $.name], [$.at_clause, $.name],
// name ':=' '(' _direct_name . '=>' // 'case' '(' _direct_name . '=>' ...
// Where the direct_name could be a name or selector_name // ??? Invalid Ada
[$.name, $.selector_name], [$.name, $.component_choice_list],
// name ':=' '(' expression . ',' ... // name ':=' '(' expression . ',' ...
[$.expression_list, $.record_component_association], [$.expression_list, $.record_component_association],
@ -111,7 +111,6 @@ module.exports = grammar({
[$.function_call, $.procedure_call_statement], [$.function_call, $.procedure_call_statement],
[$.function_call, $.name], [$.function_call, $.name],
[$.selector_name, $.primary],
[$.formal_derived_type_definition], [$.formal_derived_type_definition],
[$._direct_name, $.aspect_mark], [$._direct_name, $.aspect_mark],
[$.name, $.attribute_reference, $.qualified_expression], [$.name, $.attribute_reference, $.qualified_expression],
@ -165,11 +164,6 @@ module.exports = grammar({
name_list: $ => comma_separated_list_of($.name), name_list: $ => comma_separated_list_of($.name),
defining_identifier_list: $ => comma_separated_list_of($.identifier), defining_identifier_list: $ => comma_separated_list_of($.identifier),
selector_name: $ => choice(
$._direct_name,
// $.character_literal, // was in ada-mode, moved to primary instead
// reservedWord('others'),
),
attribute_reference: $ => choice( attribute_reference: $ => choice(
seq( seq(
$.name, $.name,
@ -641,7 +635,7 @@ module.exports = grammar({
$._non_default_assoc_expression, $._non_default_assoc_expression,
), ),
component_choice_list: $ => component_choice_list: $ =>
list_of('|', $.selector_name), list_of('|', $._direct_name),
aggregate: $ => choice( aggregate: $ => choice(
$.record_aggregate, $.record_aggregate,
$.extension_aggregate, $.extension_aggregate,