{ "name": "ada", "word": "identifier", "rules": { "compilation": { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "compilation_unit" } }, "identifier": { "type": "PATTERN", "value": "[a-zA-Z\\u{80}-\\u{10FFFF}][0-9a-zA-Z_\\u{80}-\\u{10FFFF}]*" }, "gnatprep_identifier": { "type": "PATTERN", "value": "\\$[a-zA-Z\\u{80}-\\u{10FFFF}][0-9a-zA-Z_\\u{80}-\\u{10FFFF}]*" }, "comment": { "type": "TOKEN", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "--" }, { "type": "PATTERN", "value": ".*" } ] } }, "string_literal": { "type": "TOKEN", "content": { "type": "PATTERN", "value": "\"(\"\"|[^\"])*\"" } }, "character_literal": { "type": "TOKEN", "content": { "type": "PATTERN", "value": "'.'" } }, "numeric_literal": { "type": "TOKEN", "content": { "type": "CHOICE", "members": [ { "type": "PATTERN", "value": "[0-9][0-9_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?" }, { "type": "PATTERN", "value": "[0-9]+#[0-9a-fA-F._-]+#([eE][+-]?[0-9_]+)?" } ] } }, "git_conflict_mark": { "type": "CHOICE", "members": [ { "type": "TOKEN", "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[<<][<<][<<][<<][<<][<<][<<]" } } }, "named": false, "value": "<<<<<<<" }, { "type": "PATTERN", "value": ".*" } ] } }, { "type": "TOKEN", "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[>>][>>][>>][>>][>>][>>][>>]" } } }, "named": false, "value": ">>>>>>>" }, { "type": "PATTERN", "value": ".*" } ] } }, { "type": "TOKEN", "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[==][==][==][==][==][==][==]" } } }, "named": false, "value": "=======" }, { "type": "PATTERN", "value": ".*" } ] } } ] }, "relational_operator": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "=" }, { "type": "STRING", "value": "/=" }, { "type": "STRING", "value": "<" }, { "type": "STRING", "value": "<=" }, { "type": "STRING", "value": ">" }, { "type": "STRING", "value": ">=" } ] }, "binary_adding_operator": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "+" }, { "type": "STRING", "value": "-" }, { "type": "STRING", "value": "&" } ] }, "unary_adding_operator": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "+" }, { "type": "STRING", "value": "-" } ] }, "multiplying_operator": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "*" }, { "type": "STRING", "value": "/" }, { "type": "STRING", "value": "mod" }, { "type": "STRING", "value": "rem" } ] }, "tick": { "type": "STRING", "value": "'" }, "_name_not_function_call": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "SYMBOL", "name": "gnatprep_identifier" }, { "type": "SYMBOL", "name": "selected_component" }, { "type": "SYMBOL", "name": "_attribute_reference" }, { "type": "SYMBOL", "name": "qualified_expression" }, { "type": "SYMBOL", "name": "target_name" }, { "type": "SYMBOL", "name": "slice" }, { "type": "SYMBOL", "name": "character_literal" }, { "type": "SYMBOL", "name": "string_literal" } ] }, "_name": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_name_not_function_call" }, { "type": "SYMBOL", "name": "function_call" } ] }, "_name_for_component_choice": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "SYMBOL", "name": "string_literal" } ] }, "selected_component": { "type": "PREC_LEFT", "value": 0, "content": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "prefix", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "." }, { "type": "FIELD", "name": "selector_name", "content": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "SYMBOL", "name": "character_literal" }, { "type": "SYMBOL", "name": "string_literal" } ] } } ] } ] } }, "target_name": { "type": "STRING", "value": "@" }, "_name_list": { "type": "PREC_LEFT", "value": 0, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_name" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "_name" } ] } } ] } }, "_defining_identifier_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "identifier" } ] } } ] }, "slice": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "prefix", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "range_g" }, { "type": "STRING", "value": ")" } ] }, "_attribute_reference": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_name" }, { "type": "SYMBOL", "name": "tick" }, { "type": "SYMBOL", "name": "attribute_designator" } ] }, { "type": "SYMBOL", "name": "_reduction_attribute_reference" } ] }, "_reduction_attribute_reference": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "value_sequence" }, { "type": "SYMBOL", "name": "tick" }, { "type": "SYMBOL", "name": "reduction_attribute_designator" } ] }, "reduction_attribute_designator": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "reduction_specification" }, { "type": "STRING", "value": ")" } ] }, "reduction_specification": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_name" }, { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "expression" } ] }, "value_sequence": { "type": "SEQ", "members": [ { "type": "STRING", "value": "[" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "FIELD", "name": "is_parallel", "content": { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][aA][rR][aA][lL][lL][eE][lL]" } } }, "named": false, "value": "parallel" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "chunk_specification" }, { "type": "STRING", "value": ")" } ] }, { "type": "BLANK" } ] } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "iterated_element_association" }, { "type": "STRING", "value": "]" } ] }, "chunk_specification": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][nN]" } } }, "named": false, "value": "in" }, { "type": "SYMBOL", "name": "_discrete_subtype_definition" } ] } ] }, "iterated_element_association": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][oO][rR]" } } }, "named": false, "value": "for" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "loop_parameter_specification" }, { "type": "SYMBOL", "name": "iterator_specification" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "SYMBOL", "name": "expression" } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": "=>" }, { "type": "SYMBOL", "name": "expression" } ] }, "_discrete_subtype_definition": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "SYMBOL", "name": "range_g" } ] }, "loop_parameter_specification": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][nN]" } } }, "named": false, "value": "in" }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][vV][eE][rR][sS][eE]" } } }, "named": false, "value": "reverse" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_discrete_subtype_definition" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "iterator_filter" }, { "type": "BLANK" } ] } ] }, "_loop_parameter_subtype_indication": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "SYMBOL", "name": "access_definition" } ] }, "iterator_filter": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][eE][nN]" } } }, "named": false, "value": "when" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } } ] }, "iterator_specification": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": ":" }, { "type": "SYMBOL", "name": "_loop_parameter_subtype_indication" } ] }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][nN]" } } }, "named": false, "value": "in" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][fF]" } } }, "named": false, "value": "of" } ] }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][vV][eE][rR][sS][eE]" } } }, "named": false, "value": "reverse" }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "iterator_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "iterator_filter" }, { "type": "BLANK" } ] } ] }, "attribute_designator": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][cC][cC][eE][sS][sS]" } } }, "named": false, "value": "access" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][iI][gG][iI][tT][sS]" } } }, "named": false, "value": "digits" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[mM][oO][dD]" } } }, "named": false, "value": "mod" } ] }, "qualified_expression": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "subtype_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SYMBOL", "name": "tick" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_aggregate" }, { "type": "SYMBOL", "name": "_parenthesized_expression" } ] } ] }, "compilation_unit": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "with_clause" }, { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_declarative_item" } ] }, { "type": "SYMBOL", "name": "_statement" }, { "type": "SYMBOL", "name": "subunit" }, { "type": "SYMBOL", "name": "entry_declaration" } ] }, "_declarative_item": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_basic_declarative_item" }, { "type": "SYMBOL", "name": "_proper_body" }, { "type": "SYMBOL", "name": "body_stub" } ] }, "_basic_declarative_item": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_basic_declaration" }, { "type": "SYMBOL", "name": "_aspect_clause" }, { "type": "SYMBOL", "name": "use_clause" } ] }, "_basic_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_type_declaration" }, { "type": "SYMBOL", "name": "subtype_declaration" }, { "type": "SYMBOL", "name": "object_declaration" }, { "type": "SYMBOL", "name": "number_declaration" }, { "type": "SYMBOL", "name": "subprogram_declaration" }, { "type": "SYMBOL", "name": "expression_function_declaration" }, { "type": "SYMBOL", "name": "null_procedure_declaration" }, { "type": "SYMBOL", "name": "_package_declaration" }, { "type": "SYMBOL", "name": "_renaming_declaration" }, { "type": "SYMBOL", "name": "exception_declaration" }, { "type": "SYMBOL", "name": "_generic_declaration" }, { "type": "SYMBOL", "name": "generic_instantiation" } ] }, "_package_declaration": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "package_specification" }, { "type": "STRING", "value": ";" } ] }, "package_specification": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][aA][cC][kK][aA][gG][eE]" } } }, "named": false, "value": "package" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_basic_declarative_item_pragma" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_basic_declarative_item_pragma" } } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "FIELD", "name": "endname", "content": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_name" }, { "type": "BLANK" } ] } } ] }, "with_clause": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "is_limited", "content": { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][iI][mM][iI][tT][eE][dD]" } } }, "named": false, "value": "limited" }, { "type": "BLANK" } ] } }, { "type": "FIELD", "name": "is_private", "content": { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" }, { "type": "BLANK" } ] } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "SYMBOL", "name": "_name_list" }, { "type": "STRING", "value": ";" } ] }, "use_clause": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "FIELD", "name": "is_all", "content": { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][lL][lL]" } } }, "named": false, "value": "all" }, { "type": "BLANK" } ] } }, { "type": "FIELD", "name": "is_type", "content": { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" } } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_name_list" }, { "type": "STRING", "value": ";" } ] }, "subunit": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][pP][aA][rR][aA][tT][eE]" } } }, "named": false, "value": "separate" }, { "type": "STRING", "value": "(" }, { "type": "FIELD", "name": "parent_unit_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "STRING", "value": ")" }, { "type": "SYMBOL", "name": "_proper_body" } ] }, "_proper_body": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "subprogram_body" }, { "type": "SYMBOL", "name": "package_body" }, { "type": "SYMBOL", "name": "task_body" }, { "type": "SYMBOL", "name": "protected_body" } ] }, "subprogram_body": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "overriding_indicator" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_subprogram_specification" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_declarative_part" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][eE][gG][iI][nN]" } } }, "named": false, "value": "begin" }, { "type": "SYMBOL", "name": "handled_sequence_of_statements" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "CHOICE", "members": [ { "type": "FIELD", "name": "endname", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "package_body": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][aA][cC][kK][aA][gG][eE]" } } }, "named": false, "value": "package" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][oO][dD][yY]" } } }, "named": false, "value": "body" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_declarative_part" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][eE][gG][iI][nN]" } } }, "named": false, "value": "begin" }, { "type": "SYMBOL", "name": "handled_sequence_of_statements" } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "CHOICE", "members": [ { "type": "FIELD", "name": "endname", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "_subtype_indication": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name_not_function_call" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_constraint" }, { "type": "BLANK" } ] } ] }, "discriminant_constraint": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_parenthesized_expression" }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "discriminant_association" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "discriminant_association" } ] } } ] }, { "type": "STRING", "value": ")" } ] } ] }, "discriminant_association": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_name_for_component_choice" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "|" }, { "type": "SYMBOL", "name": "_name_for_component_choice" } ] } } ] }, { "type": "STRING", "value": "=>" } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "expression" } ] }, "_constraint": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_scalar_constraint" }, { "type": "SYMBOL", "name": "index_constraint" }, { "type": "SYMBOL", "name": "discriminant_constraint" } ] }, "_scalar_constraint": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "range_constraint" }, { "type": "SYMBOL", "name": "digits_constraint" }, { "type": "SYMBOL", "name": "delta_constraint" } ] }, "range_g": { "type": "CHOICE", "members": [ { "type": "FIELD", "name": "range_attribute_reference", "content": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "prefix", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SYMBOL", "name": "tick" }, { "type": "SYMBOL", "name": "range_attribute_designator" } ] } }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "STRING", "value": ".." }, { "type": "SYMBOL", "name": "_simple_expression" } ] } ] }, "range_attribute_designator": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][nN][gG][eE]" } } }, "named": false, "value": "range" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": ")" } ] }, { "type": "BLANK" } ] } ] }, "range_constraint": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][nN][gG][eE]" } } }, "named": false, "value": "range" }, { "type": "SYMBOL", "name": "range_g" } ] }, "expression": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_relation" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][nN][dD]" } } }, "named": false, "value": "and" }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "BLANK" } ] } ] }, { "type": "SYMBOL", "name": "_relation" } ] } } ] }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_relation" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][rR]" } } }, "named": false, "value": "or" }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][lL][sS][eE]" } } }, "named": false, "value": "else" }, { "type": "BLANK" } ] } ] }, { "type": "SYMBOL", "name": "_relation" } ] } } ] }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_relation" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[xX][oO][rR]" } } }, "named": false, "value": "xor" }, { "type": "SYMBOL", "name": "_relation" } ] } } ] } ] }, "_relation": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "relational_operator" }, { "type": "SYMBOL", "name": "_simple_expression" } ] }, { "type": "BLANK" } ] } ] }, { "type": "SYMBOL", "name": "relation_membership" }, { "type": "SYMBOL", "name": "raise_expression" } ] }, "relation_membership": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][oO][tT]" } } }, "named": false, "value": "not" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][nN]" } } }, "named": false, "value": "in" }, { "type": "SYMBOL", "name": "membership_choice_list" } ] }, "raise_expression": { "type": "PREC_RIGHT", "value": 1, "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][iI][sS][eE]" } } }, "named": false, "value": "raise" }, { "type": "FIELD", "name": "exception_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "SYMBOL", "name": "_simple_expression" } ] }, { "type": "BLANK" } ] } ] } }, "membership_choice_list": { "type": "PREC_RIGHT", "value": 0, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_membership_choice" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "|" }, { "type": "SYMBOL", "name": "_membership_choice" } ] } } ] } }, "_membership_choice": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "SYMBOL", "name": "range_g" } ] }, "_simple_expression": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "unary_adding_operator" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "term" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "binary_adding_operator" }, { "type": "SYMBOL", "name": "term" } ] } } ] }, "term": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_factor" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "multiplying_operator" }, { "type": "SYMBOL", "name": "_factor" } ] } } ] }, "_factor": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_primary" }, { "type": "SYMBOL", "name": "factor_power" }, { "type": "SYMBOL", "name": "factor_abs" }, { "type": "SYMBOL", "name": "factor_not" } ] }, "factor_power": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "left", "content": { "type": "SYMBOL", "name": "_primary" } }, { "type": "STRING", "value": "**" }, { "type": "FIELD", "name": "right", "content": { "type": "SYMBOL", "name": "_primary" } } ] }, "factor_abs": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS]" } } }, "named": false, "value": "abs" }, { "type": "SYMBOL", "name": "_primary" } ] }, "factor_not": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][oO][tT]" } } }, "named": false, "value": "not" }, { "type": "SYMBOL", "name": "_primary" } ] }, "_parenthesized_expression": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "SYMBOL", "name": "_conditional_expression" }, { "type": "SYMBOL", "name": "quantified_expression" }, { "type": "SYMBOL", "name": "declare_expression" } ] }, { "type": "STRING", "value": ")" } ] }, "_primary": { "type": "PREC", "value": 2, "content": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "numeric_literal" }, { "type": "SYMBOL", "name": "primary_null" }, { "type": "SYMBOL", "name": "_aggregate" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SYMBOL", "name": "allocator" }, { "type": "SYMBOL", "name": "_parenthesized_expression" } ] } }, "primary_null": { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][uU][lL][lL]" } } }, "named": false, "value": "null" }, "allocator": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "subpool_specification" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_subtype_indication_paren_constraint" } ] }, "_subtype_indication_paren_constraint": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_name" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "index_constraint" }, { "type": "BLANK" } ] } ] }, "subpool_specification": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "FIELD", "name": "subpool_handle_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "STRING", "value": ")" } ] }, "_access_type_definition": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "access_to_object_definition" }, { "type": "SYMBOL", "name": "access_to_subprogram_definition" } ] } ] }, "access_to_subprogram_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][cC][cC][eE][sS][sS]" } } }, "named": false, "value": "access" }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]" } } }, "named": false, "value": "protected" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][cC][eE][dD][uU][rR][eE]" } } }, "named": false, "value": "procedure" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_part" }, { "type": "BLANK" } ] } ] }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][uU][nN][cC][tT][iI][oO][nN]" } } }, "named": false, "value": "function" }, { "type": "SYMBOL", "name": "_parameter_and_result_profile" } ] } ] } ] }, "access_to_object_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][cC][cC][eE][sS][sS]" } } }, "named": false, "value": "access" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "general_access_modifier" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_subtype_indication" } ] }, "general_access_modifier": { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][lL][lL]" } } }, "named": false, "value": "all" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][oO][nN][sS][tT][aA][nN][tT]" } } }, "named": false, "value": "constant" } ] }, "access_definition": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][cC][cC][eE][sS][sS]" } } }, "named": false, "value": "access" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][oO][nN][sS][tT][aA][nN][tT]" } } }, "named": false, "value": "constant" }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]" } } }, "named": false, "value": "protected" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][cC][eE][dD][uU][rR][eE]" } } }, "named": false, "value": "procedure" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_part" }, { "type": "BLANK" } ] } ] }, { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]" } } }, "named": false, "value": "protected" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][uU][nN][cC][tT][iI][oO][nN]" } } }, "named": false, "value": "function" }, { "type": "SYMBOL", "name": "_parameter_and_result_profile" } ] } ] } ] }, "actual_parameter_part": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "parameter_association" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "parameter_association" } ] } } ] }, { "type": "SYMBOL", "name": "_conditional_expression" }, { "type": "SYMBOL", "name": "quantified_expression" }, { "type": "SYMBOL", "name": "declare_expression" } ] }, { "type": "STRING", "value": ")" } ] }, "parameter_association": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "component_choice_list" }, { "type": "STRING", "value": "=>" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "<>" } ] } ] }, { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "<>" } ] }, "_conditional_expression": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "if_expression" }, { "type": "SYMBOL", "name": "case_expression" } ] }, "_conditional_quantified_expression": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "if_expression" }, { "type": "SYMBOL", "name": "case_expression" }, { "type": "SYMBOL", "name": "quantified_expression" } ] }, "quantified_expression": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][oO][rR]" } } }, "named": false, "value": "for" }, { "type": "SYMBOL", "name": "quantifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "loop_parameter_specification" }, { "type": "SYMBOL", "name": "iterator_specification" } ] }, { "type": "STRING", "value": "=>" }, { "type": "FIELD", "name": "predicate", "content": { "type": "SYMBOL", "name": "expression" } } ] }, "declare_expression": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][cC][lL][aA][rR][eE]" } } }, "named": false, "value": "declare" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_declare_item" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][eE][gG][iI][nN]" } } }, "named": false, "value": "begin" }, { "type": "SYMBOL", "name": "expression" } ] }, "_declare_item": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "object_declaration" }, { "type": "SYMBOL", "name": "object_renaming_declaration" } ] }, "quantifier": { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][lL][lL]" } } }, "named": false, "value": "all" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][oO][mM][eE]" } } }, "named": false, "value": "some" } ] }, "case_expression": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][aA][sS][eE]" } } }, "named": false, "value": "case" }, { "type": "SYMBOL", "name": "expression" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "case_expression_alternative" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "case_expression_alternative" } ] } } ] } ] }, "case_expression_alternative": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][eE][nN]" } } }, "named": false, "value": "when" }, { "type": "SYMBOL", "name": "discrete_choice_list" }, { "type": "STRING", "value": "=>" }, { "type": "SYMBOL", "name": "expression" } ] }, "component_choice_list": { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][tT][hH][eE][rR][sS]" } } }, "named": false, "value": "others" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_name_for_component_choice" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "|" }, { "type": "SYMBOL", "name": "_name_for_component_choice" } ] } } ] } ] }, "_aggregate": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "record_aggregate" }, { "type": "SYMBOL", "name": "extension_aggregate" }, { "type": "SYMBOL", "name": "_array_aggregate" }, { "type": "SYMBOL", "name": "_delta_aggregate" } ] }, "_delta_aggregate": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "record_delta_aggregate" }, { "type": "SYMBOL", "name": "array_delta_aggregate" } ] }, "extension_aggregate": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "expression" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "SYMBOL", "name": "_record_component_association_list_or_expression" }, { "type": "STRING", "value": ")" } ] }, "record_delta_aggregate": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "expression" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "SYMBOL", "name": "_record_component_association_list_or_expression" }, { "type": "STRING", "value": ")" } ] }, "array_delta_aggregate": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "expression" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "SYMBOL", "name": "_array_component_association_list" }, { "type": "STRING", "value": ")" } ] }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "[" }, { "type": "SYMBOL", "name": "expression" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "SYMBOL", "name": "_array_component_association_list" }, { "type": "STRING", "value": "]" } ] } ] }, "record_aggregate": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "record_component_association_list" }, { "type": "STRING", "value": ")" } ] }, "record_component_association_list": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][uU][lL][lL]" } } }, "named": false, "value": "null" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][cC][oO][rR][dD]" } } }, "named": false, "value": "record" } ] }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "," }, { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "SYMBOL", "name": "_named_record_component_association" } ] }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "SYMBOL", "name": "_named_record_component_association" } ] } ] } } ] } ] }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_named_record_component_association" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "_named_record_component_association" } ] } } ] } ] }, "_record_component_association_list_or_expression": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "record_component_association_list" }, { "type": "SYMBOL", "name": "expression" } ] }, "_named_record_component_association": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "component_choice_list" }, { "type": "STRING", "value": "=>" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "<>" } ] } ] }, "null_exclusion": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][oO][tT]" } } }, "named": false, "value": "not" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][uU][lL][lL]" } } }, "named": false, "value": "null" } ] }, "index_constraint": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_discrete_range" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "_discrete_range" } ] } } ] }, { "type": "STRING", "value": ")" } ] }, "digits_constraint": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][iI][gG][iI][tT][sS]" } } }, "named": false, "value": "digits" }, { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "range_constraint" }, { "type": "BLANK" } ] } ] }, "delta_constraint": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "range_constraint" }, { "type": "BLANK" } ] } ] }, "_basic_declarative_item_pragma": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_basic_declarative_item" }, { "type": "SYMBOL", "name": "pragma_g" } ] }, "_type_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "full_type_declaration" }, { "type": "SYMBOL", "name": "incomplete_type_declaration" }, { "type": "SYMBOL", "name": "private_type_declaration" }, { "type": "SYMBOL", "name": "private_extension_declaration" } ] }, "full_type_declaration": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "known_discriminant_part" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "SYMBOL", "name": "_type_definition" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, { "type": "SYMBOL", "name": "task_type_declaration" }, { "type": "SYMBOL", "name": "protected_type_declaration" } ] }, "private_type_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_discriminant_part" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS][tT][rR][aA][cC][tT]" } } }, "named": false, "value": "abstract" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][gG][gG][eE][dD]" } } }, "named": false, "value": "tagged" } ] }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][iI][mM][iI][tT][eE][dD]" } } }, "named": false, "value": "limited" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "private_extension_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_discriminant_part" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS][tT][rR][aA][cC][tT]" } } }, "named": false, "value": "abstract" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][iI][mM][iI][tT][eE][dD]" } } }, "named": false, "value": "limited" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][yY][nN][cC][hH][rR][oO][nN][iI][zZ][eE][dD]" } } }, "named": false, "value": "synchronized" } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][nN][dD]" } } }, "named": false, "value": "and" }, { "type": "SYMBOL", "name": "_interface_list" } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "_discriminant_part": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "known_discriminant_part" }, { "type": "SYMBOL", "name": "unknown_discriminant_part" } ] }, "unknown_discriminant_part": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "STRING", "value": "<>" }, { "type": "STRING", "value": ")" } ] }, "known_discriminant_part": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "discriminant_specification_list" }, { "type": "STRING", "value": ")" } ] }, "incomplete_type_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_discriminant_part" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][gG][gG][eE][dD]" } } }, "named": false, "value": "tagged" } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "discriminant_specification_list": { "type": "PREC_RIGHT", "value": 0, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "discriminant_specification" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": ";" }, { "type": "SYMBOL", "name": "discriminant_specification" } ] } } ] } }, "discriminant_specification": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_defining_identifier_list" }, { "type": "STRING", "value": ":" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "SYMBOL", "name": "access_definition" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_assign_value" }, { "type": "BLANK" } ] } ] }, "_type_definition": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "enumeration_type_definition" }, { "type": "SYMBOL", "name": "_integer_type_definition" }, { "type": "SYMBOL", "name": "_real_type_definition" }, { "type": "SYMBOL", "name": "array_type_definition" }, { "type": "SYMBOL", "name": "record_type_definition" }, { "type": "SYMBOL", "name": "_access_type_definition" }, { "type": "SYMBOL", "name": "derived_type_definition" }, { "type": "SYMBOL", "name": "interface_type_definition" } ] }, "array_type_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][rR][rR][aA][yY]" } } }, "named": false, "value": "array" }, { "type": "STRING", "value": "(" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_discrete_subtype_definition_list" }, { "type": "SYMBOL", "name": "_index_subtype_definition_list" } ] }, { "type": "STRING", "value": ")" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][fF]" } } }, "named": false, "value": "of" }, { "type": "SYMBOL", "name": "component_definition" } ] }, "_discrete_subtype_definition_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_discrete_subtype_definition" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "_discrete_subtype_definition" } ] } } ] }, "_discrete_range": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "SYMBOL", "name": "range_g" } ] }, "_index_subtype_definition_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "index_subtype_definition" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "index_subtype_definition" } ] } } ] }, "index_subtype_definition": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][nN][gG][eE]" } } }, "named": false, "value": "range" }, { "type": "STRING", "value": "<>" } ] }, "enumeration_type_definition": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "_enumeration_literal_list" }, { "type": "STRING", "value": ")" } ] }, "_enumeration_literal_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_enumeration_literal_specification" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "_enumeration_literal_specification" } ] } } ] }, "_enumeration_literal_specification": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "SYMBOL", "name": "character_literal" } ] }, "_integer_type_definition": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "signed_integer_type_definition" }, { "type": "SYMBOL", "name": "modular_type_definition" } ] }, "modular_type_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[mM][oO][dD]" } } }, "named": false, "value": "mod" }, { "type": "SYMBOL", "name": "expression" } ] }, "_real_type_definition": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "floating_point_definition" }, { "type": "SYMBOL", "name": "_fixed_point_definition" } ] }, "floating_point_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][iI][gG][iI][tT][sS]" } } }, "named": false, "value": "digits" }, { "type": "SYMBOL", "name": "expression" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "real_range_specification" }, { "type": "BLANK" } ] } ] }, "real_range_specification": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][nN][gG][eE]" } } }, "named": false, "value": "range" }, { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "STRING", "value": ".." }, { "type": "SYMBOL", "name": "_simple_expression" } ] }, "_fixed_point_definition": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "ordinary_fixed_point_definition" }, { "type": "SYMBOL", "name": "decimal_fixed_point_definition" } ] }, "decimal_fixed_point_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "SYMBOL", "name": "expression" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][iI][gG][iI][tT][sS]" } } }, "named": false, "value": "digits" }, { "type": "SYMBOL", "name": "expression" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "real_range_specification" }, { "type": "BLANK" } ] } ] }, "ordinary_fixed_point_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "SYMBOL", "name": "expression" }, { "type": "SYMBOL", "name": "real_range_specification" } ] }, "signed_integer_type_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][nN][gG][eE]" } } }, "named": false, "value": "range" }, { "type": "SYMBOL", "name": "_simple_expression" }, { "type": "STRING", "value": ".." }, { "type": "SYMBOL", "name": "_simple_expression" } ] }, "derived_type_definition": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS][tT][rR][aA][cC][tT]" } } }, "named": false, "value": "abstract" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][iI][mM][iI][tT][eE][dD]" } } }, "named": false, "value": "limited" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][nN][dD]" } } }, "named": false, "value": "and" }, { "type": "SYMBOL", "name": "_interface_list" } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "record_extension_part" } ] }, { "type": "BLANK" } ] } ] }, "interface_type_definition": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][iI][mM][iI][tT][eE][dD]" } } }, "named": false, "value": "limited" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][sS][kK]" } } }, "named": false, "value": "task" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]" } } }, "named": false, "value": "protected" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][yY][nN][cC][hH][rR][oO][nN][iI][zZ][eE][dD]" } } }, "named": false, "value": "synchronized" } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][nN][tT][eE][rR][fF][aA][cC][eE]" } } }, "named": false, "value": "interface" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][nN][dD]" } } }, "named": false, "value": "and" }, { "type": "SYMBOL", "name": "_interface_list" } ] }, { "type": "BLANK" } ] } ] }, "_interface_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_name" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][nN][dD]" } } }, "named": false, "value": "and" }, { "type": "SYMBOL", "name": "_name" } ] } } ] }, "record_extension_part": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "SYMBOL", "name": "record_definition" } ] }, "record_type_definition": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS][tT][rR][aA][cC][tT]" } } }, "named": false, "value": "abstract" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][gG][gG][eE][dD]" } } }, "named": false, "value": "tagged" } ] }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][iI][mM][iI][tT][eE][dD]" } } }, "named": false, "value": "limited" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "record_definition" } ] }, "record_definition": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][cC][oO][rR][dD]" } } }, "named": false, "value": "record" }, { "type": "SYMBOL", "name": "component_list" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][cC][oO][rR][dD]" } } }, "named": false, "value": "record" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "BLANK" } ] } ] }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][uU][lL][lL]" } } }, "named": false, "value": "null" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][cC][oO][rR][dD]" } } }, "named": false, "value": "record" } ] } ] }, "component_list": { "type": "CHOICE", "members": [ { "type": "REPEAT1", "content": { "type": "SYMBOL", "name": "_component_item" } }, { "type": "SEQ", "members": [ { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_component_item" } }, { "type": "SYMBOL", "name": "variant_part" } ] }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][uU][lL][lL]" } } }, "named": false, "value": "null" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[;;]" } } }, "named": false, "value": ";" } ] } ] }, "_component_item": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "component_declaration" }, { "type": "SYMBOL", "name": "_aspect_clause" }, { "type": "SYMBOL", "name": "pragma_g" } ] }, "component_declaration": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_defining_identifier_list" }, { "type": "STRING", "value": ":" }, { "type": "SYMBOL", "name": "component_definition" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_assign_value" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "component_definition": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][lL][iI][aA][sS][eE][dD]" } } }, "named": false, "value": "aliased" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "SYMBOL", "name": "access_definition" } ] } ] }, "_array_aggregate": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "positional_array_aggregate" }, { "type": "SYMBOL", "name": "null_array_aggregate" }, { "type": "SYMBOL", "name": "named_array_aggregate" } ] }, "positional_array_aggregate": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "," }, { "type": "PREC_LEFT", "value": 1, "content": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "expression" } ] } } ] } }, { "type": "STRING", "value": ")" } ] }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "expression" } ] } } ] }, { "type": "STRING", "value": "," }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][tT][hH][eE][rR][sS]" } } }, "named": false, "value": "others" }, { "type": "STRING", "value": "=>" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "<>" } ] }, { "type": "STRING", "value": ")" } ] }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "[" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "expression" } ] } } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][tT][hH][eE][rR][sS]" } } }, "named": false, "value": "others" }, { "type": "STRING", "value": "=>" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "<>" } ] } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": "]" } ] } ] }, "null_array_aggregate": { "type": "SEQ", "members": [ { "type": "STRING", "value": "[" }, { "type": "STRING", "value": "]" } ] }, "named_array_aggregate": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "_array_component_association_list" }, { "type": "STRING", "value": ")" } ] }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "[" }, { "type": "SYMBOL", "name": "_array_component_association_list" }, { "type": "STRING", "value": "]" } ] } ] }, "_array_component_association_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "array_component_association" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "array_component_association" } ] } } ] }, "array_component_association": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "discrete_choice_list" }, { "type": "STRING", "value": "=>" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": "<>" } ] } ] }, { "type": "SYMBOL", "name": "iterated_element_association" } ] }, "discrete_choice_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "discrete_choice" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "|" }, { "type": "SYMBOL", "name": "discrete_choice" } ] } } ] }, "discrete_choice": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "SYMBOL", "name": "range_g" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][tT][hH][eE][rR][sS]" } } }, "named": false, "value": "others" } ] }, "aspect_association": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_aspect_mark" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "=>" }, { "type": "SYMBOL", "name": "_aspect_definition" } ] }, { "type": "BLANK" } ] } ] }, "_aspect_clause": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "attribute_definition_clause" }, { "type": "SYMBOL", "name": "enumeration_representation_clause" }, { "type": "SYMBOL", "name": "record_representation_clause" }, { "type": "SYMBOL", "name": "at_clause" } ] }, "_aspect_definition": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "SYMBOL", "name": "global_aspect_definition" } ] }, "_aspect_mark": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "tick" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[CC][lL][aA][sS][sS]" } } }, "named": false, "value": "Class" } ] }, { "type": "BLANK" } ] } ] }, "aspect_mark_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "aspect_association" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "aspect_association" } ] } } ] }, "aspect_specification": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "SYMBOL", "name": "aspect_mark_list" } ] }, "_assign_value": { "type": "SEQ", "members": [ { "type": "STRING", "value": ":=" }, { "type": "SYMBOL", "name": "expression" } ] }, "at_clause": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][oO][rR]" } } }, "named": false, "value": "for" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][tT]" } } }, "named": false, "value": "at" }, { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": ";" } ] }, "attribute_definition_clause": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][oO][rR]" } } }, "named": false, "value": "for" }, { "type": "FIELD", "name": "local_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SYMBOL", "name": "tick" }, { "type": "SYMBOL", "name": "attribute_designator" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": ";" } ] }, "body_stub": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "subprogram_body_stub" }, { "type": "SYMBOL", "name": "package_body_stub" }, { "type": "SYMBOL", "name": "task_body_stub" }, { "type": "SYMBOL", "name": "protected_body_stub" } ] }, "subprogram_body_stub": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "overriding_indicator" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_subprogram_specification" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][pP][aA][rR][aA][tT][eE]" } } }, "named": false, "value": "separate" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "package_body_stub": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][aA][cC][kK][aA][gG][eE]" } } }, "named": false, "value": "package" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][oO][dD][yY]" } } }, "named": false, "value": "body" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][pP][aA][rR][aA][tT][eE]" } } }, "named": false, "value": "separate" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "task_body": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][sS][kK]" } } }, "named": false, "value": "task" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][oO][dD][yY]" } } }, "named": false, "value": "body" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_declarative_part" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][eE][gG][iI][nN]" } } }, "named": false, "value": "begin" }, { "type": "SYMBOL", "name": "handled_sequence_of_statements" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "task_body_stub": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][sS][kK]" } } }, "named": false, "value": "task" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][oO][dD][yY]" } } }, "named": false, "value": "body" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][pP][aA][rR][aA][tT][eE]" } } }, "named": false, "value": "separate" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "_protected_operation_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "subprogram_declaration" }, { "type": "SYMBOL", "name": "pragma_g" }, { "type": "SYMBOL", "name": "entry_declaration" }, { "type": "SYMBOL", "name": "_aspect_clause" } ] }, "_protected_element_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_protected_operation_declaration" }, { "type": "SYMBOL", "name": "component_declaration" } ] }, "_protected_operation_item": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "subprogram_declaration" }, { "type": "SYMBOL", "name": "subprogram_body" }, { "type": "SYMBOL", "name": "null_procedure_declaration" }, { "type": "SYMBOL", "name": "expression_function_declaration" }, { "type": "SYMBOL", "name": "entry_body" }, { "type": "SYMBOL", "name": "_aspect_clause" } ] }, "protected_definition": { "type": "SEQ", "members": [ { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_protected_operation_declaration" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_protected_element_declaration" } } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "BLANK" } ] } ] }, "protected_type_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]" } } }, "named": false, "value": "protected" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "known_discriminant_part" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "SYMBOL", "name": "_interface_list" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "protected_definition" }, { "type": "STRING", "value": ";" } ] }, "single_protected_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]" } } }, "named": false, "value": "protected" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "SYMBOL", "name": "_interface_list" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "protected_definition" }, { "type": "STRING", "value": ";" } ] }, "protected_body": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]" } } }, "named": false, "value": "protected" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][oO][dD][yY]" } } }, "named": false, "value": "body" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_protected_operation_item" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "protected_body_stub": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]" } } }, "named": false, "value": "protected" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][oO][dD][yY]" } } }, "named": false, "value": "body" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][pP][aA][rR][aA][tT][eE]" } } }, "named": false, "value": "separate" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "choice_parameter_specification": { "type": "SYMBOL", "name": "identifier" }, "component_clause": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "local_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][tT]" } } }, "named": false, "value": "at" }, { "type": "FIELD", "name": "position", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][nN][gG][eE]" } } }, "named": false, "value": "range" }, { "type": "FIELD", "name": "first_bit", "content": { "type": "SYMBOL", "name": "_simple_expression" } }, { "type": "STRING", "value": ".." }, { "type": "FIELD", "name": "last_bit", "content": { "type": "SYMBOL", "name": "_simple_expression" } }, { "type": "STRING", "value": ";" } ] }, "_declarative_item_pragma": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_declarative_item" }, { "type": "SYMBOL", "name": "pragma_g" }, { "type": "SYMBOL", "name": "gnatprep_declarative_if_statement" } ] }, "non_empty_declarative_part": { "type": "REPEAT1", "content": { "type": "SYMBOL", "name": "_declarative_item_pragma" } }, "entry_declaration": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "overriding_indicator" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][tT][rR][yY]" } } }, "named": false, "value": "entry" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "_discrete_subtype_definition" }, { "type": "STRING", "value": ")" } ] }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "parameter_profile", "content": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_part" }, { "type": "BLANK" } ] } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "entry_body": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][tT][rR][yY]" } } }, "named": false, "value": "entry" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_entry_body_formal_part" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "entry_barrier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_declarative_part" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][eE][gG][iI][nN]" } } }, "named": false, "value": "begin" }, { "type": "SYMBOL", "name": "handled_sequence_of_statements" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "entry_barrier": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][eE][nN]" } } }, "named": false, "value": "when" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } } ] }, "entry_index_specification": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][oO][rR]" } } }, "named": false, "value": "for" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][nN]" } } }, "named": false, "value": "in" }, { "type": "SYMBOL", "name": "_discrete_subtype_definition" } ] }, "enumeration_aggregate": { "type": "SYMBOL", "name": "_array_aggregate" }, "enumeration_representation_clause": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][oO][rR]" } } }, "named": false, "value": "for" }, { "type": "FIELD", "name": "local_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "SYMBOL", "name": "enumeration_aggregate" }, { "type": "STRING", "value": ";" } ] }, "exception_choice_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "exception_choice" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "|" }, { "type": "SYMBOL", "name": "exception_choice" } ] } } ] }, "exception_choice": { "type": "CHOICE", "members": [ { "type": "FIELD", "name": "exception_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][tT][hH][eE][rR][sS]" } } }, "named": false, "value": "others" } ] }, "exception_declaration": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_defining_identifier_list" }, { "type": "STRING", "value": ":" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][xX][cC][eE][pP][tT][iI][oO][nN]" } } }, "named": false, "value": "exception" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "exception_handler": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][eE][nN]" } } }, "named": false, "value": "when" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "choice_parameter_specification" }, { "type": "STRING", "value": ":" } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "exception_choice_list" }, { "type": "STRING", "value": "=>" }, { "type": "SYMBOL", "name": "_sequence_of_statements" } ] }, "formal_part": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "_parameter_specification_list" }, { "type": "STRING", "value": ")" } ] }, "function_specification": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][uU][nN][cC][tT][iI][oO][nN]" } } }, "named": false, "value": "function" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SYMBOL", "name": "_parameter_and_result_profile" } ] }, "_generic_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "generic_subprogram_declaration" }, { "type": "SYMBOL", "name": "generic_package_declaration" } ] }, "generic_formal_part": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[gG][eE][nN][eE][rR][iI][cC]" } } }, "named": false, "value": "generic" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_generic_formal_parameter_declaration" } } ] }, "_generic_formal_parameter_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_object_declaration" }, { "type": "SYMBOL", "name": "_formal_type_declaration" }, { "type": "SYMBOL", "name": "formal_subprogram_declaration" }, { "type": "SYMBOL", "name": "formal_package_declaration" }, { "type": "SYMBOL", "name": "use_clause" }, { "type": "SYMBOL", "name": "pragma_g" } ] }, "generic_subprogram_declaration": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "generic_formal_part" }, { "type": "SYMBOL", "name": "_subprogram_specification" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "generic_package_declaration": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "generic_formal_part" }, { "type": "SYMBOL", "name": "package_specification" }, { "type": "STRING", "value": ";" } ] }, "generic_instantiation": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][aA][cC][kK][aA][gG][eE]" } } }, "named": false, "value": "package" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "overriding_indicator" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][cC][eE][dD][uU][rR][eE]" } } }, "named": false, "value": "procedure" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][uU][nN][cC][tT][iI][oO][nN]" } } }, "named": false, "value": "function" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } } ] } ] } ] } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "FIELD", "name": "generic_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "formal_object_declaration": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_defining_identifier_list" } }, { "type": "STRING", "value": ":" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_mode" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_assign_value" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_defining_identifier_list" }, { "type": "STRING", "value": ":" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_mode" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "access_definition" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_assign_value" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] } ] }, "_formal_type_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_complete_type_declaration" }, { "type": "SYMBOL", "name": "formal_incomplete_type_declaration" } ] }, "formal_complete_type_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_discriminant_part" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "SYMBOL", "name": "_formal_type_definition" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][rR]" } } }, "named": false, "value": "or" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "FIELD", "name": "default_subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "formal_incomplete_type_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_discriminant_part" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][gG][gG][eE][dD]" } } }, "named": false, "value": "tagged" } ] }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][rR]" } } }, "named": false, "value": "or" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "FIELD", "name": "default_subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "_formal_type_definition": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_private_type_definition" }, { "type": "SYMBOL", "name": "formal_derived_type_definition" }, { "type": "SYMBOL", "name": "formal_discrete_type_definition" }, { "type": "SYMBOL", "name": "formal_signed_integer_type_definition" }, { "type": "SYMBOL", "name": "formal_modular_type_definition" }, { "type": "SYMBOL", "name": "formal_floating_point_definition" }, { "type": "SYMBOL", "name": "formal_ordinary_fixed_point_definition" }, { "type": "SYMBOL", "name": "formal_decimal_fixed_point_definition" }, { "type": "SYMBOL", "name": "formal_array_type_definition" }, { "type": "SYMBOL", "name": "formal_access_type_definition" }, { "type": "SYMBOL", "name": "formal_interface_type_definition" } ] }, "formal_private_type_definition": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS][tT][rR][aA][cC][tT]" } } }, "named": false, "value": "abstract" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][gG][gG][eE][dD]" } } }, "named": false, "value": "tagged" } ] }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][iI][mM][iI][tT][eE][dD]" } } }, "named": false, "value": "limited" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" } ] }, "formal_derived_type_definition": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS][tT][rR][aA][cC][tT]" } } }, "named": false, "value": "abstract" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][iI][mM][iI][tT][eE][dD]" } } }, "named": false, "value": "limited" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][yY][nN][cC][hH][rR][oO][nN][iI][zZ][eE][dD]" } } }, "named": false, "value": "synchronized" } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][nN][dD]" } } }, "named": false, "value": "and" }, { "type": "SYMBOL", "name": "_interface_list" } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" } ] }, { "type": "BLANK" } ] } ] }, "formal_discrete_type_definition": { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "STRING", "value": "<>" }, { "type": "STRING", "value": ")" } ] }, "formal_signed_integer_type_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][nN][gG][eE]" } } }, "named": false, "value": "range" }, { "type": "STRING", "value": "<>" } ] }, "formal_modular_type_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[mM][oO][dD]" } } }, "named": false, "value": "mod" }, { "type": "STRING", "value": "<>" } ] }, "formal_floating_point_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][iI][gG][iI][tT][sS]" } } }, "named": false, "value": "digits" }, { "type": "STRING", "value": "<>" } ] }, "formal_ordinary_fixed_point_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "STRING", "value": "<>" } ] }, "formal_decimal_fixed_point_definition": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][tT][aA]" } } }, "named": false, "value": "delta" }, { "type": "STRING", "value": "<>" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][iI][gG][iI][tT][sS]" } } }, "named": false, "value": "digits" }, { "type": "STRING", "value": "<>" } ] }, "formal_array_type_definition": { "type": "SYMBOL", "name": "array_type_definition" }, "formal_access_type_definition": { "type": "SYMBOL", "name": "_access_type_definition" }, "formal_interface_type_definition": { "type": "SYMBOL", "name": "interface_type_definition" }, "formal_subprogram_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_concrete_subprogram_declaration" }, { "type": "SYMBOL", "name": "formal_abstract_subprogram_declaration" } ] }, "formal_concrete_subprogram_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "SYMBOL", "name": "_subprogram_specification" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "SYMBOL", "name": "subprogram_default" } ] }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "formal_abstract_subprogram_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "SYMBOL", "name": "_subprogram_specification" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS][tT][rR][aA][cC][tT]" } } }, "named": false, "value": "abstract" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "subprogram_default" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "subprogram_default": { "type": "CHOICE", "members": [ { "type": "FIELD", "name": "default_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "STRING", "value": "<>" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][uU][lL][lL]" } } }, "named": false, "value": "null" } ] }, "formal_package_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][aA][cC][kK][aA][gG][eE]" } } }, "named": false, "value": "package" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "FIELD", "name": "generic_package_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "formal_group_designator": { "type": "CHOICE", "members": [ { "type": "STRING", "value": "null" }, { "type": "STRING", "value": "all" } ] }, "extended_global_aspect_element": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "FIELD", "name": "formal_parameter_set", "content": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_group_designator" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_name" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "_name" } ] } } ] } ] } } ] } ] }, "global_aspect_definition": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "global_mode" } ] }, { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "global_aspect_element" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "global_aspect_element" } ] } } ] }, { "type": "STRING", "value": ")" } ] } ] }, "global_aspect_element": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "global_mode" }, { "type": "FIELD", "name": "global_set", "content": { "type": "SYMBOL", "name": "_name_list" } } ] } ] }, "global_mode": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_mode" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][vV][eE][rR][rR][iI][dD][iI][nN][gG]" } } }, "named": false, "value": "overriding" } ] }, "handled_sequence_of_statements": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_sequence_of_statements" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][xX][cC][eE][pP][tT][iI][oO][nN]" } } }, "named": false, "value": "exception" }, { "type": "REPEAT1", "content": { "type": "SYMBOL", "name": "exception_handler" } } ] }, { "type": "BLANK" } ] } ] }, "loop_label": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "statement_identifier", "content": { "type": "SYMBOL", "name": "identifier" } }, { "type": "STRING", "value": ":" } ] }, "label": { "type": "SEQ", "members": [ { "type": "STRING", "value": "<<" }, { "type": "FIELD", "name": "statement_identifier", "content": { "type": "SYMBOL", "name": "identifier" } }, { "type": "STRING", "value": ">>" } ] }, "mod_clause": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][tT]" } } }, "named": false, "value": "at" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[mM][oO][dD]" } } }, "named": false, "value": "mod" }, { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": ";" } ] }, "non_empty_mode": { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][nN]" } } }, "named": false, "value": "in" }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][nN]" } } }, "named": false, "value": "in" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][uU][tT]" } } }, "named": false, "value": "out" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][uU][tT]" } } }, "named": false, "value": "out" } ] }, "null_procedure_declaration": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "overriding_indicator" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "procedure_specification" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][uU][lL][lL]" } } }, "named": false, "value": "null" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "null_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][uU][lL][lL]" } } }, "named": false, "value": "null" }, { "type": "STRING", "value": ";" } ] }, "number_declaration": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_defining_identifier_list" }, { "type": "STRING", "value": ":" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][oO][nN][sS][tT][aA][nN][tT]" } } }, "named": false, "value": "constant" }, { "type": "SYMBOL", "name": "_assign_value" }, { "type": "STRING", "value": ";" } ] }, "object_declaration": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_defining_identifier_list" } }, { "type": "STRING", "value": ":" }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][lL][iI][aA][sS][eE][dD]" } } }, "named": false, "value": "aliased" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][oO][nN][sS][tT][aA][nN][tT]" } } }, "named": false, "value": "constant" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "SYMBOL", "name": "access_definition" }, { "type": "SYMBOL", "name": "array_type_definition" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_assign_value" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, { "type": "SYMBOL", "name": "single_task_declaration" }, { "type": "SYMBOL", "name": "single_protected_declaration" } ] }, "single_task_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][sS][kK]" } } }, "named": false, "value": "task" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "SYMBOL", "name": "_interface_list" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "task_definition" } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "task_type_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][aA][sS][kK]" } } }, "named": false, "value": "task" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][yY][pP][eE]" } } }, "named": false, "value": "type" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "known_discriminant_part" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][eE][wW]" } } }, "named": false, "value": "new" }, { "type": "SYMBOL", "name": "_interface_list" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "task_definition" } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "non_empty_entry_body_formal_part": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "SYMBOL", "name": "entry_index_specification" }, { "type": "STRING", "value": ")" } ] }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "parameter_profile", "content": { "type": "SYMBOL", "name": "formal_part" } } ] }, "_task_item": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "entry_declaration" }, { "type": "SYMBOL", "name": "_aspect_clause" }, { "type": "SYMBOL", "name": "pragma_g" } ] }, "task_definition": { "type": "SEQ", "members": [ { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_task_item" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][iI][vV][aA][tT][eE]" } } }, "named": false, "value": "private" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_task_item" } } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "FIELD", "name": "endname", "content": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "BLANK" } ] } } ] }, "overriding_indicator": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[nN][oO][tT]" } } }, "named": false, "value": "not" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][vV][eE][rR][rR][iI][dD][iI][nN][gG]" } } }, "named": false, "value": "overriding" } ] }, "_parameter_and_result_profile": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_part" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "result_profile" } ] }, "parameter_specification": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_defining_identifier_list" }, { "type": "STRING", "value": ":" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][lL][iI][aA][sS][eE][dD]" } } }, "named": false, "value": "aliased" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_mode" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "SYMBOL", "name": "access_definition" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_assign_value" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] } ] }, "_parameter_specification_list": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "parameter_specification" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": ";" }, { "type": "SYMBOL", "name": "parameter_specification" } ] } } ] }, "pragma_g": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][aA][gG][mM][aA]" } } }, "named": false, "value": "pragma" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "pragma_argument_association" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "pragma_argument_association" } ] } } ] }, { "type": "SYMBOL", "name": "_conditional_quantified_expression" } ] }, { "type": "STRING", "value": ")" } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "pragma_argument_association": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_aspect_mark" }, { "type": "STRING", "value": "=>" } ] }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "expression" } ] }, "if_expression": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][fF]" } } }, "named": false, "value": "if" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "SYMBOL", "name": "expression" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "elsif_expression_item" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][lL][sS][eE]" } } }, "named": false, "value": "else" }, { "type": "SYMBOL", "name": "expression" } ] }, { "type": "BLANK" } ] } ] }, "elsif_expression_item": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][lL][sS][iI][fF]" } } }, "named": false, "value": "elsif" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "SYMBOL", "name": "expression" } ] }, "procedure_specification": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][cC][eE][dD][uU][rR][eE]" } } }, "named": false, "value": "procedure" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "formal_part" }, { "type": "BLANK" } ] } ] }, "record_representation_clause": { "type": "PREC_LEFT", "value": 0, "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][oO][rR]" } } }, "named": false, "value": "for" }, { "type": "FIELD", "name": "local_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][sS][eE]" } } }, "named": false, "value": "use" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][cC][oO][rR][dD]" } } }, "named": false, "value": "record" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "mod_clause" }, { "type": "BLANK" } ] }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "component_clause" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][cC][oO][rR][dD]" } } }, "named": false, "value": "record" }, { "type": "CHOICE", "members": [ { "type": "FIELD", "name": "end_local_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] } }, "_renaming_declaration": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "object_renaming_declaration" }, { "type": "SYMBOL", "name": "exception_renaming_declaration" }, { "type": "SYMBOL", "name": "package_renaming_declaration" }, { "type": "SYMBOL", "name": "subprogram_renaming_declaration" }, { "type": "SYMBOL", "name": "generic_renaming_declaration" } ] }, "object_renaming_declaration": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": ":" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][nN][aA][mM][eE][sS]" } } }, "named": false, "value": "renames" }, { "type": "FIELD", "name": "object_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "STRING", "value": ":" }, { "type": "SYMBOL", "name": "access_definition" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][nN][aA][mM][eE][sS]" } } }, "named": false, "value": "renames" }, { "type": "FIELD", "name": "object_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] } ] }, "exception_renaming_declaration": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "STRING", "value": ":" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][xX][cC][eE][pP][tT][iI][oO][nN]" } } }, "named": false, "value": "exception" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][nN][aA][mM][eE][sS]" } } }, "named": false, "value": "renames" }, { "type": "FIELD", "name": "exception_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "package_renaming_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][aA][cC][kK][aA][gG][eE]" } } }, "named": false, "value": "package" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][nN][aA][mM][eE][sS]" } } }, "named": false, "value": "renames" }, { "type": "FIELD", "name": "package_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "subprogram_renaming_declaration": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "overriding_indicator" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_subprogram_specification" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][nN][aA][mM][eE][sS]" } } }, "named": false, "value": "renames" }, { "type": "FIELD", "name": "callable_entity_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "generic_renaming_declaration": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[gG][eE][nN][eE][rR][iI][cC]" } } }, "named": false, "value": "generic" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][aA][cC][kK][aA][gG][eE]" } } }, "named": false, "value": "package" }, { "type": "FIELD", "name": "defining_program_unit_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][nN][aA][mM][eE][sS]" } } }, "named": false, "value": "renames" }, { "type": "FIELD", "name": "generic_package_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[gG][eE][nN][eE][rR][iI][cC]" } } }, "named": false, "value": "generic" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[pP][rR][oO][cC][eE][dD][uU][rR][eE]" } } }, "named": false, "value": "procedure" }, { "type": "FIELD", "name": "defining_program_unit_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][nN][aA][mM][eE][sS]" } } }, "named": false, "value": "renames" }, { "type": "FIELD", "name": "generic_procedure_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[gG][eE][nN][eE][rR][iI][cC]" } } }, "named": false, "value": "generic" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][uU][nN][cC][tT][iI][oO][nN]" } } }, "named": false, "value": "function" }, { "type": "FIELD", "name": "defining_program_unit_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][nN][aA][mM][eE][sS]" } } }, "named": false, "value": "renames" }, { "type": "FIELD", "name": "generic_function_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] } ] }, "result_profile": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][tT][uU][rR][nN]" } } }, "named": false, "value": "return" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_exclusion" }, { "type": "BLANK" } ] }, { "type": "FIELD", "name": "subtype_mark", "content": { "type": "SYMBOL", "name": "_name" } } ] }, { "type": "SYMBOL", "name": "access_definition" } ] } ] }, "_sequence_of_statements": { "type": "PREC_LEFT", "value": 0, "content": { "type": "SEQ", "members": [ { "type": "REPEAT1", "content": { "type": "SYMBOL", "name": "_statement" } }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "label" } } ] } }, "_simple_statement": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "null_statement" }, { "type": "SYMBOL", "name": "assignment_statement" }, { "type": "SYMBOL", "name": "exit_statement" }, { "type": "SYMBOL", "name": "goto_statement" }, { "type": "SYMBOL", "name": "procedure_call_statement" }, { "type": "SYMBOL", "name": "simple_return_statement" }, { "type": "SYMBOL", "name": "requeue_statement" }, { "type": "SYMBOL", "name": "_delay_statement" }, { "type": "SYMBOL", "name": "abort_statement" }, { "type": "SYMBOL", "name": "raise_statement" }, { "type": "SYMBOL", "name": "pragma_g" } ] }, "_statement": { "type": "SEQ", "members": [ { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "label" } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_simple_statement" }, { "type": "SYMBOL", "name": "_compound_statement" } ] } ] }, "_compound_statement": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "if_statement" }, { "type": "SYMBOL", "name": "gnatprep_if_statement" }, { "type": "SYMBOL", "name": "case_statement" }, { "type": "SYMBOL", "name": "loop_statement" }, { "type": "SYMBOL", "name": "block_statement" }, { "type": "SYMBOL", "name": "extended_return_statement" }, { "type": "SYMBOL", "name": "accept_statement" }, { "type": "SYMBOL", "name": "_select_statement" } ] }, "_select_statement": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "selective_accept" }, { "type": "SYMBOL", "name": "timed_entry_call" }, { "type": "SYMBOL", "name": "conditional_entry_call" }, { "type": "SYMBOL", "name": "asynchronous_select" } ] }, "entry_call_alternative": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "procedure_call_statement" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_sequence_of_statements" }, { "type": "BLANK" } ] } ] }, "asynchronous_select": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][lL][eE][cC][tT]" } } }, "named": false, "value": "select" }, { "type": "SYMBOL", "name": "triggering_alternative" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][oO][rR][tT]" } } }, "named": false, "value": "abort" }, { "type": "FIELD", "name": "abortable_part", "content": { "type": "SYMBOL", "name": "_sequence_of_statements" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][lL][eE][cC][tT]" } } }, "named": false, "value": "select" }, { "type": "STRING", "value": ";" } ] }, "triggering_alternative": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "procedure_call_statement" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_sequence_of_statements" }, { "type": "BLANK" } ] } ] }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_delay_statement" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_sequence_of_statements" }, { "type": "BLANK" } ] } ] } ] }, "conditional_entry_call": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][lL][eE][cC][tT]" } } }, "named": false, "value": "select" }, { "type": "SYMBOL", "name": "entry_call_alternative" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][lL][sS][eE]" } } }, "named": false, "value": "else" }, { "type": "SYMBOL", "name": "_sequence_of_statements" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][lL][eE][cC][tT]" } } }, "named": false, "value": "select" }, { "type": "STRING", "value": ";" } ] }, "delay_alternative": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_delay_statement" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_sequence_of_statements" }, { "type": "BLANK" } ] } ] }, "timed_entry_call": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][lL][eE][cC][tT]" } } }, "named": false, "value": "select" }, { "type": "SYMBOL", "name": "entry_call_alternative" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][rR]" } } }, "named": false, "value": "or" }, { "type": "SYMBOL", "name": "delay_alternative" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][lL][eE][cC][tT]" } } }, "named": false, "value": "select" }, { "type": "STRING", "value": ";" } ] }, "guard": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][eE][nN]" } } }, "named": false, "value": "when" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "STRING", "value": "=>" } ] }, "select_alternative": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "accept_alternative" }, { "type": "SYMBOL", "name": "delay_alternative" }, { "type": "SYMBOL", "name": "terminate_alternative" } ] }, "accept_alternative": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "accept_statement" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_sequence_of_statements" }, { "type": "BLANK" } ] } ] }, "terminate_alternative": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][eE][rR][mM][iI][nN][aA][tT][eE]" } } }, "named": false, "value": "terminate" }, { "type": "STRING", "value": ";" } ] }, "selective_accept": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][lL][eE][cC][tT]" } } }, "named": false, "value": "select" }, { "type": "SEQ", "members": [ { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "guard" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "select_alternative" } ] }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[oO][rR]" } } }, "named": false, "value": "or" }, { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "guard" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "select_alternative" } ] } ] } } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][lL][sS][eE]" } } }, "named": false, "value": "else" }, { "type": "SYMBOL", "name": "_sequence_of_statements" } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][eE][lL][eE][cC][tT]" } } }, "named": false, "value": "select" }, { "type": "STRING", "value": ";" } ] }, "abort_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][oO][rR][tT]" } } }, "named": false, "value": "abort" }, { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "_name" }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "STRING", "value": "," }, { "type": "SYMBOL", "name": "_name" } ] } } ] }, { "type": "STRING", "value": ";" } ] }, "requeue_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][qQ][uU][eE][uU][eE]" } } }, "named": false, "value": "requeue" }, { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][oO][rR][tT]" } } }, "named": false, "value": "abort" } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "accept_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][cC][cC][eE][pP][tT]" } } }, "named": false, "value": "accept" }, { "type": "FIELD", "name": "entry_direct_name", "content": { "type": "SYMBOL", "name": "identifier" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "STRING", "value": "(" }, { "type": "FIELD", "name": "entry_index", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "STRING", "value": ")" } ] }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "FIELD", "name": "parameter_profile", "content": { "type": "SYMBOL", "name": "formal_part" } }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][oO]" } } }, "named": false, "value": "do" }, { "type": "SYMBOL", "name": "handled_sequence_of_statements" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "CHOICE", "members": [ { "type": "FIELD", "name": "entry_identifier", "content": { "type": "SYMBOL", "name": "identifier" } }, { "type": "BLANK" } ] } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "case_statement_alternative": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][eE][nN]" } } }, "named": false, "value": "when" }, { "type": "SYMBOL", "name": "discrete_choice_list" }, { "type": "STRING", "value": "=>" }, { "type": "SYMBOL", "name": "_sequence_of_statements" } ] }, "case_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][aA][sS][eE]" } } }, "named": false, "value": "case" }, { "type": "SYMBOL", "name": "expression" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "REPEAT1", "content": { "type": "SYMBOL", "name": "case_statement_alternative" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][aA][sS][eE]" } } }, "named": false, "value": "case" }, { "type": "STRING", "value": ";" } ] }, "block_statement": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "loop_label" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][cC][lL][aA][rR][eE]" } } }, "named": false, "value": "declare" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "non_empty_declarative_part" }, { "type": "BLANK" } ] } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[bB][eE][gG][iI][nN]" } } }, "named": false, "value": "begin" }, { "type": "SYMBOL", "name": "handled_sequence_of_statements" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "if_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][fF]" } } }, "named": false, "value": "if" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "FIELD", "name": "statements", "content": { "type": "SYMBOL", "name": "_sequence_of_statements" } }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "elsif_statement_item" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][lL][sS][eE]" } } }, "named": false, "value": "else" }, { "type": "FIELD", "name": "else_statements", "content": { "type": "SYMBOL", "name": "_sequence_of_statements" } } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][fF]" } } }, "named": false, "value": "if" }, { "type": "STRING", "value": ";" } ] }, "elsif_statement_item": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][lL][sS][iI][fF]" } } }, "named": false, "value": "elsif" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "FIELD", "name": "statements", "content": { "type": "SYMBOL", "name": "_sequence_of_statements" } } ] }, "gnatprep_declarative_if_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[##][iI][fF]" } } }, "named": false, "value": "#if" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_declarative_item_pragma" } }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[##][eE][lL][sS][iI][fF]" } } }, "named": false, "value": "#elsif" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_declarative_item_pragma" } } ] } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[##][eE][lL][sS][eE]" } } }, "named": false, "value": "#else" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_declarative_item_pragma" } } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[##][eE][nN][dD]" } } }, "named": false, "value": "#end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][fF]" } } }, "named": false, "value": "if" }, { "type": "STRING", "value": ";" } ] }, "gnatprep_if_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[##][iI][fF]" } } }, "named": false, "value": "#if" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_statement" } }, { "type": "REPEAT", "content": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[##][eE][lL][sS][iI][fF]" } } }, "named": false, "value": "#elsif" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[tT][hH][eE][nN]" } } }, "named": false, "value": "then" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_statement" } } ] } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[##][eE][lL][sS][eE]" } } }, "named": false, "value": "#else" }, { "type": "REPEAT", "content": { "type": "SYMBOL", "name": "_statement" } } ] }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[##][eE][nN][dD]" } } }, "named": false, "value": "#end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][fF]" } } }, "named": false, "value": "if" }, { "type": "STRING", "value": ";" } ] }, "exit_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][xX][iI][tT]" } } }, "named": false, "value": "exit" }, { "type": "FIELD", "name": "loop_name", "content": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_name" }, { "type": "BLANK" } ] } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][eE][nN]" } } }, "named": false, "value": "when" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "goto_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[gG][oO][tT][oO]" } } }, "named": false, "value": "goto" }, { "type": "FIELD", "name": "label_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "STRING", "value": ";" } ] }, "_delay_statement": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "delay_until_statement" }, { "type": "SYMBOL", "name": "delay_relative_statement" } ] }, "delay_until_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][aA][yY]" } } }, "named": false, "value": "delay" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[uU][nN][tT][iI][lL]" } } }, "named": false, "value": "until" }, { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": ";" } ] }, "delay_relative_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][eE][lL][aA][yY]" } } }, "named": false, "value": "delay" }, { "type": "SYMBOL", "name": "expression" }, { "type": "STRING", "value": ";" } ] }, "simple_return_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][tT][uU][rR][nN]" } } }, "named": false, "value": "return" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "expression" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "extended_return_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][tT][uU][rR][nN]" } } }, "named": false, "value": "return" }, { "type": "SYMBOL", "name": "extended_return_object_declaration" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[dD][oO]" } } }, "named": false, "value": "do" }, { "type": "SYMBOL", "name": "handled_sequence_of_statements" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][eE][tT][uU][rR][nN]" } } }, "named": false, "value": "return" } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "extended_return_object_declaration": { "type": "SEQ", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "STRING", "value": ":" }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][lL][iI][aA][sS][eE][dD]" } } }, "named": false, "value": "aliased" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][oO][nN][sS][tT][aA][nN][tT]" } } }, "named": false, "value": "constant" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_return_subtype_indication" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_assign_value" }, { "type": "BLANK" } ] } ] }, "_return_subtype_indication": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "SYMBOL", "name": "access_definition" } ] }, "procedure_call_statement": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name_not_function_call" } }, { "type": "STRING", "value": ";" } ] }, { "type": "SEQ", "members": [ { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SYMBOL", "name": "actual_parameter_part" }, { "type": "STRING", "value": ";" } ] } ] }, "function_call": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SYMBOL", "name": "actual_parameter_part" } ] }, "raise_statement": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[rR][aA][iI][sS][eE]" } } }, "named": false, "value": "raise" }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "FIELD", "name": "name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][iI][tT][hH]" } } }, "named": false, "value": "with" }, { "type": "SYMBOL", "name": "expression" } ] }, { "type": "BLANK" } ] } ] }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "loop_statement": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "loop_label" }, { "type": "BLANK" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "iteration_scheme" }, { "type": "BLANK" } ] }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][oO][oO][pP]" } } }, "named": false, "value": "loop" }, { "type": "FIELD", "name": "statements", "content": { "type": "SYMBOL", "name": "_sequence_of_statements" } }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[lL][oO][oO][pP]" } } }, "named": false, "value": "loop" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "identifier" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "iteration_scheme": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][iI][lL][eE]" } } }, "named": false, "value": "while" }, { "type": "FIELD", "name": "condition", "content": { "type": "SYMBOL", "name": "expression" } } ] }, { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[fF][oO][rR]" } } }, "named": false, "value": "for" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "loop_parameter_specification" }, { "type": "SYMBOL", "name": "iterator_specification" } ] } ] } ] }, "assignment_statement": { "type": "SEQ", "members": [ { "type": "FIELD", "name": "variable_name", "content": { "type": "SYMBOL", "name": "_name" } }, { "type": "SYMBOL", "name": "_assign_value" }, { "type": "STRING", "value": ";" } ] }, "subprogram_declaration": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "overriding_indicator" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "_subprogram_specification" }, { "type": "FIELD", "name": "is_abstract", "content": { "type": "CHOICE", "members": [ { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[aA][bB][sS][tT][rR][aA][cC][tT]" } } }, "named": false, "value": "abstract" } ] }, { "type": "BLANK" } ] } }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "expression_function_declaration": { "type": "SEQ", "members": [ { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "overriding_indicator" }, { "type": "BLANK" } ] }, { "type": "SYMBOL", "name": "function_specification" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "_aggregate" }, { "type": "SYMBOL", "name": "_parenthesized_expression" } ] }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "_subprogram_specification": { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "procedure_specification" }, { "type": "SYMBOL", "name": "function_specification" } ] }, "subtype_declaration": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[sS][uU][bB][tT][yY][pP][eE]" } } }, "named": false, "value": "subtype" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "SYMBOL", "name": "_subtype_indication" }, { "type": "CHOICE", "members": [ { "type": "SYMBOL", "name": "aspect_specification" }, { "type": "BLANK" } ] }, { "type": "STRING", "value": ";" } ] }, "variant_part": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][aA][sS][eE]" } } }, "named": false, "value": "case" }, { "type": "SYMBOL", "name": "identifier" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[iI][sS]" } } }, "named": false, "value": "is" }, { "type": "SYMBOL", "name": "variant_list" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[eE][nN][dD]" } } }, "named": false, "value": "end" }, { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[cC][aA][sS][eE]" } } }, "named": false, "value": "case" }, { "type": "STRING", "value": ";" } ] }, "variant_list": { "type": "REPEAT1", "content": { "type": "SYMBOL", "name": "variant" } }, "variant": { "type": "SEQ", "members": [ { "type": "ALIAS", "content": { "type": "TOKEN", "content": { "type": "PREC", "value": 2, "content": { "type": "PATTERN", "value": "[wW][hH][eE][nN]" } } }, "named": false, "value": "when" }, { "type": "SYMBOL", "name": "discrete_choice_list" }, { "type": "STRING", "value": "=>" }, { "type": "SYMBOL", "name": "component_list" } ] } }, "extras": [ { "type": "PATTERN", "value": "\\s|\\\\\\r?\\n" }, { "type": "SYMBOL", "name": "comment" } ], "conflicts": [ [ "null_procedure_declaration", "_subprogram_specification" ], [ "expression_function_declaration", "_subprogram_specification" ], [ "at_clause", "_name" ], [ "_name", "component_choice_list" ], [ "slice", "_discrete_range" ], [ "record_component_association_list", "positional_array_aggregate" ], [ "value_sequence", "array_component_association" ], [ "generic_instantiation", "procedure_specification" ], [ "_defining_identifier_list", "object_renaming_declaration", "exception_renaming_declaration" ], [ "_defining_identifier_list", "object_renaming_declaration" ], [ "_defining_identifier_list", "object_renaming_declaration", "loop_label", "exception_renaming_declaration" ], [ "_defining_identifier_list", "_name" ], [ "generic_formal_part", "generic_renaming_declaration" ], [ "derived_type_definition" ], [ "iterator_specification", "_subtype_indication" ], [ "full_type_declaration", "_discriminant_part" ], [ "private_extension_declaration", "derived_type_definition" ], [ "formal_derived_type_definition" ], [ "function_call", "procedure_call_statement" ], [ "_name", "_aspect_mark" ], [ "_name", "package_body_stub" ], [ "_name", "_subtype_indication" ], [ "_name", "_subtype_indication", "component_choice_list" ], [ "attribute_definition_clause", "_attribute_reference" ], [ "component_choice_list", "discrete_choice" ], [ "component_choice_list", "positional_array_aggregate" ], [ "discriminant_association", "_parenthesized_expression" ] ], "precedences": [], "externals": [], "inline": [ "_name_not_function_call", "_name_for_component_choice" ], "supertypes": [] }