{
"$schema": "https://tree-sitter.github.io/tree-sitter/assets/schemas/grammar.schema.json",
"name": "msg",
"rules": {
"msg_file": {
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "SYMBOL",
"name": "_EMPTYLINE"
},
{
"type": "SYMBOL",
"name": "namespace"
},
{
"type": "SYMBOL",
"name": "property"
},
{
"type": "SYMBOL",
"name": "cplusplus"
},
{
"type": "SYMBOL",
"name": "import"
},
{
"type": "SYMBOL",
"name": "struct_decl"
},
{
"type": "SYMBOL",
"name": "class_decl"
},
{
"type": "SYMBOL",
"name": "message_decl"
},
{
"type": "SYMBOL",
"name": "packet_decl"
},
{
"type": "SYMBOL",
"name": "enum_decl"
},
{
"type": "SYMBOL",
"name": "enum"
},
{
"type": "SYMBOL",
"name": "message"
},
{
"type": "SYMBOL",
"name": "packet"
},
{
"type": "SYMBOL",
"name": "class"
},
{
"type": "SYMBOL",
"name": "struct"
}
]
}
},
"cplusplus": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "cplusplus"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "targetspec"
},
"named": true,
"value": "target"
},
{
"type": "STRING",
"value": ")"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "{{"
},
{
"type": "ALIAS",
"content": {
"type": "PATTERN",
"value": "([^}}]|[}][^}])*"
},
"named": true,
"value": "body"
},
{
"type": "STRING",
"value": "}}"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "BLANK"
}
]
}
]
},
"comment": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_commentline"
}
}
},
"_commentline": {
"type": "TOKEN",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "//"
},
{
"type": "PATTERN",
"value": "(\\\\+(.|\\r?\\n)|[^\\\\\\n])*"
}
]
}
},
"namespace": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "namespace"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"_qname": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "::"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_NAME"
},
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "::"
},
{
"type": "SYMBOL",
"name": "_NAME"
}
]
}
}
]
},
"targetspec": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_targetitem"
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_targetitem"
}
}
]
},
"_targetitem": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_NAME"
},
{
"type": "STRING",
"value": "::"
},
{
"type": "SYMBOL",
"name": "_INTCONSTANT"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "STRING",
"value": "."
},
{
"type": "STRING",
"value": ","
},
{
"type": "STRING",
"value": "~"
},
{
"type": "STRING",
"value": "="
},
{
"type": "STRING",
"value": "&"
}
]
},
"import": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "import"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "importspec"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": ";"
}
]
},
"importspec": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_import_un_qname"
},
{
"type": "SEQ",
"members": [
{
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_importname"
},
{
"type": "STRING",
"value": "."
}
]
}
},
{
"type": "SYMBOL",
"name": "_import_un_qname"
}
]
}
]
},
"_import_un_qname": {
"type": "SYMBOL",
"name": "_importname"
},
"_importname": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_NAME"
},
{
"type": "STRING",
"value": "message"
},
{
"type": "STRING",
"value": "packet"
},
{
"type": "STRING",
"value": "class"
},
{
"type": "STRING",
"value": "struct"
},
{
"type": "STRING",
"value": "enum"
},
{
"type": "STRING",
"value": "abstract"
}
]
},
"struct_decl": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "struct"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": ";"
}
]
},
"class_decl": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "class"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "noncobject"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "extends"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "extends"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"message_decl": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "message"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": ";"
}
]
},
"packet_decl": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "packet"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": ";"
}
]
},
"enum_decl": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "enum"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": ";"
}
]
},
"enum": {
"type": "PREC",
"value": 10,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "enum"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": "{"
},
{
"type": "ALIAS",
"content": {
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_enumfield_or_property"
},
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "SYMBOL",
"name": "_EMPTYLINE"
}
]
}
},
"named": true,
"value": "body"
},
{
"type": "STRING",
"value": "}"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "BLANK"
}
]
}
]
}
},
"_enumfield_or_property": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "enumfield"
},
"named": true,
"value": "field"
},
{
"type": "SYMBOL",
"name": "property"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "BLANK"
}
]
}
]
}
},
"enumfield": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_NAME"
},
"named": true,
"value": "name"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "="
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "enumvalue"
},
"named": true,
"value": "value"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
"enumvalue": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_INTCONSTANT"
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "-"
},
{
"type": "SYMBOL",
"name": "_INTCONSTANT"
}
]
},
{
"type": "SYMBOL",
"name": "_NAME"
}
]
},
"message": {
"type": "PREC",
"value": 10,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_message_header"
},
{
"type": "SYMBOL",
"name": "_body"
}
]
}
},
"packet": {
"type": "PREC",
"value": 10,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_packet_header"
},
{
"type": "SYMBOL",
"name": "_body"
}
]
}
},
"class": {
"type": "PREC",
"value": 10,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_class_header"
},
{
"type": "SYMBOL",
"name": "_body"
}
]
}
},
"struct": {
"type": "PREC",
"value": 10,
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "BLANK"
}
]
},
{
"type": "SYMBOL",
"name": "_struct_header"
},
{
"type": "SYMBOL",
"name": "_body"
}
]
}
},
"_message_header": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "message"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "extends"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "extends"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"_packet_header": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "packet"
},
{
"type": "SYMBOL",
"name": "_qname"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "extends"
},
{
"type": "SYMBOL",
"name": "_qname"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"_class_header": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "class"
},
{
"type": "ALIAS",
"content": {
"type": "PREC_LEFT",
"value": 0,
"content": {
"type": "SYMBOL",
"name": "_qname"
}
},
"named": true,
"value": "name"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "extends"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "extends"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"_struct_header": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "struct"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "extends"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "extends"
}
]
},
{
"type": "BLANK"
}
]
}
]
},
"_body": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "{"
},
{
"type": "CHOICE",
"members": [
{
"type": "PATTERN",
"value": "\\s"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "REPEAT",
"content": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "field"
},
{
"type": "SYMBOL",
"name": "property"
},
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "SYMBOL",
"name": "_EMPTYLINE"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "comment"
},
{
"type": "BLANK"
}
]
}
]
}
},
"named": true,
"value": "body"
},
{
"type": "STRING",
"value": "}"
},
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": ";"
},
{
"type": "BLANK"
}
]
}
]
},
"field": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_fieldtypename"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "opt_fieldvector"
},
"named": true,
"value": "vector"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_inline_properties"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_fieldtypename"
},
{
"type": "CHOICE",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "opt_fieldvector"
},
"named": true,
"value": "vector"
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_inline_properties"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": "="
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "fieldvalue"
},
"named": true,
"value": "value"
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_inline_properties"
},
{
"type": "BLANK"
}
]
},
{
"type": "STRING",
"value": ";"
}
]
}
]
},
"_fieldtypename": {
"type": "SEQ",
"members": [
{
"type": "CHOICE",
"members": [
{
"type": "STRING",
"value": "abstract"
},
{
"type": "BLANK"
}
]
},
{
"type": "ALIAS",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_fielddatatype"
},
{
"type": "BLANK"
}
]
},
"named": true,
"value": "type"
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_NAME"
},
"named": true,
"value": "name"
}
]
},
"_fielddatatype": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_fieldsimpledatatype"
},
{
"type": "SEQ",
"members": [
{
"type": "SYMBOL",
"name": "_fieldsimpledatatype"
},
{
"type": "STRING",
"value": "*"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "const"
},
{
"type": "SYMBOL",
"name": "_fieldsimpledatatype"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "const"
},
{
"type": "SYMBOL",
"name": "_fieldsimpledatatype"
},
{
"type": "STRING",
"value": "*"
}
]
}
]
},
"_fieldsimpledatatype": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_qname"
},
{
"type": "STRING",
"value": "char"
},
{
"type": "STRING",
"value": "short"
},
{
"type": "STRING",
"value": "int"
},
{
"type": "STRING",
"value": "long"
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "unsigned"
},
{
"type": "STRING",
"value": "char"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "unsigned"
},
{
"type": "STRING",
"value": "short"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "unsigned"
},
{
"type": "STRING",
"value": "int"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "unsigned"
},
{
"type": "STRING",
"value": "long"
}
]
},
{
"type": "STRING",
"value": "double"
},
{
"type": "STRING",
"value": "string"
},
{
"type": "STRING",
"value": "bool"
}
]
},
"opt_fieldvector": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_INTCONSTANT"
},
"named": true,
"value": "size"
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_qname"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "STRING",
"value": "]"
}
]
}
]
},
"fieldvalue": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_fieldvalueitem"
}
},
"_fieldvalueitem": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_STRINGCONSTANT"
},
{
"type": "SYMBOL",
"name": "_CHARCONSTANT"
},
{
"type": "SYMBOL",
"name": "_INTCONSTANT"
},
{
"type": "SYMBOL",
"name": "_REALCONSTANT"
},
{
"type": "STRING",
"value": "true"
},
{
"type": "STRING",
"value": "false"
},
{
"type": "SYMBOL",
"name": "_NAME"
},
{
"type": "STRING",
"value": "::"
},
{
"type": "STRING",
"value": "?"
},
{
"type": "STRING",
"value": ":"
},
{
"type": "STRING",
"value": "&&"
},
{
"type": "STRING",
"value": "||"
},
{
"type": "STRING",
"value": "##"
},
{
"type": "STRING",
"value": "=="
},
{
"type": "STRING",
"value": "!="
},
{
"type": "STRING",
"value": ">"
},
{
"type": "STRING",
"value": ">="
},
{
"type": "STRING",
"value": "<"
},
{
"type": "STRING",
"value": "<="
},
{
"type": "STRING",
"value": "&"
},
{
"type": "STRING",
"value": "|"
},
{
"type": "STRING",
"value": "#"
},
{
"type": "STRING",
"value": "<<"
},
{
"type": "STRING",
"value": ">>"
},
{
"type": "STRING",
"value": "+"
},
{
"type": "STRING",
"value": "-"
},
{
"type": "STRING",
"value": "*"
},
{
"type": "STRING",
"value": "/"
},
{
"type": "STRING",
"value": "%"
},
{
"type": "STRING",
"value": "^"
},
{
"type": "STRING",
"value": "!"
},
{
"type": "STRING",
"value": "~"
},
{
"type": "STRING",
"value": "."
},
{
"type": "STRING",
"value": ","
},
{
"type": "STRING",
"value": "("
},
{
"type": "STRING",
"value": ")"
},
{
"type": "STRING",
"value": "["
},
{
"type": "STRING",
"value": "]"
}
]
},
"property": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@"
},
{
"type": "SYMBOL",
"name": "_prop_body"
},
{
"type": "STRING",
"value": ";"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "enum"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": "("
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_NAME"
},
"named": true,
"value": "tag"
},
{
"type": "STRING",
"value": ")"
},
{
"type": "STRING",
"value": ";"
}
]
}
]
},
"_prop_body": {
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_NAME"
},
"named": true,
"value": "name"
},
{
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "["
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_NAME"
},
"named": true,
"value": "index"
},
{
"type": "STRING",
"value": "]"
}
]
},
{
"type": "BLANK"
}
]
},
{
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_prop_parenthesized"
},
{
"type": "BLANK"
}
]
}
]
},
"_prop_parenthesized": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "ALIAS",
"content": {
"type": "REPEAT1",
"content": {
"type": "SYMBOL",
"name": "_prop_value"
}
},
"named": true,
"value": "tag"
},
{
"type": "STRING",
"value": ")"
}
]
}
},
"_prop_value": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "_prop_value_parenthesized"
},
{
"type": "PATTERN",
"value": "[^\\(\\)]+"
}
]
},
"_prop_value_parenthesized": {
"type": "PREC_RIGHT",
"value": 0,
"content": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "REPEAT",
"content": {
"type": "SYMBOL",
"name": "_prop_value"
}
},
{
"type": "STRING",
"value": ")"
}
]
}
},
"cplusplus_parenthesized": {
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "("
},
{
"type": "REPEAT",
"content": {
"type": "CHOICE",
"members": [
{
"type": "SYMBOL",
"name": "cplusplus_parenthesized"
},
{
"type": "PATTERN",
"value": "[^\\(\\);]"
}
]
}
},
{
"type": "STRING",
"value": ")"
}
]
},
"_inline_properties": {
"type": "REPEAT1",
"content": {
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "inline_property"
},
"named": true,
"value": "property"
}
},
"inline_property": {
"type": "CHOICE",
"members": [
{
"type": "SEQ",
"members": [
{
"type": "STRING",
"value": "@"
},
{
"type": "SYMBOL",
"name": "_prop_body"
}
]
},
{
"type": "SEQ",
"members": [
{
"type": "ALIAS",
"content": {
"type": "STRING",
"value": "enum"
},
"named": true,
"value": "name"
},
{
"type": "STRING",
"value": "("
},
{
"type": "ALIAS",
"content": {
"type": "SYMBOL",
"name": "_NAME"
},
"named": true,
"value": "tag"
},
{
"type": "STRING",
"value": ")"
}
]
}
]
},
"_NAME": {
"type": "PATTERN",
"value": "[a-zA-Z_][a-zA-Z0-9_]*"
},
"_INTCONSTANT": {
"type": "PATTERN",
"value": "0[xX][0-9a-fA-F]+|[0-9]+"
},
"_REALCONSTANT": {
"type": "PATTERN",
"value": "[0-9]*\\.[0-9]+([eE][+-]?[0-9]+)?"
},
"_CHARCONSTANT": {
"type": "PATTERN",
"value": "'[^']'"
},
"_STRINGCONSTANT": {
"type": "PATTERN",
"value": "\"([^\"\\\\]|\\\\.)*\""
},
"_EMPTYLINE": {
"type": "PATTERN",
"value": "\\r?\\n\\s*\\r?\\n\\s*"
}
},
"extras": [
{
"type": "PATTERN",
"value": "\\s"
},
{
"type": "SYMBOL",
"name": "_commentline"
}
],
"conflicts": [],
"precedences": [],
"externals": [],
"inline": [],
"supertypes": [
"_targetitem"
],
"reserved": {}
}