difftastic/vendored_parsers/tree-sitter-vhdl/src/grammar.json

19948 lines
454 KiB
JSON

{
"name": "vhdl",
"word": "basic_identifier",
"rules": {
"design_file": {
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_declaration"
},
{
"type": "SYMBOL",
"name": "_sequential_statement"
},
{
"type": "SYMBOL",
"name": "_concurrent_statement"
},
{
"type": "SYMBOL",
"name": "design_unit"
}
]
}
},
"entity_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][nN][tT][iI][tT][yY]"
}
}
},
"named": false,
"value": "entity"
},
{
"type": "FIELD",
"name": "name",
"content": {
"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": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "entity_header"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "concurrent_statement_part"
},
{
"type": "BLANK"
}
]
}
]
},
{
"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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][nN][tT][iI][tT][yY]"
}
}
},
"named": false,
"value": "entity"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_entity_name": {
"type": "FIELD",
"name": "entity",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
},
"architecture_body": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][rR][cC][hH][iI][tT][eE][cC][tT][uU][rR][eE]"
}
}
},
"named": false,
"value": "architecture"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][fF]"
}
}
},
"named": false,
"value": "of"
},
{
"type": "SYMBOL",
"name": "_entity_name"
},
{
"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": "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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "concurrent_statement_part"
},
{
"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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][rR][cC][hH][iI][tT][eE][cC][tT][uU][rR][eE]"
}
}
},
"named": false,
"value": "architecture"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"configuration_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][nN][fF][iI][gG][uU][rR][aA][tT][iI][oO][nN]"
}
}
},
"named": false,
"value": "configuration"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][fF]"
}
}
},
"named": false,
"value": "of"
},
{
"type": "SYMBOL",
"name": "_entity_name"
},
{
"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": "declarative_part"
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "verification_unit_binding_indication"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "block_configuration"
},
{
"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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][nN][fF][iI][gG][uU][rR][aA][tT][iI][oO][nN]"
}
}
},
"named": false,
"value": "configuration"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"block_configuration": {
"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": "_block_specification"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "use_clause"
}
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_configuration_item"
}
},
{
"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": "[fF][oO][rR]"
}
}
},
"named": false,
"value": "for"
},
{
"type": "STRING",
"value": ";"
}
]
},
"_block_specification": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "pathname_element"
},
"named": true,
"value": "block_specification"
},
"generate_statement_element": {
"type": "PREC",
"value": "generate_statement_element",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "label",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_generate_specification"
},
{
"type": "STRING",
"value": ")"
}
]
}
},
"_generate_specification": {
"type": "FIELD",
"name": "specification",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_expression"
},
{
"type": "SYMBOL",
"name": "_range"
},
{
"type": "SYMBOL",
"name": "_name_or_label"
}
]
}
},
"_configuration_item": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "block_configuration"
},
{
"type": "SYMBOL",
"name": "component_configuration"
}
]
},
"component_configuration": {
"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": "_component_specification"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "binding_indication"
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "verification_unit_binding_indication"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "block_configuration"
},
{
"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": "[fF][oO][rR]"
}
}
},
"named": false,
"value": "for"
},
{
"type": "STRING",
"value": ";"
}
]
},
"_subprogram_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "procedure_declaration"
},
{
"type": "SYMBOL",
"name": "function_declaration"
}
]
},
"procedure_declaration": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_procedure_specification"
},
{
"type": "STRING",
"value": ";"
}
]
},
"function_declaration": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_function_specification"
},
{
"type": "STRING",
"value": ";"
}
]
},
"_procedure_specification": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "pure"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][mM][pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "impure"
}
]
},
{
"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": "SYMBOL",
"name": "_designator"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "subprogram_header"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "procedure_parameter_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "return"
},
{
"type": "BLANK"
}
]
}
]
},
"_function_specification": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "pure"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][mM][pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "impure"
}
]
},
{
"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": "_designator"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "subprogram_header"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "function_parameter_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "return"
},
{
"type": "BLANK"
}
]
}
]
},
"return": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "BLANK"
}
]
},
{
"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": "type_mark"
}
]
},
"_end_designator": {
"type": "FIELD",
"name": "at_end",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "SYMBOL",
"name": "_operator_symbol"
}
]
}
},
"_designator": {
"type": "FIELD",
"name": "designator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_identifier"
},
{
"type": "SYMBOL",
"name": "_operator_symbol"
}
]
}
},
"procedure_parameter_clause": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][aA][rR][aA][mM][eE][tT][eE][rR]"
}
}
},
"named": false,
"value": "parameter"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "("
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_procedure_parameter_list"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
"function_parameter_clause": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][aA][rR][aA][mM][eE][tT][eE][rR]"
}
}
},
"named": false,
"value": "parameter"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "("
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_function_parameter_list"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
"_subprogram_body": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "procedure_body"
},
{
"type": "SYMBOL",
"name": "function_body"
}
]
},
"procedure_body": {
"type": "SEQ",
"members": [
{
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "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": "CHOICE",
"members": [
{
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subprogram_kind"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_designator"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"function_body": {
"type": "SEQ",
"members": [
{
"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": "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": "CHOICE",
"members": [
{
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subprogram_kind"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_designator"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_subprogram_kind": {
"type": "FIELD",
"name": "at_end",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "pure"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][mM][pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "impure"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"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": "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"
}
]
}
]
}
},
"_subprogram_instantiation_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "procedure_instantiation_declaration"
},
{
"type": "SYMBOL",
"name": "function_instantiation_declaration"
}
]
},
"procedure_instantiation_declaration": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "pure"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][mM][pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "impure"
}
]
},
{
"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": "SYMBOL",
"name": "_designator"
},
{
"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": "SYMBOL",
"name": "_uninstantiated_name"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "signature"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "subprogram_map_aspect"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"function_instantiation_declaration": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "pure"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][mM][pP][uU][rR][eE]"
}
}
},
"named": false,
"value": "impure"
}
]
},
{
"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": "_designator"
},
{
"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": "SYMBOL",
"name": "_uninstantiated_name"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "signature"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "subprogram_map_aspect"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_uninstantiated_name": {
"type": "FIELD",
"name": "uninstantiated",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "_simple_name"
}
]
}
},
"signature": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "type_mark"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "type_mark"
}
]
}
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "return"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "]"
}
]
},
"package_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": "_identifier"
}
},
{
"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": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "package_header"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "declarative_part"
},
{
"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": "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": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_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": "SYMBOL",
"name": "_package_name"
},
{
"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": "declarative_part"
},
{
"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": "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": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_package_name": {
"type": "FIELD",
"name": "package",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
"package_instantiation_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": "_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": "SYMBOL",
"name": "_uninstantiated_name"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "package_map_aspect"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_scalar_type_definition": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "enumeration_type_definition"
},
{
"type": "SYMBOL",
"name": "_numeric_type_definition"
},
{
"type": "SYMBOL",
"name": "physical_type_definition"
}
]
},
"_numeric_type_definition": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "range_constraint"
},
"named": true,
"value": "numeric_type_definition"
},
"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"
}
]
},
"_range": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "ascending_range"
},
{
"type": "SYMBOL",
"name": "descending_range"
},
{
"type": "SYMBOL",
"name": "_range_attribute_name"
}
]
},
"_range_attribute_name": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "range_attribute_name"
},
"named": true,
"value": "attribute_name"
},
"range_attribute_name": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "prefix",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "ambiguous_name"
},
{
"type": "SYMBOL",
"name": "attribute_name"
},
{
"type": "SYMBOL",
"name": "_external_object_name"
}
]
}
},
{
"type": "SYMBOL",
"name": "_range_attribute_designator"
}
]
},
"ascending_range": {
"type": "PREC",
"value": "range",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "low",
"content": {
"type": "SYMBOL",
"name": "_simple_expression"
}
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[tT][oO]"
}
}
},
"named": false,
"value": "to"
},
{
"type": "FIELD",
"name": "high",
"content": {
"type": "SYMBOL",
"name": "_simple_expression"
}
}
]
}
},
"descending_range": {
"type": "PREC",
"value": "range",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "high",
"content": {
"type": "SYMBOL",
"name": "_simple_expression"
}
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][oO][wW][nN][tT][oO]"
}
}
},
"named": false,
"value": "downto"
},
{
"type": "FIELD",
"name": "low",
"content": {
"type": "SYMBOL",
"name": "_simple_expression"
}
}
]
}
},
"enumeration_type_definition": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_enumeration_literal"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_enumeration_literal"
}
]
}
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
"_enumeration_literal": {
"type": "FIELD",
"name": "literal",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "character_literal"
},
{
"type": "SYMBOL",
"name": "_identifier"
}
]
}
},
"physical_type_definition": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "range_constraint"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[uU][nN][iI][tT][sS]"
}
}
},
"named": false,
"value": "units"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "primary_unit_declaration"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "secondary_unit_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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[uU][nN][iI][tT][sS]"
}
}
},
"named": false,
"value": "units"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
}
]
},
"primary_unit_declaration": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "STRING",
"value": ";"
}
]
},
"secondary_unit_declaration": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "STRING",
"value": "="
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "physical_literal"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_physical_literal"
},
"named": true,
"value": "physical_literal"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_physical_literal": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_unit"
}
]
},
"physical_literal": {
"type": "PREC",
"value": "physical_literal",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_abstract_literal"
},
{
"type": "SYMBOL",
"name": "_unit"
}
]
}
},
"_unit": {
"type": "FIELD",
"name": "unit",
"content": {
"type": "PREC",
"value": "physical_literal",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
}
},
"_composite_type_definition": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_array_type_definition"
},
{
"type": "SYMBOL",
"name": "record_type_definition"
}
]
},
"_array_type_definition": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "unbounded_array_definition"
},
{
"type": "SYMBOL",
"name": "constrained_array_definition"
}
]
},
"unbounded_array_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": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "index_subtype_definition"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "index_subtype_definition"
}
]
}
}
]
},
{
"type": "STRING",
"value": ")"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][fF]"
}
}
},
"named": false,
"value": "of"
},
{
"type": "FIELD",
"name": "element",
"content": {
"type": "SYMBOL",
"name": "subtype_indication"
}
}
]
},
"constrained_array_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": "SYMBOL",
"name": "index_constraint"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][fF]"
}
}
},
"named": false,
"value": "of"
},
{
"type": "FIELD",
"name": "element",
"content": {
"type": "SYMBOL",
"name": "subtype_indication"
}
}
]
},
"index_subtype_definition": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "type_mark"
},
{
"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": "_any"
}
]
},
"array_constraint": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "index_constraint"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_array_element_constraint"
},
{
"type": "BLANK"
}
]
}
]
},
"_array_element_constraint": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_element_constraint"
},
"named": true,
"value": "array_element_constraint"
},
"index_constraint": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_discrete_range"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_discrete_range"
}
]
}
}
]
},
{
"type": "PREC_DYNAMIC",
"value": 99,
"content": {
"type": "SYMBOL",
"name": "open"
}
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
"_discrete_range": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "SYMBOL",
"name": "_range"
}
]
},
"open": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][pP][eE][nN]"
}
}
},
"named": false,
"value": "open"
},
"record_type_definition": {
"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": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "element_declaration"
}
},
{
"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": "_end_simple_name"
},
{
"type": "BLANK"
}
]
}
]
},
"element_declaration": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "STRING",
"value": ";"
}
]
},
"record_constraint": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "record_element_constraint"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "record_element_constraint"
}
]
}
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
"record_element_constraint": {
"type": "PREC",
"value": "record_element_constraint",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "element",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "SYMBOL",
"name": "_element_constraint"
}
]
}
},
"identifier_list": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_identifier"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_identifier"
}
]
}
}
]
},
"access_type_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": "SYMBOL",
"name": "subtype_indication"
}
]
},
"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": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "STRING",
"value": ";"
}
]
},
"file_type_definition": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][iI][lL][eE]"
}
}
},
"named": false,
"value": "file"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][fF]"
}
}
},
"named": false,
"value": "of"
},
{
"type": "SYMBOL",
"name": "type_mark"
}
]
},
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "declarative_part"
},
{
"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": "[pP][rR][oO][tT][eE][cC][tT][eE][dD]"
}
}
},
"named": false,
"value": "protected"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
}
]
},
"protected_type_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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "declarative_part"
},
{
"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": "[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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
}
]
},
"declarative_part": {
"type": "PREC_LEFT",
"value": 0,
"content": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_declaration"
}
}
},
"_declaration": {
"type": "PREC",
"value": "declaration",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subprogram_declaration"
},
{
"type": "SYMBOL",
"name": "_subprogram_body"
},
{
"type": "SYMBOL",
"name": "_subprogram_instantiation_declaration"
},
{
"type": "SYMBOL",
"name": "package_declaration"
},
{
"type": "SYMBOL",
"name": "package_body"
},
{
"type": "SYMBOL",
"name": "package_instantiation_declaration"
},
{
"type": "SYMBOL",
"name": "_type_declaration"
},
{
"type": "SYMBOL",
"name": "subtype_declaration"
},
{
"type": "SYMBOL",
"name": "_object_declaration"
},
{
"type": "SYMBOL",
"name": "alias_declaration"
},
{
"type": "SYMBOL",
"name": "component_declaration"
},
{
"type": "SYMBOL",
"name": "attribute_declaration"
},
{
"type": "SYMBOL",
"name": "attribute_specification"
},
{
"type": "SYMBOL",
"name": "configuration_specification"
},
{
"type": "SYMBOL",
"name": "disconnection_specification"
},
{
"type": "SYMBOL",
"name": "use_clause"
},
{
"type": "SYMBOL",
"name": "group_template_declaration"
},
{
"type": "SYMBOL",
"name": "group_declaration"
},
{
"type": "SYMBOL",
"name": "_PSL_Directive"
},
{
"type": "SYMBOL",
"name": "_PSL_Declaration"
}
]
}
},
"_type_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "full_type_declaration"
},
{
"type": "SYMBOL",
"name": "incomplete_type_declaration"
}
]
},
"full_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": "FIELD",
"name": "name",
"content": {
"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": "_type_definition"
},
{
"type": "STRING",
"value": ";"
}
]
},
"_type_definition": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_scalar_type_definition"
},
{
"type": "SYMBOL",
"name": "_composite_type_definition"
},
{
"type": "SYMBOL",
"name": "access_type_definition"
},
{
"type": "SYMBOL",
"name": "file_type_definition"
},
{
"type": "SYMBOL",
"name": "protected_type_declaration"
},
{
"type": "SYMBOL",
"name": "protected_type_body"
}
]
},
"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": "FIELD",
"name": "name",
"content": {
"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": "STRING",
"value": ";"
}
]
},
"subtype_indication": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_resolution_indication"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "type_mark"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_constraint"
},
{
"type": "BLANK"
}
]
}
]
},
"_resolution_indication": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "resolution_function"
},
{
"type": "SYMBOL",
"name": "record_resolution"
},
{
"type": "SYMBOL",
"name": "parenthesized_resolution"
}
]
},
"resolution_function": {
"type": "PREC",
"value": "resolution_function",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
},
"parenthesized_resolution": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_resolution_indication"
},
{
"type": "STRING",
"value": ")"
}
]
},
"record_resolution": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "record_element_resolution"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "record_element_resolution"
}
]
}
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
"record_element_resolution": {
"type": "PREC",
"value": "record_element_resolution",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "element",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "SYMBOL",
"name": "_resolution_indication"
}
]
}
},
"type_mark": {
"type": "PREC",
"value": "type_mark",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "attribute_name"
}
]
}
},
"_constraint": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "range_constraint"
},
{
"type": "SYMBOL",
"name": "array_constraint"
},
{
"type": "SYMBOL",
"name": "record_constraint"
}
]
},
"_element_constraint": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "array_constraint"
},
{
"type": "SYMBOL",
"name": "record_constraint"
}
]
},
"_object_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "constant_declaration"
},
{
"type": "SYMBOL",
"name": "signal_declaration"
},
{
"type": "SYMBOL",
"name": "variable_declaration"
},
{
"type": "SYMBOL",
"name": "shared_variable_declaration"
},
{
"type": "SYMBOL",
"name": "file_declaration"
}
]
},
"constant_declaration": {
"type": "SEQ",
"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": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "default_expression"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"signal_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][iI][gG][nN][aA][lL]"
}
}
},
"named": false,
"value": "signal"
},
{
"type": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "signal_kind"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "default_expression"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"signal_kind": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][eE][gG][iI][sS][tT][eE][rR]"
}
}
},
"named": false,
"value": "register"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][uU][sS]"
}
}
},
"named": false,
"value": "bus"
}
]
},
"variable_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][aA][rR][iI][aA][bB][lL][eE]"
}
}
},
"named": false,
"value": "variable"
},
{
"type": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "default_expression"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"shared_variable_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][hH][aA][rR][eE][dD]"
}
}
},
"named": false,
"value": "shared"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][aA][rR][iI][aA][bB][lL][eE]"
}
}
},
"named": false,
"value": "variable"
},
{
"type": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "default_expression"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"file_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][iI][lL][eE]"
}
}
},
"named": false,
"value": "file"
},
{
"type": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "file_open_information"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"file_open_information": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][pP][eE][nN]"
}
}
},
"named": false,
"value": "open"
},
{
"type": "SYMBOL",
"name": "_file_open_kind"
}
]
},
{
"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": "_file_logical_name"
}
]
},
"_file_logical_name": {
"type": "SYMBOL",
"name": "_string_expression"
},
"_generic_interface_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "constant_interface_declaration"
},
{
"type": "SYMBOL",
"name": "type_interface_declaration"
},
{
"type": "SYMBOL",
"name": "_subprogram_interface_declaration"
},
{
"type": "SYMBOL",
"name": "package_interface_declaration"
},
{
"type": "SYMBOL",
"name": "_illegal_interface_declaration"
}
]
},
"_port_interface_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "signal_interface_declaration"
},
{
"type": "SYMBOL",
"name": "_illegal_interface_declaration"
}
]
},
"_procedure_interface_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "constant_interface_declaration"
},
{
"type": "SYMBOL",
"name": "signal_interface_declaration"
},
{
"type": "SYMBOL",
"name": "variable_interface_declaration"
},
{
"type": "SYMBOL",
"name": "file_interface_declaration"
},
{
"type": "SYMBOL",
"name": "_illegal_interface_declaration"
}
]
},
"_function_interface_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "constant_interface_declaration"
},
{
"type": "SYMBOL",
"name": "signal_interface_declaration"
},
{
"type": "SYMBOL",
"name": "file_interface_declaration"
},
{
"type": "SYMBOL",
"name": "_illegal_interface_declaration"
}
]
},
"constant_interface_declaration": {
"type": "PREC_DYNAMIC",
"value": 3,
"content": {
"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": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_constant_mode"
},
"named": true,
"value": "mode"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "default_expression"
},
{
"type": "BLANK"
}
]
}
]
}
},
"signal_interface_declaration": {
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][iI][gG][nN][aA][lL]"
}
}
},
"named": false,
"value": "signal"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_signal_mode"
},
"named": true,
"value": "mode"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "signal_kind"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "default_expression"
},
{
"type": "BLANK"
}
]
}
]
}
},
"variable_interface_declaration": {
"type": "PREC_DYNAMIC",
"value": 2,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][aA][rR][iI][aA][bB][lL][eE]"
}
}
},
"named": false,
"value": "variable"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_variable_mode"
},
"named": true,
"value": "mode"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "default_expression"
},
{
"type": "BLANK"
}
]
}
]
}
},
"file_interface_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][iI][lL][eE]"
}
}
},
"named": false,
"value": "file"
},
{
"type": "SYMBOL",
"name": "identifier_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_signal_mode"
},
"named": true,
"value": "mode"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "default_expression"
},
{
"type": "BLANK"
}
]
}
]
},
"_in": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][nN]"
}
}
},
"named": false,
"value": "in"
},
"_out": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][uU][tT]"
}
}
},
"named": false,
"value": "out"
},
"_inout": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][nN][oO][uU][tT]"
}
}
},
"named": false,
"value": "inout"
},
"_buffer": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][uU][fF][fF][eE][rR]"
}
}
},
"named": false,
"value": "buffer"
},
"_linkage": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][iI][nN][kK][aA][gG][eE]"
}
}
},
"named": false,
"value": "linkage"
},
"_constant_mode": {
"type": "CHOICE",
"members": [
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_in"
}
},
{
"type": "PREC_DYNAMIC",
"value": -3,
"content": {
"type": "SYMBOL",
"name": "_out"
}
},
{
"type": "PREC_DYNAMIC",
"value": -3,
"content": {
"type": "SYMBOL",
"name": "_inout"
}
},
{
"type": "PREC_DYNAMIC",
"value": -3,
"content": {
"type": "SYMBOL",
"name": "_buffer"
}
},
{
"type": "PREC_DYNAMIC",
"value": -3,
"content": {
"type": "SYMBOL",
"name": "_linkage"
}
}
]
},
"_variable_mode": {
"type": "CHOICE",
"members": [
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_in"
}
},
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_out"
}
},
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_inout"
}
},
{
"type": "PREC_DYNAMIC",
"value": -2,
"content": {
"type": "SYMBOL",
"name": "_buffer"
}
},
{
"type": "PREC_DYNAMIC",
"value": -2,
"content": {
"type": "SYMBOL",
"name": "_linkage"
}
}
]
},
"_signal_mode": {
"type": "CHOICE",
"members": [
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_in"
}
},
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_out"
}
},
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_inout"
}
},
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_buffer"
}
},
{
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_linkage"
}
}
]
},
"_illegal_interface_declaration": {
"type": "PREC_DYNAMIC",
"value": -3,
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "constant_interface_declaration"
},
{
"type": "SYMBOL",
"name": "signal_interface_declaration"
},
{
"type": "SYMBOL",
"name": "variable_interface_declaration"
},
{
"type": "SYMBOL",
"name": "file_interface_declaration"
},
{
"type": "SYMBOL",
"name": "type_interface_declaration"
},
{
"type": "SYMBOL",
"name": "_subprogram_interface_declaration"
},
{
"type": "SYMBOL",
"name": "package_interface_declaration"
}
]
}
},
"type_interface_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": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
}
]
},
"_subprogram_interface_declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "procedure_interface_declaration"
},
{
"type": "SYMBOL",
"name": "function_interface_declaration"
}
]
},
"procedure_interface_declaration": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_procedure_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": "interface_subprogram_default"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"function_interface_declaration": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_function_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": "interface_subprogram_default"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"interface_subprogram_default": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "_operator_symbol"
},
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "<>"
},
"named": true,
"value": "same"
}
]
},
"package_interface_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": "_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": "SYMBOL",
"name": "_uninstantiated_name"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "package_map_aspect"
},
{
"type": "BLANK"
}
]
}
]
},
"_generic_interface_list": {
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_generic_interface_declaration"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "SYMBOL",
"name": "_generic_interface_declaration"
}
]
}
}
]
}
]
},
"_port_interface_list": {
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_port_interface_declaration"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "SYMBOL",
"name": "_port_interface_declaration"
}
]
}
}
]
}
]
},
"_procedure_parameter_list": {
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_procedure_interface_declaration"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "SYMBOL",
"name": "_procedure_interface_declaration"
}
]
}
}
]
}
]
},
"_function_parameter_list": {
"type": "SEQ",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_function_interface_declaration"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "SYMBOL",
"name": "_function_interface_declaration"
}
]
}
}
]
}
]
},
"generic_clause": {
"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": "STRING",
"value": "("
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_generic_interface_list"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ")"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_semicolon"
},
{
"type": "BLANK"
}
]
}
]
},
"_semicolon": {
"type": "ALIAS",
"content": {
"type": "STRING",
"value": ";"
},
"named": true,
"value": "semicolon"
},
"port_clause": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][oO][rR][tT]"
}
}
},
"named": false,
"value": "port"
},
{
"type": "STRING",
"value": "("
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_port_interface_list"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ")"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_semicolon"
},
{
"type": "BLANK"
}
]
}
]
},
"association_list": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_association_element"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_association_element"
}
]
}
}
]
},
"_association_element": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "positional_association_element"
},
{
"type": "SYMBOL",
"name": "named_association_element"
}
]
},
"positional_association_element": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_actual_part"
}
]
},
"named_association_element": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_formal_part"
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "=>"
}
}
},
{
"type": "SYMBOL",
"name": "_actual_part"
}
]
},
"_formal_part": {
"type": "FIELD",
"name": "formal_part",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_name"
},
{
"type": "SYMBOL",
"name": "others"
}
]
}
},
"_actual_part": {
"type": "FIELD",
"name": "actual_part",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_expression"
},
{
"type": "SYMBOL",
"name": "inertial_expression"
},
{
"type": "PREC_DYNAMIC",
"value": -1,
"content": {
"type": "SYMBOL",
"name": "subtype_indication"
}
},
{
"type": "PREC_DYNAMIC",
"value": 99,
"content": {
"type": "SYMBOL",
"name": "open"
}
},
{
"type": "PREC_DYNAMIC",
"value": 2,
"content": {
"type": "SYMBOL",
"name": "character_literal"
}
},
{
"type": "PREC_DYNAMIC",
"value": 2,
"content": {
"type": "SYMBOL",
"name": "string_literal"
}
}
]
}
},
"generic_map_aspect": {
"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": "[mM][aA][pP]"
}
}
},
"named": false,
"value": "map"
},
{
"type": "STRING",
"value": "("
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "association_list"
},
{
"type": "SYMBOL",
"name": "default"
},
{
"type": "SYMBOL",
"name": "_any"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ")"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_semicolon"
},
{
"type": "BLANK"
}
]
}
]
},
"default": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][eE][fF][aA][uU][lL][tT]"
}
}
},
"named": false,
"value": "default"
},
"_any": {
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "<>"
},
"named": true,
"value": "any"
},
"port_map_aspect": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][oO][rR][tT]"
}
}
},
"named": false,
"value": "port"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[mM][aA][pP]"
}
}
},
"named": false,
"value": "map"
},
{
"type": "STRING",
"value": "("
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "association_list"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ")"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_semicolon"
},
{
"type": "BLANK"
}
]
}
]
},
"_header": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_clause"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_clause"
},
{
"type": "BLANK"
}
]
}
]
},
"_clause": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "generic_clause"
},
{
"type": "SYMBOL",
"name": "generic_map_aspect"
},
{
"type": "SYMBOL",
"name": "port_clause"
},
{
"type": "SYMBOL",
"name": "port_map_aspect"
}
]
},
"alias_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][lL][iI][aA][sS]"
}
}
},
"named": false,
"value": "alias"
},
{
"type": "SYMBOL",
"name": "_alias_designator"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
}
]
},
{
"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": "_alias_denotator"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "signature"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_alias_designator": {
"type": "FIELD",
"name": "designator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_identifier"
},
{
"type": "SYMBOL",
"name": "character_literal"
},
{
"type": "SYMBOL",
"name": "_operator_symbol"
}
]
}
},
"_alias_denotator": {
"type": "FIELD",
"name": "denotator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "character_literal"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "ambiguous_name"
},
{
"type": "SYMBOL",
"name": "slice_name"
},
{
"type": "SYMBOL",
"name": "attribute_name"
},
{
"type": "SYMBOL",
"name": "_external_object_name"
}
]
}
},
"_operator_symbol": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "string_literal"
},
"named": true,
"value": "operator_symbol"
},
"attribute_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][tT][tT][rR][iI][bB][uU][tT][eE]"
}
}
},
"named": false,
"value": "attribute"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "type_mark"
},
{
"type": "STRING",
"value": ";"
}
]
},
"component_declaration": {
"type": "PREC",
"value": "component_declaration",
"content": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][mM][pP][oO][nN][eE][nN][tT]"
}
}
},
"named": false,
"value": "component"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][sS]"
}
}
},
"named": false,
"value": "is"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "component_header"
},
{
"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": "[cC][oO][mM][pP][oO][nN][eE][nN][tT]"
}
}
},
"named": false,
"value": "component"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
}
},
"group_template_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][rR][oO][uU][pP]"
}
}
},
"named": false,
"value": "group"
},
{
"type": "FIELD",
"name": "name",
"content": {
"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": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "entity_class_entry_list"
},
{
"type": "STRING",
"value": ")"
},
{
"type": "STRING",
"value": ";"
}
]
},
"entity_class_entry_list": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "entity_class_entry"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "entity_class_entry"
}
]
}
}
]
},
"entity_class_entry": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "entity_class"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_any"
},
{
"type": "BLANK"
}
]
}
]
},
"group_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][rR][oO][uU][pP]"
}
}
},
"named": false,
"value": "group"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "_group_template"
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "group_constituent_list"
},
{
"type": "STRING",
"value": ")"
},
{
"type": "STRING",
"value": ";"
}
]
},
"group_constituent_list": {
"type": "PREC",
"value": "group_constituent_list",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_group_constituent"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_group_constituent"
}
]
}
}
]
}
},
"_group_constituent": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "character_literal"
}
]
},
"_group_template": {
"type": "FIELD",
"name": "template",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
},
"attribute_specification": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][tT][tT][rR][iI][bB][uU][tT][eE]"
}
}
},
"named": false,
"value": "attribute"
},
{
"type": "FIELD",
"name": "name",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][fF]"
}
}
},
"named": false,
"value": "of"
},
{
"type": "SYMBOL",
"name": "entity_specification"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][sS]"
}
}
},
"named": false,
"value": "is"
},
{
"type": "SYMBOL",
"name": "_expression"
},
{
"type": "STRING",
"value": ";"
}
]
},
"entity_name_list": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "entity_designator"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "entity_designator"
}
]
}
}
]
},
{
"type": "SYMBOL",
"name": "others"
},
{
"type": "SYMBOL",
"name": "all"
}
]
},
"entity_specification": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "entity_name_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "entity_class"
}
]
},
"entity_class": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][nN][tT][iI][tT][yY]"
}
}
},
"named": false,
"value": "entity"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][rR][cC][hH][iI][tT][eE][cC][tT][uU][rR][eE]"
}
}
},
"named": false,
"value": "architecture"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][nN][fF][iI][gG][uU][rR][aA][tT][iI][oO][nN]"
}
}
},
"named": false,
"value": "configuration"
},
{
"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": "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": "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": "[tT][yY][pP][eE]"
}
}
},
"named": false,
"value": "type"
},
{
"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": "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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][iI][gG][nN][aA][lL]"
}
}
},
"named": false,
"value": "signal"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][aA][rR][iI][aA][bB][lL][eE]"
}
}
},
"named": false,
"value": "variable"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][mM][pP][oO][nN][eE][nN][tT]"
}
}
},
"named": false,
"value": "component"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][aA][bB][eE][lL]"
}
}
},
"named": false,
"value": "label"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][iI][tT][eE][rR][aA][lL]"
}
}
},
"named": false,
"value": "literal"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[uU][nN][iI][tT][sS]"
}
}
},
"named": false,
"value": "units"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][rR][oO][uU][pP]"
}
}
},
"named": false,
"value": "group"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][iI][lL][eE]"
}
}
},
"named": false,
"value": "file"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][rR][oO][pP][eE][rR][tT][yY]"
}
}
},
"named": false,
"value": "property"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][eE][qQ][uU][eE][nN][cC][eE]"
}
}
},
"named": false,
"value": "sequence"
}
]
},
"entity_designator": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_entity_tag"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "signature"
},
{
"type": "BLANK"
}
]
}
]
},
"_entity_tag": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "character_literal"
},
{
"type": "SYMBOL",
"name": "_operator_symbol"
}
]
},
"configuration_specification": {
"type": "PREC_RIGHT",
"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": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_component_specification"
},
{
"type": "SYMBOL",
"name": "binding_indication"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "verification_unit_binding_indication"
}
},
{
"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": "[fF][oO][rR]"
}
}
},
"named": false,
"value": "for"
},
{
"type": "STRING",
"value": ";"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "BLANK"
}
]
}
]
}
},
"_component_specification": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "instantiation_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "_component_name"
}
]
},
"instantiation_list": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_simple_name"
}
]
}
}
]
},
{
"type": "SYMBOL",
"name": "others"
},
{
"type": "SYMBOL",
"name": "all"
}
]
},
"all": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][lL][lL]"
}
}
},
"named": false,
"value": "all"
},
"_component_name": {
"type": "FIELD",
"name": "component",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
"binding_indication": {
"type": "SEQ",
"members": [
{
"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": "_entity_aspect"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_header"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_entity_aspect": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "entity_instantiation"
},
{
"type": "SYMBOL",
"name": "configuration_instantiation"
},
{
"type": "SYMBOL",
"name": "component_instantiation"
},
{
"type": "SYMBOL",
"name": "open"
}
]
},
"verification_unit_binding_indication": {
"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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][uU][nN][iI][tT]"
}
}
},
"named": false,
"value": "vunit"
},
{
"type": "SYMBOL",
"name": "verification_unit_list"
},
{
"type": "STRING",
"value": ";"
}
]
},
"verification_unit_list": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
]
}
}
]
},
"disconnection_specification": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][iI][sS][cC][oO][nN][nN][eE][cC][tT]"
}
}
},
"named": false,
"value": "disconnect"
},
{
"type": "SYMBOL",
"name": "guarded_signal_specification"
},
{
"type": "SYMBOL",
"name": "_after"
},
{
"type": "STRING",
"value": ";"
}
]
},
"guarded_signal_specification": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "signal_list"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "type_mark"
}
]
},
"signal_list": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_signal_name"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_signal_name"
}
]
}
}
]
},
{
"type": "SYMBOL",
"name": "others"
},
{
"type": "SYMBOL",
"name": "all"
}
]
},
"_name": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "character_literal"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "ambiguous_name"
},
{
"type": "SYMBOL",
"name": "slice_name"
},
{
"type": "SYMBOL",
"name": "attribute_name"
},
{
"type": "SYMBOL",
"name": "_external_object_name"
}
]
},
"_simple_name": {
"type": "PREC",
"value": "simple_name",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "basic_identifier"
},
"named": true,
"value": "simple_name"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "extended_identifier"
},
"named": true,
"value": "extended_simple_name"
}
]
}
},
"_end_simple_name": {
"type": "FIELD",
"name": "at_end",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
"selected_name": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "prefix",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "ambiguous_name"
},
{
"type": "SYMBOL",
"name": "slice_name"
},
{
"type": "SYMBOL",
"name": "_external_object_name"
}
]
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "."
}
},
{
"type": "FIELD",
"name": "suffix",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "character_literal"
},
{
"type": "SYMBOL",
"name": "_operator_symbol"
},
{
"type": "SYMBOL",
"name": "all"
}
]
}
}
]
},
"ambiguous_name": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "prefix",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "ambiguous_name"
},
{
"type": "SYMBOL",
"name": "function_call"
}
]
}
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "expression_list"
},
{
"type": "STRING",
"value": ")"
}
]
},
"expression_list": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expression"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_expression"
}
]
}
}
]
},
"slice_name": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "prefix",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "ambiguous_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "slice_name"
},
{
"type": "SYMBOL",
"name": "function_call"
}
]
}
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_range"
},
{
"type": "STRING",
"value": ")"
}
]
},
"attribute_name": {
"type": "PREC",
"value": "attribute_name",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "prefix",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "ambiguous_name"
},
{
"type": "SYMBOL",
"name": "attribute_name"
},
{
"type": "SYMBOL",
"name": "function_call"
},
{
"type": "SYMBOL",
"name": "_external_object_name"
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "signature"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_attribute_designator"
},
{
"type": "SYMBOL",
"name": "_predefined_attribute_designator"
},
{
"type": "SYMBOL",
"name": "_predefined_attribute_designator_with_expression"
}
]
}
]
}
},
"_attribute_designator": {
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "STRING",
"value": "'"
}
},
{
"type": "FIELD",
"name": "designator",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
}
]
},
"_predefined_attribute_designator": {
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "STRING",
"value": "'"
}
},
{
"type": "FIELD",
"name": "designator",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_predefined_designator"
},
"named": true,
"value": "predefined_designator"
}
}
]
}
},
"_predefined_attribute_designator_with_expression": {
"type": "PREC_DYNAMIC",
"value": 2,
"content": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "STRING",
"value": "'"
}
},
{
"type": "FIELD",
"name": "designator",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_predefined_designator_with_expression"
},
"named": true,
"value": "predefined_designator"
}
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_expression"
},
{
"type": "STRING",
"value": ")"
}
]
}
}
},
"_range_attribute_designator": {
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "STRING",
"value": "'"
}
},
{
"type": "FIELD",
"name": "designator",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_range_designator"
},
"named": true,
"value": "predefined_designator"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_expression"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"_predefined_designator": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][aA][sS][eE]"
}
}
},
"named": false,
"value": "base"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][eE][fF][tT]"
}
}
},
"named": false,
"value": "left"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][iI][gG][hH][tT]"
}
}
},
"named": false,
"value": "right"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[hH][iI][gG][hH]"
}
}
},
"named": false,
"value": "high"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][oO][wW]"
}
}
},
"named": false,
"value": "low"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][mM][aA][gG][eE]"
}
}
},
"named": false,
"value": "image"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][oO][sS]"
}
}
},
"named": false,
"value": "pos"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][aA][lL]"
}
}
},
"named": false,
"value": "val"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][uU][cC][cC]"
}
}
},
"named": false,
"value": "succ"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][rR][eE][dD]"
}
}
},
"named": false,
"value": "pred"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][eE][fF][tT][oO][fF]"
}
}
},
"named": false,
"value": "leftof"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][iI][gG][hH][tT][oO][fF]"
}
}
},
"named": false,
"value": "rightof"
},
{
"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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][eE][nN][gG][tT][hH]"
}
}
},
"named": false,
"value": "length"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][sS][cC][eE][nN][dD][iI][nN][gG]"
}
}
},
"named": false,
"value": "ascending"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][eE][sS][cC][eE][nN][dD][iI][nN][gG]"
}
}
},
"named": false,
"value": "descending"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][lL][eE][mM][eE][nN][tT]"
}
}
},
"named": false,
"value": "element"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][eE][lL][aA][yY][eE][dD]"
}
}
},
"named": false,
"value": "delayed"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][tT][aA][bB][lL][eE]"
}
}
},
"named": false,
"value": "stable"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[qQ][uU][iI][eE][tT]"
}
}
},
"named": false,
"value": "quiet"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[tT][rR][aA][nN][sS][aA][cC][tT][iI][oO][nN]"
}
}
},
"named": false,
"value": "transaction"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][vV][eE][nN][tT]"
}
}
},
"named": false,
"value": "event"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][cC][tT][iI][vV][eE]"
}
}
},
"named": false,
"value": "active"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][aA][sS][tT][__][eE][vV][eE][nN][tT]"
}
}
},
"named": false,
"value": "last_event"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][aA][sS][tT][__][aA][cC][tT][iI][vV][eE]"
}
}
},
"named": false,
"value": "last_active"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][aA][sS][tT][__][vV][aA][lL][uU][eE]"
}
}
},
"named": false,
"value": "last_value"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][rR][iI][vV][iI][nN][gG]"
}
}
},
"named": false,
"value": "driving"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][rR][iI][vV][iI][nN][gG][__][vV][aA][lL][uU][eE]"
}
}
},
"named": false,
"value": "driving_value"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][iI][mM][pP][lL][eE][__][nN][aA][mM][eE]"
}
}
},
"named": false,
"value": "simple_name"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][nN][sS][tT][aA][nN][cC][eE][__][nN][aA][mM][eE]"
}
}
},
"named": false,
"value": "instance_name"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][aA][tT][hH][__][nN][aA][mM][eE]"
}
}
},
"named": false,
"value": "path_name"
}
]
},
"_predefined_designator_with_expression": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][mM][aA][gG][eE]"
}
}
},
"named": false,
"value": "image"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][aA][lL][uU][eE]"
}
}
},
"named": false,
"value": "value"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][oO][sS]"
}
}
},
"named": false,
"value": "pos"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][aA][lL]"
}
}
},
"named": false,
"value": "val"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][uU][cC][cC]"
}
}
},
"named": false,
"value": "succ"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][rR][eE][dD]"
}
}
},
"named": false,
"value": "pred"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][eE][fF][tT][oO][fF]"
}
}
},
"named": false,
"value": "leftof"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][iI][gG][hH][tT][oO][fF]"
}
}
},
"named": false,
"value": "rightof"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][eE][fF][tT]"
}
}
},
"named": false,
"value": "left"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][iI][gG][hH][tT]"
}
}
},
"named": false,
"value": "right"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[hH][iI][gG][hH]"
}
}
},
"named": false,
"value": "high"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][oO][wW]"
}
}
},
"named": false,
"value": "low"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][eE][nN][gG][tT][hH]"
}
}
},
"named": false,
"value": "length"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][sS][cC][eE][nN][dD][iI][nN][gG]"
}
}
},
"named": false,
"value": "ascending"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][eE][lL][aA][yY][eE][dD]"
}
}
},
"named": false,
"value": "delayed"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][tT][aA][bB][lL][eE]"
}
}
},
"named": false,
"value": "stable"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[qQ][uU][iI][eE][tT]"
}
}
},
"named": false,
"value": "quiet"
}
]
},
"_range_designator": {
"type": "CHOICE",
"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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][eE][vV][eE][rR][sS][eE][__][rR][aA][nN][gG][eE]"
}
}
},
"named": false,
"value": "reverse_range"
}
]
},
"_external_object_name": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "external_constant_name"
},
{
"type": "SYMBOL",
"name": "external_signal_name"
},
{
"type": "SYMBOL",
"name": "external_variable_name"
}
]
},
"external_constant_name": {
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"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": "_external_pathname"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": ">>"
}
}
}
]
},
"external_signal_name": {
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "<<"
}
}
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][iI][gG][nN][aA][lL]"
}
}
},
"named": false,
"value": "signal"
},
{
"type": "SYMBOL",
"name": "_external_pathname"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": ">>"
}
}
}
]
},
"external_variable_name": {
"type": "SEQ",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "<<"
}
}
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][aA][rR][iI][aA][bB][lL][eE]"
}
}
},
"named": false,
"value": "variable"
},
{
"type": "SYMBOL",
"name": "_external_pathname"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": ">>"
}
}
}
]
},
"_external_pathname": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "package_pathname"
},
{
"type": "SYMBOL",
"name": "absolute_pathname"
},
{
"type": "SYMBOL",
"name": "relative_pathname"
}
]
},
"package_pathname": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@"
},
{
"type": "FIELD",
"name": "library",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "STRING",
"value": "."
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "package",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "."
},
{
"type": "FIELD",
"name": "package",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
}
]
}
}
]
},
{
"type": "STRING",
"value": "."
},
{
"type": "FIELD",
"name": "object",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
}
]
},
"absolute_pathname": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "."
},
{
"type": "SYMBOL",
"name": "_partial_pathname"
}
]
},
"relative_pathname": {
"type": "SEQ",
"members": [
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "^."
}
},
{
"type": "SYMBOL",
"name": "_partial_pathname"
}
]
},
"_partial_pathname": {
"type": "SEQ",
"members": [
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "pathname_element"
},
{
"type": "STRING",
"value": "."
}
]
}
},
{
"type": "FIELD",
"name": "object",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
}
]
},
"pathname_element": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_name_or_label"
},
{
"type": "SYMBOL",
"name": "generate_statement_element"
}
]
},
"_name_or_label": {
"type": "FIELD",
"name": "name_or_label",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
"_expr": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_unary_expression"
},
{
"type": "SYMBOL",
"name": "_binary_expression"
},
{
"type": "SYMBOL",
"name": "_primary"
}
]
},
"_unary_expression": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "condition"
},
{
"type": "SYMBOL",
"name": "reduction"
},
{
"type": "SYMBOL",
"name": "sign"
},
{
"type": "SYMBOL",
"name": "factor"
}
]
},
"_binary_expression": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "logical_expression"
},
{
"type": "SYMBOL",
"name": "relation"
},
{
"type": "SYMBOL",
"name": "shift_expression"
},
{
"type": "SYMBOL",
"name": "simple_expression"
},
{
"type": "SYMBOL",
"name": "concatenation"
},
{
"type": "SYMBOL",
"name": "term"
},
{
"type": "SYMBOL",
"name": "exponentiation"
}
]
},
"_primary": {
"type": "PREC",
"value": "primary",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_name"
},
{
"type": "SYMBOL",
"name": "_literal"
},
{
"type": "SYMBOL",
"name": "aggregate"
},
{
"type": "SYMBOL",
"name": "qualified_expression"
},
{
"type": "SYMBOL",
"name": "allocator"
},
{
"type": "SYMBOL",
"name": "parenthesized_expression"
},
{
"type": "SYMBOL",
"name": "function_call"
}
]
}
},
"_expression": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_expr"
},
"named": true,
"value": "expression"
},
"_condition": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_expr"
},
"named": true,
"value": "conditional_expression"
},
"_simple_expression": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_expr"
},
"named": true,
"value": "simple_expression"
},
"_time_expression": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_expr"
},
"named": true,
"value": "time_expression"
},
"_string_expression": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_expr"
},
"named": true,
"value": "string_expression"
},
"_severity_expression": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_primary"
},
"named": true,
"value": "severity_expression"
},
"_file_open_kind": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_primary"
},
"named": true,
"value": "file_open_kind"
},
"default_expression": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ":="
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
},
"inertial_expression": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][nN][eE][rR][tT][iI][aA][lL]"
}
}
},
"named": false,
"value": "inertial"
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
},
"parenthesized_expression": {
"type": "PREC",
"value": "parenthesized_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "STRING",
"value": ")"
}
]
}
},
"condition": {
"type": "PREC",
"value": "condition",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "??"
}
}
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"reduction": {
"type": "PREC",
"value": "reduction",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][nN][dD]"
}
}
},
"named": false,
"value": "and"
},
{
"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": "[xX][oO][rR]"
}
}
},
"named": false,
"value": "xor"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][aA][nN][dD]"
}
}
},
"named": false,
"value": "nand"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][oO][rR]"
}
}
},
"named": false,
"value": "nor"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[xX][nN][oO][rR]"
}
}
},
"named": false,
"value": "xnor"
}
]
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"factor": {
"type": "PREC_RIGHT",
"value": "factor",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][bB][sS]"
}
}
},
"named": false,
"value": "abs"
}
]
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"sign": {
"type": "PREC",
"value": "sign",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "+"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "-"
}
}
}
]
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"logical_expression": {
"type": "PREC_RIGHT",
"value": "logical_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "logical_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][nN][dD]"
}
}
},
"named": false,
"value": "and"
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "logical_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][rR]"
}
}
},
"named": false,
"value": "or"
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "logical_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[xX][oO][rR]"
}
}
},
"named": false,
"value": "xor"
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "logical_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[xX][nN][oO][rR]"
}
}
},
"named": false,
"value": "xnor"
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
},
{
"type": "SEQ",
"members": [
{
"type": "PREC_LEFT",
"value": "logical_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][aA][nN][dD]"
}
}
},
"named": false,
"value": "nand"
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "PREC_LEFT",
"value": "logical_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][oO][rR]"
}
}
},
"named": false,
"value": "nor"
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
]
}
]
}
]
}
},
"relation": {
"type": "PREC_RIGHT",
"value": "relation",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "<"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": ">"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "="
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "<="
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": ">="
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "/="
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?<"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?>"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?="
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?<="
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?>="
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?/="
}
}
}
]
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"shift_expression": {
"type": "PREC_RIGHT",
"value": "shift_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][lL][lL]"
}
}
},
"named": false,
"value": "sll"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][rR][lL]"
}
}
},
"named": false,
"value": "srl"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][lL][aA]"
}
}
},
"named": false,
"value": "sla"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][rR][aA]"
}
}
},
"named": false,
"value": "sra"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][oO][lL]"
}
}
},
"named": false,
"value": "rol"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][oO][rR]"
}
}
},
"named": false,
"value": "ror"
}
]
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"simple_expression": {
"type": "PREC_RIGHT",
"value": "simple_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "simple_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "+"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "-"
}
}
}
]
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
}
]
}
},
"concatenation": {
"type": "PREC_RIGHT",
"value": "simple_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "simple_expression",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "&"
}
}
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
}
]
}
},
"term": {
"type": "PREC_RIGHT",
"value": "term",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "CHOICE",
"members": [
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "term",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "*"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "/"
}
}
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][eE][mM]"
}
}
},
"named": false,
"value": "rem"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[mM][oO][dD]"
}
}
},
"named": false,
"value": "mod"
}
]
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
}
}
]
}
]
}
},
"exponentiation": {
"type": "PREC_LEFT",
"value": "exponentiation",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_expr"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "**"
}
}
}
]
}
},
{
"type": "SYMBOL",
"name": "_expr"
}
]
}
},
"_literal": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_numeric_literal"
},
{
"type": "SYMBOL",
"name": "string_literal"
},
{
"type": "SYMBOL",
"name": "bit_string_literal"
},
{
"type": "SYMBOL",
"name": "null"
},
{
"type": "SYMBOL",
"name": "character_literal"
}
]
},
"_numeric_literal": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_abstract_literal"
},
{
"type": "SYMBOL",
"name": "physical_literal"
}
]
},
"null": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][uU][lL][lL]"
}
}
},
"named": false,
"value": "null"
},
"aggregate": {
"type": "PREC",
"value": -1,
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_element_association_list"
},
{
"type": "STRING",
"value": ")"
}
]
}
},
"_element_association_list": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "named_element_association"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_element_association"
},
{
"type": "STRING",
"value": ","
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_element_association"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_element_association"
}
]
}
}
]
}
]
}
]
},
"_element_association": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "positional_element_association"
},
{
"type": "SYMBOL",
"name": "named_element_association"
}
]
},
"positional_element_association": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_value"
}
]
},
"named_element_association": {
"type": "PREC",
"value": -1,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "choices"
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "=>"
}
}
},
{
"type": "SYMBOL",
"name": "_value"
}
]
}
},
"_value": {
"type": "SYMBOL",
"name": "_expression"
},
"choices": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_choice"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "|"
},
{
"type": "SYMBOL",
"name": "_choice"
}
]
}
}
]
},
"_choice": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_expression"
},
{
"type": "SYMBOL",
"name": "_range"
},
{
"type": "SYMBOL",
"name": "others"
}
]
},
"others": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][tT][hH][eE][rR][sS]"
}
}
},
"named": false,
"value": "others"
},
"function_call": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_function_name"
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "association_list"
},
{
"type": "STRING",
"value": ")"
}
]
},
"_function_name": {
"type": "FIELD",
"name": "function",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "_operator_symbol"
},
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "SYMBOL",
"name": "attribute_name"
}
]
}
},
"qualified_expression": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "type_mark"
},
{
"type": "TOKEN",
"content": {
"type": "STRING",
"value": "'"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "aggregate"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "parenthesized_expression"
},
"named": true,
"value": "expression"
}
]
}
]
},
"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": "subtype_indication"
},
{
"type": "SYMBOL",
"name": "qualified_expression"
}
]
}
]
},
"sequence_of_statements": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_sequential_statement"
}
},
"_sequential_statement": {
"type": "PREC",
"value": "sequential_statement",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "process_statement"
},
{
"type": "SYMBOL",
"name": "wait_statement"
},
{
"type": "SYMBOL",
"name": "assertion_statement"
},
{
"type": "SYMBOL",
"name": "report_statement"
},
{
"type": "SYMBOL",
"name": "_signal_assignment_statement"
},
{
"type": "SYMBOL",
"name": "_variable_assignment_statement"
},
{
"type": "SYMBOL",
"name": "procedure_call_statement"
},
{
"type": "SYMBOL",
"name": "if_statement"
},
{
"type": "SYMBOL",
"name": "case_statement"
},
{
"type": "SYMBOL",
"name": "loop_statement"
},
{
"type": "SYMBOL",
"name": "next_statement"
},
{
"type": "SYMBOL",
"name": "exit_statement"
},
{
"type": "SYMBOL",
"name": "return_statement"
},
{
"type": "SYMBOL",
"name": "null_statement"
},
{
"type": "SYMBOL",
"name": "_PSL_Directive"
},
{
"type": "SYMBOL",
"name": "_PSL_Declaration"
}
]
}
},
"wait_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[wW][aA][iI][tT]"
}
}
},
"named": false,
"value": "wait"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_sensitivity_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_condition_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_timeout_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_sensitivity_clause": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][nN]"
}
}
},
"named": false,
"value": "on"
},
{
"type": "SYMBOL",
"name": "sensitivity_list"
}
]
},
"_condition_clause": {
"type": "SEQ",
"members": [
{
"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": "_condition"
}
]
},
"_timeout_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": "_time_expression"
}
]
},
"sensitivity_list": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "all"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_signal_name"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_signal_name"
}
]
}
}
]
}
]
},
"_signal_name": {
"type": "SYMBOL",
"name": "_name"
},
"assertion_statement": {
"type": "PREC",
"value": "vhdl_assertion",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][oO][sS][tT][pP][oO][nN][eE][dD]"
}
}
},
"named": false,
"value": "postponed"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][sS][sS][eE][rR][tT]"
}
}
},
"named": false,
"value": "assert"
},
{
"type": "SYMBOL",
"name": "_condition"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_report"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_severity"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
}
},
"report_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_report"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_severity"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_report": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][eE][pP][oO][rR][tT]"
}
}
},
"named": false,
"value": "report"
},
{
"type": "SYMBOL",
"name": "_string_expression"
}
]
},
"_severity": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][eE][vV][eE][rR][iI][tT][yY]"
}
}
},
"named": false,
"value": "severity"
},
{
"type": "SYMBOL",
"name": "_severity_expression"
}
]
},
"_signal_assignment_statement": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_signal_assignment"
},
{
"type": "SYMBOL",
"name": "_conditional_signal_assignment"
},
{
"type": "SYMBOL",
"name": "_selected_signal_assignment"
}
]
},
"_simple_signal_assignment": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "simple_waveform_assignment"
},
{
"type": "SYMBOL",
"name": "simple_force_assignment"
},
{
"type": "SYMBOL",
"name": "simple_release_assignment"
}
]
},
"simple_waveform_assignment": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": "<="
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][uU][aA][rR][dD][eE][dD]"
}
}
},
"named": false,
"value": "guarded"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "delay_mechanism"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "waveforms"
},
{
"type": "STRING",
"value": ";"
}
]
},
"simple_force_assignment": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": "<="
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][uU][aA][rR][dD][eE][dD]"
}
}
},
"named": false,
"value": "guarded"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][oO][rR][cC][eE]"
}
}
},
"named": false,
"value": "force"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "force_mode"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_value"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"simple_release_assignment": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": "<="
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][uU][aA][rR][dD][eE][dD]"
}
}
},
"named": false,
"value": "guarded"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][eE][lL][eE][aA][sS][eE]"
}
}
},
"named": false,
"value": "release"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "force_mode"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"force_mode": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_in"
},
{
"type": "SYMBOL",
"name": "_out"
}
]
},
"delay_mechanism": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "transport"
},
{
"type": "SYMBOL",
"name": "inertial"
}
]
},
"transport": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[tT][rR][aA][nN][sS][pP][oO][rR][tT]"
}
}
},
"named": false,
"value": "transport"
},
"inertial": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_reject"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][nN][eE][rR][tT][iI][aA][lL]"
}
}
},
"named": false,
"value": "inertial"
}
]
},
"_reject": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][eE][jJ][eE][cC][tT]"
}
}
},
"named": false,
"value": "reject"
},
{
"type": "FIELD",
"name": "reject",
"content": {
"type": "SYMBOL",
"name": "_time_expression"
}
}
]
},
"_target": {
"type": "FIELD",
"name": "target",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_name"
},
{
"type": "SYMBOL",
"name": "aggregate"
}
]
}
},
"waveforms": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "unaffected"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "waveform_element"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "waveform_element"
}
]
}
}
]
}
]
},
"unaffected": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[uU][nN][aA][fF][fF][eE][cC][tT][eE][dD]"
}
}
},
"named": false,
"value": "unaffected"
},
"waveform_element": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_value"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_after"
},
{
"type": "BLANK"
}
]
}
]
},
"_after": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][fF][tT][eE][rR]"
}
}
},
"named": false,
"value": "after"
},
{
"type": "SYMBOL",
"name": "_time_expression"
}
]
},
"_conditional_signal_assignment": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "conditional_waveform_assignment"
},
{
"type": "SYMBOL",
"name": "conditional_force_assignment"
}
]
},
"conditional_waveform_assignment": {
"type": "PREC",
"value": 1,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": "<="
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][uU][aA][rR][dD][eE][dD]"
}
}
},
"named": false,
"value": "guarded"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "delay_mechanism"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "conditional_waveforms"
},
{
"type": "STRING",
"value": ";"
}
]
}
},
"_when_clause": {
"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": "_condition"
}
]
},
"conditional_waveforms": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "waveforms"
},
{
"type": "SYMBOL",
"name": "_when_clause"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "alternative_conditional_waveforms"
}
}
]
},
"alternative_conditional_waveforms": {
"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": "waveforms"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_when_clause"
},
{
"type": "BLANK"
}
]
}
]
},
"conditional_force_assignment": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": "<="
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][oO][rR][cC][eE]"
}
}
},
"named": false,
"value": "force"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "force_mode"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "conditional_expressions"
},
{
"type": "STRING",
"value": ";"
}
]
},
"conditional_expressions": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_value"
},
{
"type": "SYMBOL",
"name": "_when_clause"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "alternative_conditional_expressions"
}
}
]
},
"alternative_conditional_expressions": {
"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": "_value"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_when_clause"
},
{
"type": "BLANK"
}
]
}
]
},
"_selected_signal_assignment": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "selected_waveform_assignment"
},
{
"type": "SYMBOL",
"name": "selected_force_assignment"
}
]
},
"selected_waveform_assignment": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"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": "_expression"
},
{
"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": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?"
}
}
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": "<="
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][uU][aA][rR][dD][eE][dD]"
}
}
},
"named": false,
"value": "guarded"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "delay_mechanism"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "selected_waveforms"
},
{
"type": "STRING",
"value": ";"
}
]
},
"selected_force_assignment": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"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": "_expression"
},
{
"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": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?"
}
}
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": "<="
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][oO][rR][cC][eE]"
}
}
},
"named": false,
"value": "force"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "force_mode"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "selected_expressions"
},
{
"type": "STRING",
"value": ";"
}
]
},
"selected_waveforms": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "waveforms"
},
{
"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": "choices"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "alternative_selected_waveforms"
}
}
]
},
"alternative_selected_waveforms": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "waveforms"
},
{
"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": "choices"
}
]
},
"selected_expressions": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_value"
},
{
"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": "choices"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "alternative_selected_expressions"
}
}
]
},
"alternative_selected_expressions": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_value"
},
{
"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": "choices"
}
]
},
"_variable_assignment_statement": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "simple_variable_assignment"
},
{
"type": "SYMBOL",
"name": "conditional_variable_assignment"
},
{
"type": "SYMBOL",
"name": "selected_variable_assignment"
}
]
},
"simple_variable_assignment": {
"type": "PREC",
"value": 1,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": ":="
},
{
"type": "SYMBOL",
"name": "_value"
},
{
"type": "STRING",
"value": ";"
}
]
}
},
"conditional_variable_assignment": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": ":="
},
{
"type": "SYMBOL",
"name": "conditional_expressions"
},
{
"type": "STRING",
"value": ";"
}
]
},
"selected_variable_assignment": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"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": "_expression"
},
{
"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": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?"
}
}
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_target"
},
{
"type": "STRING",
"value": ":="
},
{
"type": "SYMBOL",
"name": "selected_expressions"
},
{
"type": "STRING",
"value": ";"
}
]
},
"procedure_call_statement": {
"type": "PREC",
"value": "procedure_call",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][oO][sS][tT][pP][oO][nN][eE][dD]"
}
}
},
"named": false,
"value": "postponed"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "procedure",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "association_list"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
}
},
"if_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "if"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "elsif"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "else"
},
{
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"if": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][fF]"
}
}
},
"named": false,
"value": "if"
},
{
"type": "SYMBOL",
"name": "_condition"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[tT][hH][eE][nN]"
}
}
},
"named": false,
"value": "then"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "sequence_of_statements"
},
{
"type": "BLANK"
}
]
}
]
},
"elsif": {
"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": "SYMBOL",
"name": "_condition"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[tT][hH][eE][nN]"
}
}
},
"named": false,
"value": "then"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "sequence_of_statements"
},
{
"type": "BLANK"
}
]
}
]
},
"else": {
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "sequence_of_statements"
},
{
"type": "BLANK"
}
]
}
]
},
"case_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][aA][sS][eE]"
}
}
},
"named": false,
"value": "case"
},
{
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?"
}
}
},
{
"type": "BLANK"
}
]
},
{
"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": "REPEAT",
"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": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "?"
}
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"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": "choices"
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "=>"
}
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "sequence_of_statements"
},
{
"type": "BLANK"
}
]
}
]
},
"loop_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "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": "CHOICE",
"members": [
{
"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": "[lL][oO][oO][pP]"
}
}
},
"named": false,
"value": "loop"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_iteration_scheme": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "while_loop"
},
{
"type": "SYMBOL",
"name": "for_loop"
}
]
},
"while_loop": {
"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": "SYMBOL",
"name": "_condition"
}
]
},
"for_loop": {
"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": "parameter_specification"
}
]
},
"parameter_specification": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "name",
"content": {
"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_range"
}
]
},
"next_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT]"
}
}
},
"named": false,
"value": "next"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_loop_label"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_when_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_loop_label": {
"type": "FIELD",
"name": "loop_label",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
"exit_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][xX][iI][tT]"
}
}
},
"named": false,
"value": "exit"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_loop_label"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_when_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"return_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"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": ";"
}
]
},
"null_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"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": ";"
}
]
},
"concurrent_statement_part": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_concurrent_statement"
}
},
"_concurrent_statement": {
"type": "PREC",
"value": "concurrent_statement",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "block_statement"
},
{
"type": "SYMBOL",
"name": "process_statement"
},
{
"type": "SYMBOL",
"name": "component_instantiation_statement"
},
{
"type": "SYMBOL",
"name": "procedure_call_statement"
},
{
"type": "SYMBOL",
"name": "assertion_statement"
},
{
"type": "SYMBOL",
"name": "_concurrent_signal_assignment"
},
{
"type": "SYMBOL",
"name": "_generate_statement"
},
{
"type": "SYMBOL",
"name": "_PSL_Directive"
},
{
"type": "SYMBOL",
"name": "_PSL_Declaration"
}
]
}
},
"block_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][lL][oO][cC][kK]"
}
}
},
"named": false,
"value": "block"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_guard"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][sS]"
}
}
},
"named": false,
"value": "is"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "block_header"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "concurrent_statement_part"
},
{
"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": "[bB][lL][oO][cC][kK]"
}
}
},
"named": false,
"value": "block"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_guard": {
"type": "FIELD",
"name": "guard",
"content": {
"type": "SYMBOL",
"name": "_condition"
}
},
"process_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][oO][sS][tT][pP][oO][nN][eE][dD]"
}
}
},
"named": false,
"value": "postponed"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][rR][oO][cC][eE][sS][sS]"
}
}
},
"named": false,
"value": "process"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "sensitivity_list"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][sS]"
}
}
},
"named": false,
"value": "is"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "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": "CHOICE",
"members": [
{
"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": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][oO][sS][tT][pP][oO][nN][eE][dD]"
}
}
},
"named": false,
"value": "postponed"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][rR][oO][cC][eE][sS][sS]"
}
}
},
"named": false,
"value": "process"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_concurrent_signal_assignment": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "simple_waveform_assignment"
},
"named": true,
"value": "simple_concurrent_signal_assignment"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "conditional_waveform_assignment"
},
"named": true,
"value": "conditional_concurrent_signal_assignment"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "selected_waveform_assignment"
},
"named": true,
"value": "selected_concurrent_signal_assignment"
}
]
},
"component_instantiation_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_entity_aspect"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_header"
},
"named": true,
"value": "component_map_aspect"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"entity_instantiation": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][nN][tT][iI][tT][yY]"
}
}
},
"named": false,
"value": "entity"
},
{
"type": "FIELD",
"name": "entity",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "FIELD",
"name": "architecture",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"configuration_instantiation": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][nN][fF][iI][gG][uU][rR][aA][tT][iI][oO][nN]"
}
}
},
"named": false,
"value": "configuration"
},
{
"type": "FIELD",
"name": "configuration",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
}
]
},
"component_instantiation": {
"type": "PREC",
"value": "component_instantiation",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][mM][pP][oO][nN][eE][nN][tT]"
}
}
},
"named": false,
"value": "component"
},
{
"type": "BLANK"
}
]
},
{
"type": "FIELD",
"name": "component",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_simple_name"
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
}
]
}
},
"_generate_statement": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "for_generate_statement"
},
{
"type": "SYMBOL",
"name": "if_generate_statement"
},
{
"type": "SYMBOL",
"name": "case_generate_statement"
}
]
},
"for_generate_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][oO][rR]"
}
}
},
"named": false,
"value": "for"
},
{
"type": "SYMBOL",
"name": "parameter_specification"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][eE][nN][eE][rR][aA][tT][eE]"
}
}
},
"named": false,
"value": "generate"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "generate_statement_body"
},
{
"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": "[gG][eE][nN][eE][rR][aA][tT][eE]"
}
}
},
"named": false,
"value": "generate"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"if_generate_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "if_generate"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "elsif_generate"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "else_generate"
},
{
"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": "[gG][eE][nN][eE][rR][aA][tT][eE]"
}
}
},
"named": false,
"value": "generate"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"if_generate": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][fF]"
}
}
},
"named": false,
"value": "if"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_condition"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][eE][nN][eE][rR][aA][tT][eE]"
}
}
},
"named": false,
"value": "generate"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "generate_statement_body"
},
{
"type": "BLANK"
}
]
}
]
},
"elsif_generate": {
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_condition"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][eE][nN][eE][rR][aA][tT][eE]"
}
}
},
"named": false,
"value": "generate"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "generate_statement_body"
},
{
"type": "BLANK"
}
]
}
]
},
"else_generate": {
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[gG][eE][nN][eE][rR][aA][tT][eE]"
}
}
},
"named": false,
"value": "generate"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "generate_statement_body"
},
{
"type": "BLANK"
}
]
}
]
},
"case_generate_statement": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"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": "[gG][eE][nN][eE][rR][aA][tT][eE]"
}
}
},
"named": false,
"value": "generate"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "case_generate_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": "[gG][eE][nN][eE][rR][aA][tT][eE]"
}
}
},
"named": false,
"value": "generate"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"case_generate_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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "choices"
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "=>"
}
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "generate_statement_body"
},
{
"type": "BLANK"
}
]
}
]
},
"generate_statement_body": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "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": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_concurrent_statement"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"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": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "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": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_concurrent_statement"
}
},
{
"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": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
{
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_concurrent_statement"
}
}
]
},
"label": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_identifier"
},
{
"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": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"design_unit": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "context_clause"
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "context_clause"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_library_unit"
}
]
}
]
}
},
"_library_unit": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_primary_unit"
},
{
"type": "SYMBOL",
"name": "_secondary_unit"
}
]
},
"_primary_unit": {
"type": "PREC",
"value": "primary_unit",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "entity_declaration"
},
{
"type": "SYMBOL",
"name": "configuration_declaration"
},
{
"type": "SYMBOL",
"name": "package_declaration"
},
{
"type": "SYMBOL",
"name": "package_instantiation_declaration"
},
{
"type": "SYMBOL",
"name": "context_declaration"
},
{
"type": "SYMBOL",
"name": "_PSL_Verification_Unit"
}
]
}
},
"_secondary_unit": {
"type": "PREC",
"value": "secondary_unit",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "architecture_body"
},
{
"type": "SYMBOL",
"name": "package_body"
}
]
}
},
"library_clause": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[lL][iI][bB][rR][aA][rR][yY]"
}
}
},
"named": false,
"value": "library"
},
{
"type": "SYMBOL",
"name": "logical_name_list"
},
{
"type": "STRING",
"value": ";"
}
]
},
"logical_name_list": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "library",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "FIELD",
"name": "library",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
}
]
}
}
]
},
"context_declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][nN][tT][eE][xX][tT]"
}
}
},
"named": false,
"value": "context"
},
{
"type": "FIELD",
"name": "name",
"content": {
"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": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "context_clause"
},
{
"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": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][nN][tT][eE][xX][tT]"
}
}
},
"named": false,
"value": "context"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_end_simple_name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"context_clause": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_context_item"
}
}
},
"_context_item": {
"type": "PREC",
"value": "context_item",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "library_clause"
},
{
"type": "SYMBOL",
"name": "use_clause"
},
{
"type": "SYMBOL",
"name": "context_reference"
}
]
}
},
"context_reference": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][nN][tT][eE][xX][tT]"
}
}
},
"named": false,
"value": "context"
},
{
"type": "SYMBOL",
"name": "context_list"
},
{
"type": "STRING",
"value": ";"
}
]
},
"context_list": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "selected_name"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "selected_name"
}
]
}
}
]
},
"_identifier": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "basic_identifier"
},
"named": true,
"value": "identifier"
},
{
"type": "SYMBOL",
"name": "extended_identifier"
}
]
},
"basic_identifier": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "[a-zA-Z]"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "_"
},
{
"type": "BLANK"
}
]
},
{
"type": "PATTERN",
"value": "[a-zA-Z0-9]"
}
]
}
}
]
}
},
"extended_identifier": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\\"
},
{
"type": "PATTERN",
"value": "(\\\\\\\\|[^\\r\\n\\\\])*"
},
{
"type": "STRING",
"value": "\\"
}
]
}
},
"_abstract_literal": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "integer_decimal"
},
{
"type": "SYMBOL",
"name": "real_decimal"
},
{
"type": "SYMBOL",
"name": "based_integer"
},
{
"type": "SYMBOL",
"name": "based_real"
}
]
},
"integer_decimal": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9_]"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "e"
},
{
"type": "STRING",
"value": "E"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "+"
},
{
"type": "STRING",
"value": "-"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9_]"
}
}
]
},
{
"type": "BLANK"
}
]
}
]
}
},
"real_decimal": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9_]"
}
},
{
"type": "STRING",
"value": "."
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "REPEAT1",
"content": {
"type": "PATTERN",
"value": "[0-9_]"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "e"
},
{
"type": "STRING",
"value": "E"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "+"
},
{
"type": "STRING",
"value": "-"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9_]"
}
}
]
},
{
"type": "BLANK"
}
]
}
]
},
{
"type": "BLANK"
}
]
}
]
}
},
"based_integer": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "0"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[0-9]"
},
{
"type": "PATTERN",
"value": "1[0-6]"
}
]
},
{
"type": "STRING",
"value": "#"
},
{
"type": "PATTERN",
"value": "[0-9a-fA-F_]*"
},
{
"type": "STRING",
"value": "#"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "e"
},
{
"type": "STRING",
"value": "E"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "+"
},
{
"type": "STRING",
"value": "-"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9_]"
}
}
]
},
{
"type": "BLANK"
}
]
}
]
}
},
"based_real": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "REPEAT",
"content": {
"type": "STRING",
"value": "0"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "[0-9]"
},
{
"type": "PATTERN",
"value": "1[0-6]"
}
]
},
{
"type": "STRING",
"value": "#"
},
{
"type": "PATTERN",
"value": "[0-9a-fA-F_]*"
},
{
"type": "STRING",
"value": "."
},
{
"type": "PATTERN",
"value": "[0-9a-fA-F_]*"
},
{
"type": "STRING",
"value": "#"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "e"
},
{
"type": "STRING",
"value": "E"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "+"
},
{
"type": "STRING",
"value": "-"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "PATTERN",
"value": "[0-9_]"
}
}
]
},
{
"type": "BLANK"
}
]
}
]
}
},
"character_literal": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "'.'"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "'[^;,)\\r\\n]"
},
{
"type": "STRING",
"value": "'"
}
]
}
]
},
"string_literal": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "\"(\"\"|[^\"\\r\\n])*\""
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "\"(\"\"|[^\";,)\\r\\n])*"
},
{
"type": "STRING",
"value": "\""
}
]
}
]
},
"bit_string_literal": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "[0-9]*[uUsS]?[bBoOxX]\"[^\" \\r\\n]*\""
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "[0-9]*[uUsS]?[bBoOxX]\"[^\" ;,)\\r\\n]*"
},
{
"type": "STRING",
"value": "\""
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "[0-9]*[dD]\"[^\" \\r\\n]*\""
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "PATTERN",
"value": "[0-9]*[dD]\"[^\" ;,)\\r\\n]*"
},
{
"type": "STRING",
"value": "\""
}
]
}
]
},
"comment": {
"type": "TOKEN",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "--.*"
}
},
{
"type": "PREC",
"value": 2,
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "/*"
},
{
"type": "PATTERN",
"value": "[^*]*\\*+([^/*][^*]*\\*+)*"
},
{
"type": "STRING",
"value": "/"
}
]
}
}
]
}
},
"tool_directive": {
"type": "TOKEN",
"content": {
"type": "PATTERN",
"value": "`.*"
}
},
"_PSL_Identifier": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_identifier"
},
"named": true,
"value": "PSL_Identifier"
},
"_PSL_Any_Type": {
"type": "PREC",
"value": 1,
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_expr"
},
"named": true,
"value": "PSL_Any_Type"
},
{
"type": "SYMBOL",
"name": "PSL_Expression"
},
{
"type": "SYMBOL",
"name": "PSL_Built_In_Function_Call"
},
{
"type": "SYMBOL",
"name": "PSL_Union_Expression"
}
]
}
},
"_PSL_Boolean": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_expr"
},
"named": true,
"value": "PSL_Boolean"
},
{
"type": "SYMBOL",
"name": "PSL_Expression"
},
{
"type": "SYMBOL",
"name": "PSL_Built_In_Function_Call"
}
]
},
"PSL_Parenthesized_Boolean": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
},
{
"type": "STRING",
"value": ")"
}
]
},
"_PSL_Number": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_expr"
},
"named": true,
"value": "PSL_Number"
},
{
"type": "SYMBOL",
"name": "PSL_Built_In_Function_Call"
}
]
},
"_PSL_Value": {
"type": "SYMBOL",
"name": "_PSL_Any_Type"
},
"PSL_Expression": {
"type": "PREC_RIGHT",
"value": "implication",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "->"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "<->"
}
}
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
}
]
}
},
"PSL_Built_In_Function_Call": {
"type": "PREC",
"value": "psl_function_call",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][rR][eE][vV]"
}
}
},
"named": false,
"value": "prev"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT]"
}
}
},
"named": false,
"value": "next"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][tT][aA][bB][lL][eE]"
}
}
},
"named": false,
"value": "stable"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][oO][sS][eE]"
}
}
},
"named": false,
"value": "rose"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][eE][lL][lL]"
}
}
},
"named": false,
"value": "fell"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][sS][uU][nN][kK][nN][oO][wW][nN]"
}
}
},
"named": false,
"value": "isunknown"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][uU][nN][tT][oO][nN][eE][sS]"
}
}
},
"named": false,
"value": "countones"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][nN][eE][hH][oO][tT]"
}
}
},
"named": false,
"value": "onehot"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][nN][eE][hH][oO][tT][00]"
}
}
},
"named": false,
"value": "onehot0"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][oO][nN][dD][eE][tT]"
}
}
},
"named": false,
"value": "nondet"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][oO][nN][dD][eE][tT][__][vV][eE][cC][tT][oO][rR]"
}
}
},
"named": false,
"value": "nondet_vector"
}
]
},
{
"type": "STRING",
"value": "("
},
{
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Any_Type"
},
{
"type": "SYMBOL",
"name": "PSL_Value_Set"
}
]
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Any_Type"
},
{
"type": "SYMBOL",
"name": "PSL_Value_Set"
}
]
}
]
}
}
]
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][nN][dD][eE][dD]"
}
}
},
"named": false,
"value": "ended"
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_PSL_Sequence"
},
{
"type": "STRING",
"value": ")"
}
]
}
]
}
},
"_PSL_Clock_Expression": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_condition"
},
{
"type": "SYMBOL",
"name": "PSL_Built_In_Function_Call"
}
]
},
"PSL_Union_Expression": {
"type": "PREC_LEFT",
"value": "union",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Any_Type"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[uU][nN][iI][oO][nN]"
}
}
},
"named": false,
"value": "union"
}
},
{
"type": "SYMBOL",
"name": "_PSL_Any_Type"
}
]
}
},
"_PSL_Declaration": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Property_Declaration"
},
{
"type": "SYMBOL",
"name": "PSL_Sequence_Declaration"
},
{
"type": "SYMBOL",
"name": "PSL_Clock_Declaration"
}
]
},
"PSL_Clock_Declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[dD][eE][fF][aA][uU][lL][tT]"
}
}
},
"named": false,
"value": "default"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][lL][oO][cC][kK]"
}
}
},
"named": false,
"value": "clock"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][sS]"
}
}
},
"named": false,
"value": "is"
},
{
"type": "SYMBOL",
"name": "_PSL_Clock_Expression"
},
{
"type": "STRING",
"value": ";"
}
]
},
"_PSL_SERE": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
},
{
"type": "SYMBOL",
"name": "_PSL_Sequence"
},
{
"type": "SYMBOL",
"name": "PSL_Simple_SERE"
},
{
"type": "SYMBOL",
"name": "_PSL_Compound_SERE"
}
]
},
"PSL_Simple_SERE": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Fusion_SERE"
},
{
"type": "SYMBOL",
"name": "_PSL_Concat_SERE"
}
]
},
"_PSL_Fusion_SERE": {
"type": "PREC_RIGHT",
"value": "sequence_fusion",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_SERE"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": ":"
}
}
}
},
{
"type": "SYMBOL",
"name": "_PSL_SERE"
}
]
}
}
}
]
}
},
"_PSL_Concat_SERE": {
"type": "PREC_RIGHT",
"value": "sequence_concatenation",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_SERE"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": ";"
}
}
}
},
{
"type": "SYMBOL",
"name": "_PSL_SERE"
}
]
}
}
}
]
}
},
"_PSL_Compound_SERE": {
"type": "PREC_DYNAMIC",
"value": 1,
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Repeated_SERE"
},
{
"type": "SYMBOL",
"name": "PSL_Braced_SERE"
},
{
"type": "SYMBOL",
"name": "PSL_Clocked_SERE"
},
{
"type": "ALIAS",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Compound_SERE_And"
},
{
"type": "SYMBOL",
"name": "PSL_Compound_SERE_Within"
}
]
},
"named": true,
"value": "PSL_Compound_SERE"
},
{
"type": "SYMBOL",
"name": "PSL_Parameterized_SERE"
}
]
}
},
"PSL_Compound_SERE_Or": {
"type": "PREC_RIGHT",
"value": "sequence_or",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Compound_SERE"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "|"
}
}
}
},
{
"type": "SYMBOL",
"name": "_PSL_Compound_SERE"
}
]
}
}
}
]
}
},
"PSL_Compound_SERE_And": {
"type": "PREC_RIGHT",
"value": "sequence_and",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Compound_SERE"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "&"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "&&"
}
}
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_Compound_SERE"
}
]
}
}
}
]
}
},
"PSL_Compound_SERE_Within": {
"type": "PREC_RIGHT",
"value": "sequence_within",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Compound_SERE"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[wW][iI][tT][hH][iI][nN]"
}
}
},
"named": false,
"value": "within"
}
},
{
"type": "SYMBOL",
"name": "_PSL_Compound_SERE"
}
]
}
}
}
]
}
},
"PSL_Parameterized_SERE": {
"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": "PSL_Parameters_Definition"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "|"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "&"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "&&"
}
}
}
]
}
},
{
"type": "STRING",
"value": "{"
},
{
"type": "FIELD",
"name": "SERE",
"content": {
"type": "SYMBOL",
"name": "_PSL_SERE"
}
},
{
"type": "STRING",
"value": "}"
}
]
},
"PSL_Parameters_Definition": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Parameter_Specification"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "PSL_Parameter_Specification"
}
]
}
}
]
},
"PSL_Parameter_Specification": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Index_Range"
},
{
"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": "PSL_Value_Set"
}
]
},
"_PSL_Sequence": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Sequence_Instance"
},
{
"type": "SYMBOL",
"name": "PSL_Repeated_SERE"
},
{
"type": "SYMBOL",
"name": "PSL_Braced_SERE"
},
{
"type": "SYMBOL",
"name": "PSL_Clocked_SERE"
}
]
},
"PSL_Repeated_SERE": {
"type": "PREC_LEFT",
"value": "SERE_repetition",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
},
{
"type": "SYMBOL",
"name": "_PSL_Sequence"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "PSL_Count"
}
]
}
},
"PSL_Count": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 3,
"content": {
"type": "STRING",
"value": "+"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 3,
"content": {
"type": "STRING",
"value": "*"
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 3,
"content": {
"type": "STRING",
"value": "="
}
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PREC",
"value": 3,
"content": {
"type": "STRING",
"value": "->"
}
}
}
]
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Number"
},
{
"type": "SYMBOL",
"name": "_PSL_Range"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "]"
}
]
},
"_PSL_Range": {
"type": "SYMBOL",
"name": "_range"
},
"PSL_Braced_SERE": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "SYMBOL",
"name": "_PSL_SERE"
},
{
"type": "STRING",
"value": "}"
}
]
}
},
"PSL_Clocked_SERE": {
"type": "PREC_LEFT",
"value": "clocked",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "SYMBOL",
"name": "_PSL_SERE"
},
{
"type": "STRING",
"value": "}"
},
{
"type": "STRING",
"value": "@"
},
{
"type": "SYMBOL",
"name": "_PSL_Clock_Expression"
}
]
}
},
"_PSL_Property": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Property_Replicator"
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
},
{
"type": "SYMBOL",
"name": "_PSL_Ambiguous_Instance"
}
]
},
"_PSL_FL_Property": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Property_Instance"
},
{
"type": "SYMBOL",
"name": "PSL_Parenthesized_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Sequential_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Clocked_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Invariant_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Ocurrence_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Extended_Ocurrence_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Termination_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Bounding_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Suffix_Implication_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Parameterized_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Implication_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Logical_FL_Property"
},
{
"type": "SYMBOL",
"name": "PSL_Factor_FL_Property"
},
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
}
]
},
"PSL_Parenthesized_FL_Property": {
"type": "PREC",
"value": "parenthesized_property",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
},
{
"type": "STRING",
"value": ")"
}
]
}
},
"PSL_Sequential_FL_Property": {
"type": "PREC_LEFT",
"value": -1,
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Sequence"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "!"
},
{
"type": "BLANK"
}
]
}
]
}
},
"PSL_Clocked_FL_Property": {
"type": "PREC_RIGHT",
"value": "clocked",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "clocked",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "@"
}
}
}
},
{
"type": "SYMBOL",
"name": "_PSL_Clock_Expression"
}
]
}
}
}
]
}
},
"PSL_Invariant_FL_Property": {
"type": "PREC_RIGHT",
"value": "invariant_property",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][lL][wW][aA][yY][sS]"
}
}
},
"named": false,
"value": "always"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][vV][eE][rR]"
}
}
},
"named": false,
"value": "never"
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
]
}
},
"PSL_Ocurrence_FL_Property": {
"type": "PREC_RIGHT",
"value": "occurrence_property",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT]"
}
}
},
"named": false,
"value": "next"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][vV][eE][nN][tT][uU][aA][lL][lL][yY]"
}
}
},
"named": false,
"value": "eventually"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "!"
}
},
{
"type": "BLANK"
}
]
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
]
}
},
"PSL_Implication_FL_Property": {
"type": "PREC_RIGHT",
"value": "property_implication",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "property_implication",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "->"
}
}
},
{
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "<->"
}
}
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
]
}
}
}
]
}
},
"PSL_Logical_FL_Property": {
"type": "PREC_RIGHT",
"value": "logical_property",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
},
{
"type": "REPEAT1",
"content": {
"type": "PREC_LEFT",
"value": "logical_property",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][nN][dD]"
}
}
},
"named": false,
"value": "and"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][rR]"
}
}
},
"named": false,
"value": "or"
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
]
}
}
}
]
}
},
"PSL_Factor_FL_Property": {
"type": "PREC_LEFT",
"value": "property_factor",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][oO][tT]"
}
}
},
"named": false,
"value": "not"
}
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
]
}
},
"PSL_Extended_Ocurrence_FL_Property": {
"type": "PREC_RIGHT",
"value": "occurrence_property",
"content": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[eE][vV][eE][nN][tT][uU][aA][lL][lL][yY]"
}
}
},
"named": false,
"value": "eventually"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT]"
}
}
},
"named": false,
"value": "next"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT][__][aA]"
}
}
},
"named": false,
"value": "next_a"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT][__][eE]"
}
}
},
"named": false,
"value": "next_e"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT][__][eE][vV][eE][nN][tT]"
}
}
},
"named": false,
"value": "next_event"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT][__][eE][vV][eE][nN][tT][__][aA]"
}
}
},
"named": false,
"value": "next_event_a"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][eE][xX][tT][__][eE][vV][eE][nN][tT][__][eE]"
}
}
},
"named": false,
"value": "next_event_e"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "!"
}
},
{
"type": "BLANK"
}
]
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_Extended_Ocurrence_argument"
}
]
}
},
"_PSL_Extended_Ocurrence_argument": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Extended_Ocurrence_FL_Property_Count_Specification"
},
{
"type": "SYMBOL",
"name": "_PSL_Extended_Ocurrence_FL_Property_Until_Specification"
}
]
},
{
"type": "STRING",
"value": "("
},
{
"type": "FIELD",
"name": "Property",
"content": {
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
},
{
"type": "STRING",
"value": ")"
}
]
},
"_PSL_Extended_Ocurrence_FL_Property_Count_Specification": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Count"
}
]
},
"_PSL_Extended_Ocurrence_FL_Property_Until_Specification": {
"type": "PREC",
"value": "parenthesized_boolean",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "FIELD",
"name": "Boolean",
"content": {
"type": "SYMBOL",
"name": "_PSL_Boolean"
}
},
{
"type": "STRING",
"value": ")"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Count"
},
{
"type": "BLANK"
}
]
}
]
}
},
"PSL_Termination_FL_Property": {
"type": "PREC_LEFT",
"value": "termination_property",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][sS][yY][nN][cC][__][aA][bB][oO][rR][tT]"
}
}
},
"named": false,
"value": "async_abort"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][yY][nN][cC][__][aA][bB][oO][rR][tT]"
}
}
},
"named": false,
"value": "sync_abort"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][bB][oO][rR][tT]"
}
}
},
"named": false,
"value": "abort"
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
}
]
}
},
"PSL_Bounding_FL_Property": {
"type": "PREC_RIGHT",
"value": "bounding_property",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[uU][nN][tT][iI][lL]"
}
}
},
"named": false,
"value": "until"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][eE][fF][oO][rR][eE]"
}
}
},
"named": false,
"value": "before"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "!"
}
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "_"
}
},
{
"type": "BLANK"
}
]
}
]
}
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
]
}
},
"PSL_Suffix_Implication_FL_Property": {
"type": "CHOICE",
"members": [
{
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "FIELD",
"name": "SERE",
"content": {
"type": "SYMBOL",
"name": "_PSL_SERE"
}
},
{
"type": "STRING",
"value": "}"
},
{
"type": "STRING",
"value": "("
},
{
"type": "FIELD",
"name": "Property",
"content": {
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
},
{
"type": "STRING",
"value": ")"
}
]
}
},
{
"type": "PREC_RIGHT",
"value": "sequence_implication",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "Sequence",
"content": {
"type": "SYMBOL",
"name": "_PSL_Sequence"
}
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "|=>"
}
}
}
},
{
"type": "FIELD",
"name": "Property",
"content": {
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "Sequence",
"content": {
"type": "SYMBOL",
"name": "_PSL_Sequence"
}
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "STRING",
"value": "|->"
}
}
}
},
{
"type": "FIELD",
"name": "Property",
"content": {
"type": "SYMBOL",
"name": "_PSL_FL_Property"
}
}
]
}
]
}
}
]
},
"PSL_Parameterized_Property": {
"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": "PSL_Parameters_Definition"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "FIELD",
"name": "operator",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][nN][dD]"
}
}
},
"named": false,
"value": "and"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[oO][rR]"
}
}
},
"named": false,
"value": "or"
}
]
}
},
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_PSL_FL_Property"
},
{
"type": "STRING",
"value": ")"
}
]
},
"PSL_Property_Replicator": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][oO][rR][aA][lL][lL]"
}
}
},
"named": false,
"value": "forall"
},
{
"type": "SYMBOL",
"name": "PSL_Parameter_Specification"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "FIELD",
"name": "Property",
"content": {
"type": "CHOICE",
"members": [
{
"type": "PREC_DYNAMIC",
"value": 3,
"content": {
"type": "SYMBOL",
"name": "_PSL_Property_Instance"
}
},
{
"type": "SYMBOL",
"name": "_PSL_Property"
}
]
}
}
]
},
"PSL_Index_Range": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "_PSL_Range"
},
{
"type": "STRING",
"value": ")"
}
]
},
"PSL_Value_Set": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "boolean"
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "SYMBOL",
"name": "_PSL_Value_Range"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_PSL_Value_Range"
}
]
}
},
{
"type": "STRING",
"value": "}"
}
]
}
]
},
"boolean": {
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][oO][oO][lL][eE][aA][nN]"
}
}
},
"named": false,
"value": "boolean"
},
"_PSL_Value_Range": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Value"
},
{
"type": "SYMBOL",
"name": "_PSL_Range"
}
]
},
"PSL_Property_Declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][rR][oO][pP][eE][rR][tT][yY]"
}
}
},
"named": false,
"value": "property"
},
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "PSL_Formal_Parameter_List"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"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": "PREC_DYNAMIC",
"value": 3,
"content": {
"type": "SYMBOL",
"name": "_PSL_Property_Instance"
}
},
{
"type": "SYMBOL",
"name": "_PSL_Property"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"PSL_Sequence_Declaration": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][eE][qQ][uU][eE][nN][cC][eE]"
}
}
},
"named": false,
"value": "sequence"
},
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "PSL_Formal_Parameter_List"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"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": "_PSL_Sequence"
},
{
"type": "STRING",
"value": ";"
}
]
},
"PSL_Formal_Parameter_List": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Formal_Parameter"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "SYMBOL",
"name": "PSL_Formal_Parameter"
}
]
}
}
]
},
"PSL_Formal_Parameter": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Parameter_Specification"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
}
]
}
}
]
}
]
},
"_PSL_Parameter_Specification": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Constant_Parameter_Specification"
},
{
"type": "SYMBOL",
"name": "PSL_Temporal_Parameter_Specification"
}
]
},
"PSL_Constant_Parameter_Specification": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][nN][sS][tT]"
}
}
},
"named": false,
"value": "const"
},
{
"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]"
}
}
},
"named": false,
"value": "const"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_HDL_Type"
},
{
"type": "SYMBOL",
"name": "PSL_Type_Class"
}
]
}
]
}
]
},
"PSL_Temporal_Parameter_Specification": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][eE][qQ][uU][eE][nN][cC][eE]"
}
}
},
"named": false,
"value": "sequence"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[pP][rR][oO][pP][eE][rR][tT][yY]"
}
}
},
"named": false,
"value": "property"
}
]
},
"PSL_HDL_Type": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[hH][dD][lL][tT][yY][pP][eE]"
}
}
},
"named": false,
"value": "hdltype"
},
{
"type": "SYMBOL",
"name": "subtype_indication"
}
]
},
"PSL_Type_Class": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][oO][oO][lL][eE][aA][nN]"
}
}
},
"named": false,
"value": "boolean"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][iI][tT]"
}
}
},
"named": false,
"value": "bit"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[bB][iI][tT][__][vV][eE][cC][tT][oO][rR]"
}
}
},
"named": false,
"value": "bit_vector"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[nN][uU][mM][eE][rR][iI][cC]"
}
}
},
"named": false,
"value": "numeric"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][tT][rR][iI][nN][gG]"
}
}
},
"named": false,
"value": "string"
}
]
},
"PSL_Instance": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "PSL_Actual_Parameter_List"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"_PSL_Ambiguous_Instance": {
"type": "PREC_DYNAMIC",
"value": -1,
"content": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "PSL_Instance"
},
"named": true,
"value": "PSL_Ambiguous_Instance"
}
]
}
},
"_PSL_Sequence_Instance": {
"type": "PREC_DYNAMIC",
"value": -2,
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "PSL_Instance"
},
"named": true,
"value": "PSL_Sequence_Instance"
}
},
"_PSL_Property_Instance": {
"type": "PREC_DYNAMIC",
"value": -2,
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "PSL_Instance"
},
"named": true,
"value": "PSL_Property_Instance"
}
},
"PSL_Actual_Parameter_List": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Actual_Parameter"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "PSL_Actual_Parameter"
}
]
}
}
]
},
"PSL_Actual_Parameter": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_Any_Type"
},
{
"type": "SYMBOL",
"name": "_PSL_Sequence"
},
{
"type": "SYMBOL",
"name": "_PSL_Property"
}
]
},
"_PSL_Directive": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_Assert_Directive"
},
{
"type": "SYMBOL",
"name": "PSL_Assume_Directive"
},
{
"type": "SYMBOL",
"name": "PSL_Assume_Guarantee_Directive"
},
{
"type": "SYMBOL",
"name": "PSL_Restrict_Directive"
},
{
"type": "SYMBOL",
"name": "PSL_Restrict_Guarantee_Directive"
},
{
"type": "SYMBOL",
"name": "PSL_Cover_Directive"
},
{
"type": "SYMBOL",
"name": "PSL_Fairness_Directive"
},
{
"type": "SYMBOL",
"name": "PSL_Strong_Fairness_Directive"
}
]
},
"PSL_Assert_Directive": {
"type": "PREC",
"value": "psl_assertion",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][sS][sS][eE][rR][tT]"
}
}
},
"named": false,
"value": "assert"
},
{
"type": "SYMBOL",
"name": "_PSL_Property"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_report"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
}
},
"PSL_Assume_Directive": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][sS][sS][uU][mM][eE]"
}
}
},
"named": false,
"value": "assume"
},
{
"type": "SYMBOL",
"name": "_PSL_Property"
},
{
"type": "STRING",
"value": ";"
}
]
},
"PSL_Assume_Guarantee_Directive": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[aA][sS][sS][uU][mM][eE][__][gG][uU][aA][rR][aA][nN][tT][eE][eE]"
}
}
},
"named": false,
"value": "assume_guarantee"
},
{
"type": "SYMBOL",
"name": "_PSL_Property"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_report"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"PSL_Restrict_Directive": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][eE][sS][tT][rR][iI][cC][tT]"
}
}
},
"named": false,
"value": "restrict"
},
{
"type": "SYMBOL",
"name": "_PSL_Sequence"
},
{
"type": "STRING",
"value": ";"
}
]
},
"PSL_Restrict_Guarantee_Directive": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[rR][eE][sS][tT][rR][iI][cC][tT][__][gG][uU][aA][rR][aA][nN][tT][eE][eE]"
}
}
},
"named": false,
"value": "restrict_guarantee"
},
{
"type": "SYMBOL",
"name": "_PSL_Sequence"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_report"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"PSL_Cover_Directive": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[cC][oO][vV][eE][rR]"
}
}
},
"named": false,
"value": "cover"
},
{
"type": "SYMBOL",
"name": "_PSL_Sequence"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_report"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"PSL_Fairness_Directive": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][aA][iI][rR][nN][eE][sS][sS]"
}
}
},
"named": false,
"value": "fairness"
},
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
},
{
"type": "STRING",
"value": ";"
}
]
},
"PSL_Strong_Fairness_Directive": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "label"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[sS][tT][rR][oO][nN][gG]"
}
}
},
"named": false,
"value": "strong"
},
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[fF][aA][iI][rR][nN][eE][sS][sS]"
}
}
},
"named": false,
"value": "fairness"
},
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
},
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_PSL_Boolean"
},
{
"type": "STRING",
"value": ";"
}
]
},
"_PSL_Verification_Unit": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "PSL_VUnit"
},
{
"type": "SYMBOL",
"name": "PSL_VProp"
},
{
"type": "SYMBOL",
"name": "PSL_VMode"
}
]
},
"PSL_VUnit": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][uU][nN][iI][tT]"
}
}
},
"named": false,
"value": "vunit"
},
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
},
{
"type": "SYMBOL",
"name": "PSL_Verification_Unit_Body"
}
]
},
"PSL_VProp": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][pP][rR][oO][pP]"
}
}
},
"named": false,
"value": "vprop"
},
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
},
{
"type": "SYMBOL",
"name": "PSL_Verification_Unit_Body"
}
]
},
"PSL_VMode": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[vV][mM][oO][dD][eE]"
}
}
},
"named": false,
"value": "vmode"
},
{
"type": "SYMBOL",
"name": "_PSL_Identifier"
},
{
"type": "SYMBOL",
"name": "PSL_Verification_Unit_Body"
}
]
},
"PSL_Verification_Unit_Body": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "SYMBOL",
"name": "PSL_Hierarchical_HDL_Name"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "{"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "PSL_Inherit_Spec"
}
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_PSL_VUnit_Item"
}
},
{
"type": "STRING",
"value": "}"
}
]
},
"PSL_Hierarchical_HDL_Name": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_PSL_HDL_Module_NAME"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "."
}
},
{
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "STRING",
"value": "/"
}
}
]
},
{
"type": "FIELD",
"name": "instance",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
}
]
}
}
]
},
"_PSL_HDL_Module_NAME": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "entity",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "FIELD",
"name": "architecture",
"content": {
"type": "SYMBOL",
"name": "_simple_name"
}
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"PSL_Inherit_Spec": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "TOKEN",
"content": {
"type": "PREC",
"value": 2,
"content": {
"type": "PATTERN",
"value": "[iI][nN][hH][eE][rR][iI][tT]"
}
}
},
"named": false,
"value": "inherit"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_name"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_name"
}
]
}
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_PSL_VUnit_Item": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_declaration"
},
{
"type": "SYMBOL",
"name": "_concurrent_statement"
}
]
}
},
"extras": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "SYMBOL",
"name": "tool_directive"
},
{
"type": "PATTERN",
"value": "\\s"
}
],
"conflicts": [
[
"_procedure_specification",
"procedure_instantiation_declaration"
],
[
"_function_specification",
"function_instantiation_declaration"
],
[
"positional_association_element",
"expression_list"
],
[
"positional_association_element",
"group_constituent_list",
"_primary"
],
[
"index_constraint",
"slice_name"
],
[
"resolution_function",
"type_mark",
"_primary"
],
[
"type_mark",
"_primary"
],
[
"type_mark",
"_primary",
"entity_instantiation"
],
[
"type_mark",
"_primary",
"PSL_Hierarchical_HDL_Name"
],
[
"type_mark",
"function_call"
],
[
"type_mark",
"ambiguous_name",
"function_call"
],
[
"type_mark",
"ambiguous_name",
"function_call",
"slice_name"
],
[
"type_mark",
"ambiguous_name",
"function_call",
"slice_name",
"record_element_resolution",
"type_mark"
],
[
"attribute_name",
"type_mark"
],
[
"attribute_name",
"_primary"
],
[
"_predefined_designator",
"_predefined_designator_with_expression"
],
[
"attribute_name",
"range_attribute_name",
"type_mark"
],
[
"positional_association_element",
"index_constraint"
],
[
"positional_association_element",
"_primary"
],
[
"named_association_element",
"_primary"
],
[
"generic_clause"
],
[
"port_clause"
],
[
"procedure_parameter_clause"
],
[
"function_parameter_clause"
],
[
"generic_map_aspect"
],
[
"port_map_aspect"
],
[
"constant_interface_declaration",
"signal_interface_declaration",
"variable_interface_declaration"
],
[
"_constant_mode",
"_signal_mode",
"_variable_mode"
],
[
"if_generate"
],
[
"else_generate"
],
[
"elsif_generate"
],
[
"elsif_generate"
],
[
"generate_statement_body"
],
[
"case_generate_alternative"
],
[
"PSL_Instance",
"_simple_name"
],
[
"_PSL_Property_Instance",
"_PSL_Sequence_Instance",
"_PSL_Ambiguous_Instance"
],
[
"_PSL_Property_Instance",
"_PSL_Sequence_Instance"
],
[
"PSL_Property_Replicator"
],
[
"PSL_Property_Declaration"
],
[
"_PSL_Compound_SERE",
"_PSL_Sequence"
],
[
"configuration_specification"
]
],
"precedences": [
[
{
"type": "STRING",
"value": "declaration"
},
{
"type": "STRING",
"value": "primary_unit"
}
],
[
{
"type": "STRING",
"value": "declaration"
},
{
"type": "STRING",
"value": "secondary_unit"
}
],
[
{
"type": "STRING",
"value": "declaration"
},
{
"type": "STRING",
"value": "context_item"
}
],
[
{
"type": "STRING",
"value": "concurrent_statement"
},
{
"type": "STRING",
"value": "sequential_statement"
}
],
[
{
"type": "STRING",
"value": "concurrent_statement"
},
{
"type": "STRING",
"value": "declaration"
}
],
[
{
"type": "STRING",
"value": "component_declaration"
},
{
"type": "STRING",
"value": "simple_name"
}
],
[
{
"type": "STRING",
"value": "procedure_call"
},
{
"type": "STRING",
"value": "component_instantiation"
}
],
[
{
"type": "STRING",
"value": "record_element_constraint"
},
{
"type": "STRING",
"value": "type_mark"
}
],
[
{
"type": "STRING",
"value": "record_element_resolution"
},
{
"type": "STRING",
"value": "resolution_function"
}
],
[
{
"type": "STRING",
"value": "type_mark"
},
{
"type": "STRING",
"value": "resolution_function"
}
],
[
{
"type": "STRING",
"value": "primary"
},
{
"type": "STRING",
"value": "resolution_function"
}
],
[
{
"type": "STRING",
"value": "primary"
},
{
"type": "STRING",
"value": "physical_literal"
}
],
[
{
"type": "STRING",
"value": "attribute_name"
},
{
"type": "STRING",
"value": "physical_literal"
}
],
[
{
"type": "STRING",
"value": "group_constituent_list"
},
{
"type": "STRING",
"value": "primary"
}
],
[
{
"type": "STRING",
"value": "group_constituent_list"
},
{
"type": "STRING",
"value": "type_mark"
}
],
[
{
"type": "STRING",
"value": "generate_statement_element"
},
{
"type": "STRING",
"value": "primary"
}
],
[
{
"type": "STRING",
"value": "vhdl_assertion"
},
{
"type": "STRING",
"value": "psl_assertion"
}
],
[
{
"type": "STRING",
"value": "range"
},
{
"type": "STRING",
"value": "exponentiation"
},
{
"type": "STRING",
"value": "factor"
},
{
"type": "STRING",
"value": "term"
},
{
"type": "STRING",
"value": "sign"
},
{
"type": "STRING",
"value": "simple_expression"
},
{
"type": "STRING",
"value": "shift_expression"
},
{
"type": "STRING",
"value": "relation"
},
{
"type": "STRING",
"value": "logical_expression"
},
{
"type": "STRING",
"value": "reduction"
},
{
"type": "STRING",
"value": "condition"
}
],
[
{
"type": "STRING",
"value": "union"
},
{
"type": "STRING",
"value": "clocked"
},
{
"type": "STRING",
"value": "SERE_repetition"
},
{
"type": "STRING",
"value": "sequence_within"
},
{
"type": "STRING",
"value": "sequence_and"
},
{
"type": "STRING",
"value": "sequence_or"
},
{
"type": "STRING",
"value": "sequence_fusion"
},
{
"type": "STRING",
"value": "sequence_concatenation"
},
{
"type": "STRING",
"value": "termination_property"
},
{
"type": "STRING",
"value": "occurrence_property"
},
{
"type": "STRING",
"value": "bounding_property"
},
{
"type": "STRING",
"value": "sequence_implication"
},
{
"type": "STRING",
"value": "property_implication"
},
{
"type": "STRING",
"value": "invariant_property"
}
],
[
{
"type": "STRING",
"value": "psl_function_call"
},
{
"type": "STRING",
"value": "parenthesized_boolean"
},
{
"type": "STRING",
"value": "parenthesized_expression"
},
{
"type": "STRING",
"value": "occurrence_property"
},
{
"type": "STRING",
"value": "parenthesized_property"
}
],
[
{
"type": "STRING",
"value": "logical_expression"
},
{
"type": "STRING",
"value": "logical_property"
}
],
[
{
"type": "STRING",
"value": "factor"
},
{
"type": "STRING",
"value": "property_factor"
}
],
[
{
"type": "STRING",
"value": "implication"
},
{
"type": "STRING",
"value": "property_implication"
}
]
],
"externals": [],
"inline": [
"_entity_name",
"_generate_specification",
"_configuration_item",
"_block_specification",
"_designator",
"_subprogram_declaration",
"_subprogram_kind",
"_subprogram_body",
"_subprogram_instantiation_declaration",
"_uninstantiated_name",
"_package_name",
"_scalar_type_definition",
"_range",
"_range_attribute_name",
"_numeric_type_definition",
"_unit",
"_discrete_range",
"_object_declaration",
"_constraint",
"_element_constraint",
"_resolution_indication",
"_generic_interface_declaration",
"_port_interface_declaration",
"_procedure_interface_declaration",
"_function_interface_declaration",
"_alias_denotator",
"_illegal_interface_declaration",
"_subprogram_interface_declaration",
"_formal_part",
"_actual_part",
"_generic_interface_list",
"_port_interface_list",
"_procedure_parameter_list",
"_function_parameter_list",
"_clause",
"_group_template",
"_group_constituent",
"_component_name",
"_name",
"_range_attribute_designator",
"_external_object_name",
"_name_or_label",
"_external_pathname",
"_expression",
"_condition",
"_simple_expression",
"_string_expression",
"_severity_expression",
"_file_open_kind",
"_time_expression",
"_literal",
"_numeric_literal",
"_element_association",
"_value",
"_choice",
"_function_name",
"_signal_name",
"_sensitivity_clause",
"_condition_clause",
"_timeout_clause",
"_signal_assignment_statement",
"_simple_signal_assignment",
"_conditional_signal_assignment",
"_selected_signal_assignment",
"_variable_assignment_statement",
"_iteration_scheme",
"_concurrent_signal_assignment",
"_generate_statement",
"_library_unit",
"ReferenceError",
"ReferenceError",
"_identifier",
"_abstract_literal",
"_PSL_Identifier",
"_PSL_Boolean",
"_PSL_Any_Type",
"_PSL_Clock_Expression",
"_PSL_Value",
"_PSL_FL_Property",
"_PSL_Property",
"_PSL_HDL_Module_NAME"
],
"supertypes": []
}