71 lines
1.5 KiB
JSON
71 lines
1.5 KiB
JSON
{
|
|
"name": "aliased_rules",
|
|
|
|
"extras": [
|
|
{"type": "PATTERN", "value": "\\s"}
|
|
],
|
|
|
|
"rules": {
|
|
"statement": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{"type": "SYMBOL", "name": "_expression"},
|
|
{"type": "STRING", "value": ";"}
|
|
]
|
|
},
|
|
|
|
"_expression": {
|
|
"type": "CHOICE",
|
|
"members": [
|
|
{"type": "SYMBOL", "name": "call_expression"},
|
|
{"type": "SYMBOL", "name": "member_expression"},
|
|
{
|
|
"type": "ALIAS",
|
|
"named": true,
|
|
"value": "variable_name",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "identifier"
|
|
}
|
|
}
|
|
]
|
|
},
|
|
|
|
"call_expression": {
|
|
"type": "PREC_LEFT",
|
|
"value": 0,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{"type": "SYMBOL", "name": "_expression"},
|
|
{"type": "STRING", "value": "("},
|
|
{"type": "SYMBOL", "name": "_expression"},
|
|
{"type": "STRING", "value": ")"}
|
|
]
|
|
}
|
|
},
|
|
|
|
"member_expression": {
|
|
"type": "PREC_LEFT",
|
|
"value": 1,
|
|
"content": {
|
|
"type": "SEQ",
|
|
"members": [
|
|
{"type": "SYMBOL", "name": "_expression"},
|
|
{"type": "STRING", "value": "."},
|
|
{
|
|
"type": "ALIAS",
|
|
"named": true,
|
|
"value": "property_name",
|
|
"content": {
|
|
"type": "SYMBOL",
|
|
"name": "identifier"
|
|
}
|
|
}
|
|
]
|
|
}
|
|
},
|
|
|
|
"identifier": {"type": "PATTERN", "value": "[a-z]+"}
|
|
}
|
|
}
|