{
"$schema": "https://tree-sitter.github.io/tree-sitter/assets/schemas/grammar.schema.json",
"name": "gram",
"rules": {
"gram_pattern": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "root",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "record"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_top_level_pattern"
}
}
]
},
"_top_level_pattern": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "annotated_pattern"
},
{
"type": "SYMBOL",
"name": "subject_pattern"
},
{
"type": "SYMBOL",
"name": "node_pattern"
},
{
"type": "SYMBOL",
"name": "relationship_pattern"
}
]
},
"annotated_pattern": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "annotations",
"content": {
"type": "SYMBOL",
"name": "annotations"
}
},
{
"type": "FIELD",
"name": "elements",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "subject_pattern"
},
{
"type": "SYMBOL",
"name": "_path_pattern"
}
]
}
}
]
},
"subject_pattern": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "FIELD",
"name": "elements",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "|"
},
{
"type": "SYMBOL",
"name": "subject_pattern_elements"
}
]
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
"subject_pattern_elements": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_subject_pattern_element"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_subject_pattern_element"
}
]
}
}
]
},
"_subject_pattern_element": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "subject_pattern"
},
{
"type": "SYMBOL",
"name": "_path_pattern"
},
{
"type": "SYMBOL",
"name": "pattern_reference"
}
]
},
"annotations": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "identified_annotation"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "property_annotation"
}
}
]
},
{
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "property_annotation"
}
}
]
},
"property_annotation": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@"
},
{
"type": "FIELD",
"name": "key",
"content": {
"type": "SYMBOL",
"name": "symbol"
}
},
{
"type": "STRING",
"value": "("
},
{
"type": "FIELD",
"name": "value",
"content": {
"type": "SYMBOL",
"name": "_value"
}
},
{
"type": "STRING",
"value": ")"
}
]
},
"identified_annotation": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@@"
},
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "identifier",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "FIELD",
"name": "labels",
"content": {
"type": "SYMBOL",
"name": "labels"
}
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "identifier",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "FIELD",
"name": "labels",
"content": {
"type": "SYMBOL",
"name": "labels"
}
}
]
}
]
}
]
},
"_path_pattern": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "relationship_pattern"
},
{
"type": "SYMBOL",
"name": "node_pattern"
}
]
},
"node_pattern": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": ")"
}
]
},
"relationship_pattern": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "left",
"content": {
"type": "SYMBOL",
"name": "node_pattern"
}
},
{
"type": "FIELD",
"name": "kind",
"content": {
"type": "SYMBOL",
"name": "_relationship_kind"
}
},
{
"type": "FIELD",
"name": "right",
"content": {
"type": "SYMBOL",
"name": "_path_pattern"
}
}
]
},
"pattern_reference": {
"type": "FIELD",
"name": "identifier",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
"_identifier": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "symbol"
},
{
"type": "SYMBOL",
"name": "quoted_name"
},
{
"type": "SYMBOL",
"name": "integer"
}
]
},
"_subject": {
"type": "CHOICE",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "FIELD",
"name": "identifier",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "FIELD",
"name": "labels",
"content": {
"type": "SYMBOL",
"name": "labels"
}
},
{
"type": "FIELD",
"name": "record",
"content": {
"type": "SYMBOL",
"name": "record"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "identifier",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "FIELD",
"name": "labels",
"content": {
"type": "SYMBOL",
"name": "labels"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "identifier",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "FIELD",
"name": "record",
"content": {
"type": "SYMBOL",
"name": "record"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "labels",
"content": {
"type": "SYMBOL",
"name": "labels"
}
},
{
"type": "FIELD",
"name": "record",
"content": {
"type": "SYMBOL",
"name": "record"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "identifier",
"content": {
"type": "SYMBOL",
"name": "_identifier"
}
},
{
"type": "FIELD",
"name": "labels",
"content": {
"type": "SYMBOL",
"name": "labels"
}
},
{
"type": "FIELD",
"name": "record",
"content": {
"type": "SYMBOL",
"name": "record"
}
}
]
}
]
},
"_value": {
"type": "CHOICE",
"members": [
{
"type": "PREC_RIGHT",
"value": 2,
"content": {
"type": "SYMBOL",
"name": "range"
}
},
{
"type": "PREC_RIGHT",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_numeric_literal"
}
},
{
"type": "PREC",
"value": 3,
"content": {
"type": "SYMBOL",
"name": "boolean_literal"
}
},
{
"type": "PREC",
"value": 2,
"content": {
"type": "SYMBOL",
"name": "tagged_string"
}
},
{
"type": "PREC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "symbol"
}
},
{
"type": "SYMBOL",
"name": "string_literal"
},
{
"type": "SYMBOL",
"name": "array"
},
{
"type": "SYMBOL",
"name": "map"
}
]
},
"_scalar_value": {
"type": "CHOICE",
"members": [
{
"type": "PREC_RIGHT",
"value": 2,
"content": {
"type": "SYMBOL",
"name": "range"
}
},
{
"type": "PREC_RIGHT",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "_numeric_literal"
}
},
{
"type": "PREC",
"value": 3,
"content": {
"type": "SYMBOL",
"name": "boolean_literal"
}
},
{
"type": "PREC",
"value": 2,
"content": {
"type": "SYMBOL",
"name": "tagged_string"
}
},
{
"type": "PREC",
"value": 1,
"content": {
"type": "SYMBOL",
"name": "symbol"
}
},
{
"type": "SYMBOL",
"name": "string_literal"
}
]
},
"array": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_scalar_value"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "_scalar_value"
}
]
}
}
]
},
{
"type": "STRING",
"value": "]"
}
]
},
"labels": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_label"
}
},
"_label": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": ":"
},
{
"type": "STRING",
"value": "::"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "symbol"
},
{
"type": "SYMBOL",
"name": "quoted_name"
}
]
}
]
},
"record": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "record_property"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "record_property"
}
]
}
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "}"
}
]
},
"record_property": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "key",
"content": {
"type": "SYMBOL",
"name": "_key_name"
}
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": ":"
},
{
"type": "STRING",
"value": "::"
}
]
},
{
"type": "FIELD",
"name": "value",
"content": {
"type": "SYMBOL",
"name": "_value"
}
}
]
},
"map": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "map_entry"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": ","
},
{
"type": "SYMBOL",
"name": "map_entry"
}
]
}
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "}"
}
]
},
"map_entry": {
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "key",
"content": {
"type": "SYMBOL",
"name": "_key_name"
}
},
{
"type": "STRING",
"value": ":"
},
{
"type": "FIELD",
"name": "value",
"content": {
"type": "SYMBOL",
"name": "_scalar_value"
}
}
]
},
"symbol": {
"type": "TOKEN",
"content": {
"type": "PATTERN",
"value": "[a-zA-Z_][0-9a-zA-Z_.\\-@]*"
}
},
"range": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "lower",
"content": {
"type": "SYMBOL",
"name": "_numeric_literal"
}
},
{
"type": "STRING",
"value": ".."
},
{
"type": "FIELD",
"name": "upper",
"content": {
"type": "SYMBOL",
"name": "_numeric_literal"
}
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "lower",
"content": {
"type": "SYMBOL",
"name": "_numeric_literal"
}
},
{
"type": "STRING",
"value": "..."
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "..."
},
{
"type": "FIELD",
"name": "upper",
"content": {
"type": "SYMBOL",
"name": "_numeric_literal"
}
}
]
}
]
},
"boolean_literal": {
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "true"
},
{
"type": "STRING",
"value": "false"
}
]
},
"_numeric_literal": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "integer"
},
{
"type": "SYMBOL",
"name": "decimal"
},
{
"type": "SYMBOL",
"name": "hexadecimal"
},
{
"type": "SYMBOL",
"name": "octal"
},
{
"type": "SYMBOL",
"name": "measurement"
}
]
},
"integer": {
"type": "TOKEN",
"content": {
"type": "PATTERN",
"value": "-?(0|[1-9]\\d*)"
}
},
"decimal": {
"type": "TOKEN",
"content": {
"type": "PATTERN",
"value": "-?(0|[1-9]\\d*)\\.\\d+"
}
},
"hexadecimal": {
"type": "TOKEN",
"content": {
"type": "PATTERN",
"value": "0x[0-9a-fA-F]+"
}
},
"octal": {
"type": "TOKEN",
"content": {
"type": "PATTERN",
"value": "0[0-7]+"
}
},
"measurement": {
"type": "TOKEN",
"content": {
"type": "PATTERN",
"value": "-?(0|[1-9]\\d*)([a-zA-Z]+)"
}
},
"quoted_name": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "`"
},
{
"type": "FIELD",
"name": "content",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_backticked_text"
},
"named": true,
"value": "string_content"
}
},
{
"type": "STRING",
"value": "`"
}
]
},
"double_quoted_name": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\""
},
{
"type": "FIELD",
"name": "content",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_double_quoted_text"
},
"named": true,
"value": "string_content"
}
},
{
"type": "STRING",
"value": "\""
}
]
},
"_key_name": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "symbol"
},
{
"type": "SYMBOL",
"name": "quoted_name"
},
{
"type": "SYMBOL",
"name": "double_quoted_name"
}
]
},
"string_literal": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_single_quoted_string"
},
{
"type": "SYMBOL",
"name": "_double_quoted_string"
},
{
"type": "SYMBOL",
"name": "_backticked_string"
},
{
"type": "SYMBOL",
"name": "_fenced_string"
}
]
},
"_single_quoted_string": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "'"
},
{
"type": "FIELD",
"name": "content",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_single_quoted_text"
},
"named": true,
"value": "string_content"
}
},
{
"type": "STRING",
"value": "'"
}
]
},
"_single_quoted_text": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "(\\\\['bfnrt/\\\\]|[^'\\\\\\n])*"
}
},
"_double_quoted_string": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\""
},
{
"type": "FIELD",
"name": "content",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_double_quoted_text"
},
"named": true,
"value": "string_content"
}
},
{
"type": "STRING",
"value": "\""
}
]
},
"_double_quoted_text": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "(\\\\[\"bfnrt/\\\\]|[^\"\\\\\\n])*"
}
},
"_backticked_string": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "`"
},
{
"type": "FIELD",
"name": "content",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_backticked_text"
},
"named": true,
"value": "string_content"
}
},
{
"type": "STRING",
"value": "`"
}
]
},
"_backticked_text": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "(\\\\[`bfnrt/\\\\]|[^`\\\\\\n])*"
}
},
"_fenced_string": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "```"
},
{
"type": "SYMBOL",
"name": "_fenced_string_body"
}
]
},
"_fenced_string_body": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "\n"
},
{
"type": "FIELD",
"name": "content",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_fenced_string_content"
},
"named": true,
"value": "string_content"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "```"
}
]
},
"_fenced_string_content": {
"type": "IMMEDIATE_TOKEN",
"content": {
"type": "PATTERN",
"value": "([^`]|`[^`]|``[^`])+"
}
},
"tagged_string": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "SYMBOL",
"name": "symbol"
}
},
{
"type": "STRING",
"value": "`"
},
{
"type": "FIELD",
"name": "content",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_backticked_text"
},
"named": true,
"value": "string_content"
}
},
{
"type": "STRING",
"value": "`"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "```"
},
{
"type": "FIELD",
"name": "tag",
"content": {
"type": "SYMBOL",
"name": "symbol"
}
},
{
"type": "STRING",
"value": "\n"
},
{
"type": "FIELD",
"name": "content",
"content": {
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_fenced_string_content"
},
"named": true,
"value": "string_content"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "```"
}
]
}
]
},
"_relationship_kind": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "undirected_arrow"
},
{
"type": "SYMBOL",
"name": "left_arrow"
},
{
"type": "SYMBOL",
"name": "right_arrow"
},
{
"type": "SYMBOL",
"name": "bidirectional_arrow"
}
]
},
"undirected_arrow": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "-"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "="
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "="
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "~"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "~"
}
]
}
]
},
"right_arrow": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "->"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "="
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "=>"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "~"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "~>"
}
]
}
]
},
"left_arrow": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "<-"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "-"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "<="
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "="
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "<~"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "~"
}
]
}
]
},
"bidirectional_arrow": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "<-"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "->"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "<="
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "=>"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "<~"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "FIELD",
"name": "subject",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_subject"
},
{
"type": "BLANK"
}
]
}
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "~>"
}
]
}
]
},
"comment": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "//"
},
{
"type": "PATTERN",
"value": ".*"
}
]
}
}
},
"extras": [
{
"type": "PATTERN",
"value": "\\s"
},
{
"type": "SYMBOL",
"name": "comment"
}
],
"conflicts": [],
"precedences": [],
"externals": [],
"inline": [],
"supertypes": [],
"reserved": {}
}