1309 lines
29 KiB
JSON
1309 lines
29 KiB
JSON
{
|
|
"name": "d2",
|
|
"word": "_word",
|
|
"rules": {
|
|
"source_file": {
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_new_root_definition"
|
|
}
|
|
},
|
|
"_new_root_definition": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_eol"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "shape"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "container"
|
|
}
|
|
]
|
|
},
|
|
"container": {
|
|
"type": "PREC",
|
|
"value": 9,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "shape_key"
|
|
},
|
|
"named": true,
|
|
"value": "container_key"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_dot"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "shape"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "label"
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_new_container_block"
|
|
},
|
|
"named": true,
|
|
"value": "block"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"shape": {
|
|
"type": "PREC",
|
|
"value": 10,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "shape_key"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "label"
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_new_shape_block"
|
|
},
|
|
"named": true,
|
|
"value": "block"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_end"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"shape_key": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "string"
|
|
},
|
|
{
|
|
"type": "PREC_LEFT",
|
|
"value": 0,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_dash"
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_word"
|
|
},
|
|
{
|
|
"type": "TOKEN",
|
|
"content": {
|
|
"type": "PREC",
|
|
"value": 11,
|
|
"content": {
|
|
"type": "PATTERN",
|
|
"value": "([\\w\\d]+( +|\\-)[\\w\\d]+)+"
|
|
}
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_dash"
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"_new_shape_block": {
|
|
"type": "PREC",
|
|
"value": 10,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "{"
|
|
},
|
|
{
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_new_shape_block_definition"
|
|
}
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "}"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"_new_shape_block_definition": {
|
|
"type": "PREC",
|
|
"value": 10,
|
|
"content": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_eol"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"_new_container_block": {
|
|
"type": "PREC",
|
|
"value": 9,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "{"
|
|
},
|
|
{
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_new_container_block_definition"
|
|
}
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "}"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"_new_container_block_definition": {
|
|
"type": "PREC",
|
|
"value": 9,
|
|
"content": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_eol"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "shape"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "container"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"_root_definition": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_emptyline"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_root_attribute"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "connection"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_definition"
|
|
}
|
|
]
|
|
},
|
|
"connection": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_path"
|
|
},
|
|
{
|
|
"type": "REPEAT1",
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_arrow"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_path"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "dot"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_connection_attribute"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "label"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_end"
|
|
}
|
|
]
|
|
},
|
|
"_shape_definition": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_path"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "dot"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_attribute"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "label"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_shape_block"
|
|
},
|
|
"named": true,
|
|
"value": "block"
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_end"
|
|
}
|
|
]
|
|
},
|
|
"_shape_path": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "shape_key"
|
|
},
|
|
"named": true,
|
|
"value": "container_key"
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "dot"
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "shape_key"
|
|
}
|
|
]
|
|
},
|
|
"_dash": {
|
|
"type": "IMMEDIATE_TOKEN",
|
|
"content": {
|
|
"type": "STRING",
|
|
"value": "-"
|
|
}
|
|
},
|
|
"label": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "string"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_unquoted_string"
|
|
}
|
|
]
|
|
},
|
|
"attr_value": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "string"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_unquoted_string"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"_root_attribute": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_root_attr_key"
|
|
},
|
|
"named": true,
|
|
"value": "attr_key"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "attr_value"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_end"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_attribute"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_end"
|
|
}
|
|
]
|
|
},
|
|
"named": true,
|
|
"value": "invalid"
|
|
}
|
|
]
|
|
},
|
|
"_root_attr_key": {
|
|
"type": "STRING",
|
|
"value": "direction"
|
|
},
|
|
"_shape_block": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "{"
|
|
},
|
|
{
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_emptyline"
|
|
},
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_block_definition"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_block_definition"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_end"
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "}"
|
|
}
|
|
]
|
|
},
|
|
"_shape_block_definition": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "connection"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_definition"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_shape_attribute"
|
|
}
|
|
]
|
|
},
|
|
"_shape_attribute": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_shape_attr_key"
|
|
},
|
|
"named": true,
|
|
"value": "attr_key"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "attr_value"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_style_attribute"
|
|
}
|
|
]
|
|
},
|
|
"_style_attribute": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "STRING",
|
|
"value": "style"
|
|
},
|
|
"named": true,
|
|
"value": "attr_key"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "dot"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_inner_style_attribute"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_style_attr_block"
|
|
},
|
|
"named": true,
|
|
"value": "block"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"_style_attr_block": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "{"
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_emptyline"
|
|
},
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_inner_style_attribute"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_end"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_inner_style_attribute"
|
|
},
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_end"
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "BLANK"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "}"
|
|
}
|
|
]
|
|
},
|
|
"_inner_style_attribute": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_style_attr_key"
|
|
},
|
|
"named": true,
|
|
"value": "attr_key"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "attr_value"
|
|
}
|
|
]
|
|
},
|
|
"_connection_attribute": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "ALIAS",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "_connection_attr_key"
|
|
},
|
|
"named": true,
|
|
"value": "attr_key"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_colon"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "attr_value"
|
|
}
|
|
]
|
|
},
|
|
"_shape_attr_key": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "shape"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "label"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "constraint"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "icon"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "width"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "height"
|
|
}
|
|
]
|
|
},
|
|
"_style_attr_key": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "opacity"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "fill"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "stroke"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "stroke-width"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "stroke-dash"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "border-radius"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "font-color"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "shadow"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "multiple"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "animated"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "3d"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "link"
|
|
}
|
|
]
|
|
},
|
|
"_text_attr_key": {
|
|
"type": "STRING",
|
|
"value": "near"
|
|
},
|
|
"_connection_attr_key": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "source-arrowhead"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "target-arrowhead"
|
|
}
|
|
]
|
|
},
|
|
"_colon": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": ":"
|
|
}
|
|
]
|
|
},
|
|
"_arrow": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "arrow"
|
|
}
|
|
]
|
|
},
|
|
"arrow": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "-+>"
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "--+"
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "<-+"
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "<-+>"
|
|
}
|
|
]
|
|
},
|
|
"_dot": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "dot"
|
|
}
|
|
]
|
|
},
|
|
"dot": {
|
|
"type": "TOKEN",
|
|
"content": {
|
|
"type": "STRING",
|
|
"value": "."
|
|
}
|
|
},
|
|
"_unquoted_string": {
|
|
"type": "TOKEN",
|
|
"content": {
|
|
"type": "PREC",
|
|
"value": 5,
|
|
"content": {
|
|
"type": "PATTERN",
|
|
"value": "[\\w\\-]([^'\"`\\n;{}]*[\\w\\-])?"
|
|
}
|
|
}
|
|
},
|
|
"string": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "'"
|
|
},
|
|
{
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "IMMEDIATE_TOKEN",
|
|
"content": {
|
|
"type": "PATTERN",
|
|
"value": "[^'\\n]+"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "'"
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "\""
|
|
},
|
|
{
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "IMMEDIATE_TOKEN",
|
|
"content": {
|
|
"type": "PATTERN",
|
|
"value": "[^\"\\n]+"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "\""
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "`"
|
|
},
|
|
{
|
|
"type": "REPEAT",
|
|
"content": {
|
|
"type": "IMMEDIATE_TOKEN",
|
|
"content": {
|
|
"type": "PATTERN",
|
|
"value": "[^`\\n]+"
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "`"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"line_comment": {
|
|
"type": "TOKEN",
|
|
"content": {
|
|
"type": "PREC",
|
|
"value": -2,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "#"
|
|
},
|
|
{
|
|
"type": "PATTERN",
|
|
"value": ".*"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"_word": {
|
|
"type": "PATTERN",
|
|
"value": "[\\w\\d]+"
|
|
},
|
|
"_emptyline": {
|
|
"type": "PREC",
|
|
"value": -1,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\t]"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_eol"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"_eol": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": "\n"
|
|
},
|
|
{
|
|
"type": "STRING",
|
|
"value": "\u0000"
|
|
}
|
|
]
|
|
},
|
|
"_end": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{
|
|
"type": "STRING",
|
|
"value": ";"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "_eol"
|
|
}
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"extras": [
|
|
{
|
|
"type": "PATTERN",
|
|
"value": "[ \\f\\t\\v\\u00a0\\u1680\\u2000-\\u200a\\u2028\\u2029\\u202f\\u205f\\u3000\\ufeff]"
|
|
},
|
|
{
|
|
"type": "SYMBOL",
|
|
"name": "line_comment"
|
|
}
|
|
],
|
|
"conflicts": [],
|
|
"precedences": [],
|
|
"externals": [],
|
|
"inline": [],
|
|
"supertypes": []
|
|
}
|
|
|