2023-11-28 18:53:33 +00:00
|
|
|
{
|
|
|
|
"name": "dust",
|
2024-01-01 09:59:27 +00:00
|
|
|
"word": "identifier",
|
2023-11-28 18:53:33 +00:00
|
|
|
"rules": {
|
|
|
|
"root": {
|
|
|
|
"type": "PREC",
|
|
|
|
"value": 1,
|
|
|
|
"content": {
|
|
|
|
"type": "REPEAT1",
|
|
|
|
"content": {
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"_comment": {
|
|
|
|
"type": "PATTERN",
|
|
|
|
"value": "[#][^#\\n]*[#|\\n]"
|
|
|
|
},
|
|
|
|
"statement": {
|
|
|
|
"type": "PREC_LEFT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "assignment"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "block"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "for"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "if_else"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "index_assignment"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "match"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "return"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "while"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ";"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"expression": {
|
2023-12-30 02:53:26 +00:00
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "_expression_kind"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "("
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "_expression_kind"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ")"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"_expression_kind": {
|
2023-11-28 18:53:33 +00:00
|
|
|
"type": "PREC_RIGHT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "function_call"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "index"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "logic"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "math"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "value"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "yield"
|
2024-01-06 06:05:13 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "new"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"_expression_list": {
|
|
|
|
"type": "REPEAT1",
|
|
|
|
"content": {
|
|
|
|
"type": "PREC_RIGHT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ","
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2023-12-31 16:46:56 +00:00
|
|
|
"block": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "async"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "{"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT",
|
|
|
|
"content": {
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "}"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2023-11-28 18:53:33 +00:00
|
|
|
"identifier": {
|
|
|
|
"type": "PATTERN",
|
2023-12-31 16:03:33 +00:00
|
|
|
"value": "[_a-zA-Z]+[_a-zA-Z0-9]*[_a-zA-Z]?"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
"value": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2023-12-12 23:21:16 +00:00
|
|
|
"name": "function"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2023-12-12 23:21:16 +00:00
|
|
|
"name": "integer"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
2023-12-02 03:54:25 +00:00
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2023-12-12 23:21:16 +00:00
|
|
|
"name": "float"
|
2023-12-02 03:54:25 +00:00
|
|
|
},
|
2023-11-28 18:53:33 +00:00
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "string"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "boolean"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "list"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "map"
|
2023-12-22 20:02:22 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "option"
|
2024-01-01 04:38:09 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "built_in_value"
|
2024-01-06 06:05:13 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "structure"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"structure": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "struct"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "{"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT",
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type_definition"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type_definition"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "}"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"new": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "new"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "{"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT",
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type_definition"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "}"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"integer": {
|
|
|
|
"type": "TOKEN",
|
|
|
|
"content": {
|
|
|
|
"type": "PREC_LEFT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "-"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT1",
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "1"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "2"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "3"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "4"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "5"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "6"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "7"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "8"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "9"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "0"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"float": {
|
|
|
|
"type": "TOKEN",
|
|
|
|
"content": {
|
|
|
|
"type": "PREC_LEFT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "-"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT1",
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "1"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "2"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "3"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "4"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "5"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "6"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "7"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "8"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "9"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "0"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "."
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT1",
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "1"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "2"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "3"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "4"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "5"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "6"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "7"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "8"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "9"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "0"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"string": {
|
|
|
|
"type": "PATTERN",
|
|
|
|
"value": "(\"[^\"]*?\")|('[^']*?')|(`[^`]*?`)"
|
|
|
|
},
|
|
|
|
"boolean": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "true"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "false"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"list": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "["
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT",
|
|
|
|
"content": {
|
2023-11-28 22:54:17 +00:00
|
|
|
"type": "PREC_LEFT",
|
2023-11-28 18:53:33 +00:00
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ","
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "]"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"map": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "{"
|
|
|
|
},
|
|
|
|
{
|
2023-12-31 16:46:56 +00:00
|
|
|
"type": "REPEAT1",
|
2023-11-28 22:54:17 +00:00
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
2023-12-20 23:29:18 +00:00
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type_definition"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2023-11-28 22:54:17 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ","
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "}"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2023-12-22 20:02:22 +00:00
|
|
|
"option": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "none"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "some"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "("
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ")"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2023-11-28 18:53:33 +00:00
|
|
|
"index": {
|
|
|
|
"type": "PREC_LEFT",
|
2024-01-01 02:46:45 +00:00
|
|
|
"value": 1,
|
2023-11-28 18:53:33 +00:00
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2024-01-01 04:38:09 +00:00
|
|
|
"name": "index_expression"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ":"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2024-01-01 04:38:09 +00:00
|
|
|
"name": "index_expression"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ".."
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
2024-01-01 04:38:09 +00:00
|
|
|
"index_expression": {
|
|
|
|
"type": "PREC",
|
|
|
|
"value": 1,
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "("
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "function_call"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ")"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "index"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "value"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
2023-11-28 18:53:33 +00:00
|
|
|
"math": {
|
|
|
|
"type": "PREC_LEFT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
2023-12-30 02:15:03 +00:00
|
|
|
"type": "SEQ",
|
2023-11-28 18:53:33 +00:00
|
|
|
"members": [
|
|
|
|
{
|
2023-12-30 02:15:03 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
2023-12-30 02:15:03 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "math_operator"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"math_operator": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "+"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "-"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "*"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "/"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "%"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"logic": {
|
2023-12-30 02:53:26 +00:00
|
|
|
"type": "PREC_LEFT",
|
2023-11-28 18:53:33 +00:00
|
|
|
"value": 0,
|
|
|
|
"content": {
|
2023-12-30 02:15:03 +00:00
|
|
|
"type": "SEQ",
|
2023-11-28 18:53:33 +00:00
|
|
|
"members": [
|
|
|
|
{
|
2023-12-30 02:15:03 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
2023-12-30 02:15:03 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "logic_operator"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"logic_operator": {
|
2023-12-02 03:54:25 +00:00
|
|
|
"type": "PREC_LEFT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "=="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "!="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "&&"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "||"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ">"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "<"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ">="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "<="
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
"assignment": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
2023-11-30 14:30:25 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
2023-11-30 14:30:25 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type_definition"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
2023-11-30 14:30:25 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "assignment_operator"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
2023-11-30 14:30:25 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"index_assignment": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "index"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "assignment_operator"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "statement"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"assignment_operator": {
|
|
|
|
"type": "PREC_RIGHT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "+="
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "-="
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"if_else": {
|
|
|
|
"type": "PREC_RIGHT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "if"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT",
|
|
|
|
"content": {
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "else_if"
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "else"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"if": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "if"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "block"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"else_if": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "else if"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "block"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"else": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "else"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "block"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"match": {
|
|
|
|
"type": "PREC_RIGHT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "match"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
2023-12-06 18:48:38 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "{"
|
|
|
|
},
|
2023-11-28 18:53:33 +00:00
|
|
|
{
|
|
|
|
"type": "REPEAT1",
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
2023-12-11 15:18:46 +00:00
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "*"
|
|
|
|
}
|
|
|
|
]
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "=>"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2023-12-06 18:48:38 +00:00
|
|
|
"name": "statement"
|
2023-12-11 15:18:46 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ","
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
2023-12-06 18:48:38 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "}"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"while": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "while"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "block"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"for": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "for"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "async for"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "in"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "block"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"return": {
|
2023-12-02 03:54:25 +00:00
|
|
|
"type": "PREC_RIGHT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "return"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2023-12-31 19:04:10 +00:00
|
|
|
"name": "statement"
|
2023-12-02 03:54:25 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
2023-11-30 00:23:42 +00:00
|
|
|
"type_definition": {
|
2023-11-28 18:53:33 +00:00
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "<"
|
|
|
|
},
|
|
|
|
{
|
2023-11-30 00:23:42 +00:00
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ">"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2023-11-30 00:23:42 +00:00
|
|
|
"type": {
|
|
|
|
"type": "PREC_RIGHT",
|
|
|
|
"value": 0,
|
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "any"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "bool"
|
|
|
|
},
|
2024-01-01 10:20:11 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "collection"
|
|
|
|
},
|
2023-11-30 14:30:25 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "float"
|
|
|
|
},
|
2023-12-22 20:02:22 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "int"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "map"
|
|
|
|
},
|
2023-12-26 22:19:12 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "none"
|
|
|
|
},
|
2023-12-22 20:02:22 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "num"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "str"
|
|
|
|
},
|
2024-01-06 06:05:13 +00:00
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
2023-12-22 20:02:22 +00:00
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "["
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "]"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2023-11-30 00:23:42 +00:00
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
2023-12-05 21:42:11 +00:00
|
|
|
"value": "("
|
2023-11-30 00:23:42 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "REPEAT",
|
|
|
|
"content": {
|
2023-11-30 01:59:58 +00:00
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ","
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
2023-11-30 00:23:42 +00:00
|
|
|
}
|
|
|
|
},
|
2023-12-05 21:42:11 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ")"
|
|
|
|
},
|
2023-11-30 00:23:42 +00:00
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "->"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
2023-12-22 20:02:22 +00:00
|
|
|
"value": "option"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "("
|
2023-11-30 00:23:42 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type"
|
2023-11-30 14:48:56 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
2023-12-22 20:02:22 +00:00
|
|
|
"value": ")"
|
2023-11-30 00:23:42 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
2023-12-02 03:54:25 +00:00
|
|
|
"function": {
|
2023-11-30 14:30:25 +00:00
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
2023-12-05 21:42:11 +00:00
|
|
|
"type": "STRING",
|
2023-12-12 23:21:16 +00:00
|
|
|
"value": "("
|
2023-11-30 14:30:25 +00:00
|
|
|
},
|
2023-12-05 21:42:11 +00:00
|
|
|
{
|
|
|
|
"type": "REPEAT",
|
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
2023-12-12 23:21:16 +00:00
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type_definition"
|
|
|
|
},
|
2023-12-05 21:42:11 +00:00
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
2023-11-30 00:23:42 +00:00
|
|
|
"members": [
|
|
|
|
{
|
2023-12-05 21:42:11 +00:00
|
|
|
"type": "STRING",
|
|
|
|
"value": ","
|
2023-11-30 00:23:42 +00:00
|
|
|
},
|
|
|
|
{
|
2023-12-05 21:42:11 +00:00
|
|
|
"type": "BLANK"
|
2023-11-30 00:23:42 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
2023-12-05 21:42:11 +00:00
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
2023-12-12 23:21:16 +00:00
|
|
|
"value": ")"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "type_definition"
|
2023-12-05 21:42:11 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "block"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
2023-12-29 23:59:15 +00:00
|
|
|
"function_expression": {
|
2024-01-01 02:46:45 +00:00
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "_function_expression_kind"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "("
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "_function_expression_kind"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ")"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"_function_expression_kind": {
|
2023-12-30 01:14:03 +00:00
|
|
|
"type": "PREC",
|
2024-01-01 04:38:09 +00:00
|
|
|
"value": 2,
|
2023-12-30 01:14:03 +00:00
|
|
|
"content": {
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "function_call"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "identifier"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "index"
|
2023-12-30 02:15:03 +00:00
|
|
|
},
|
2024-01-01 09:59:27 +00:00
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "value"
|
|
|
|
},
|
2023-12-30 02:15:03 +00:00
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "yield"
|
2023-12-30 01:14:03 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
2023-12-29 23:59:15 +00:00
|
|
|
},
|
2023-11-28 18:53:33 +00:00
|
|
|
"function_call": {
|
|
|
|
"type": "PREC_RIGHT",
|
2023-11-30 16:05:09 +00:00
|
|
|
"value": 0,
|
2023-11-28 18:53:33 +00:00
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2023-12-29 23:59:15 +00:00
|
|
|
"name": "function_expression"
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
2023-12-30 01:14:03 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "("
|
|
|
|
},
|
2023-11-28 18:53:33 +00:00
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "_expression_list"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "BLANK"
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
{
|
2023-11-28 22:54:17 +00:00
|
|
|
"type": "STRING",
|
|
|
|
"value": ")"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
"yield": {
|
|
|
|
"type": "PREC_LEFT",
|
2023-12-30 02:15:03 +00:00
|
|
|
"value": 1,
|
2023-11-28 18:53:33 +00:00
|
|
|
"content": {
|
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "expression"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "->"
|
|
|
|
},
|
2023-11-28 22:54:17 +00:00
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
2023-12-29 23:59:15 +00:00
|
|
|
"name": "function_expression"
|
2023-11-28 22:54:17 +00:00
|
|
|
},
|
2023-11-28 18:53:33 +00:00
|
|
|
{
|
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
2023-12-30 02:15:03 +00:00
|
|
|
"type": "SEQ",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "("
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "_expression_list"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": ")"
|
|
|
|
}
|
|
|
|
]
|
2023-11-28 18:53:33 +00:00
|
|
|
},
|
|
|
|
{
|
2023-11-28 22:54:17 +00:00
|
|
|
"type": "BLANK"
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
2023-12-11 16:17:37 +00:00
|
|
|
},
|
2024-01-01 09:59:27 +00:00
|
|
|
"built_in_value": {
|
2023-12-11 16:17:37 +00:00
|
|
|
"type": "CHOICE",
|
|
|
|
"members": [
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
2024-01-01 09:59:27 +00:00
|
|
|
"value": "args"
|
2023-12-11 16:17:37 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "assert_equal"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
2024-01-01 09:59:27 +00:00
|
|
|
"value": "env"
|
2023-12-27 01:05:19 +00:00
|
|
|
},
|
2024-01-01 12:46:47 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "fs"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "json"
|
|
|
|
},
|
2023-12-11 16:17:37 +00:00
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "length"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "output"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "random"
|
2024-01-01 13:52:25 +00:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "STRING",
|
|
|
|
"value": "string"
|
2024-01-01 04:38:09 +00:00
|
|
|
}
|
|
|
|
]
|
2023-11-28 18:53:33 +00:00
|
|
|
}
|
|
|
|
},
|
|
|
|
"extras": [
|
|
|
|
{
|
|
|
|
"type": "PATTERN",
|
|
|
|
"value": "\\s"
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "SYMBOL",
|
|
|
|
"name": "_comment"
|
|
|
|
}
|
|
|
|
],
|
|
|
|
"conflicts": [],
|
|
|
|
"precedences": [],
|
|
|
|
"externals": [],
|
|
|
|
"inline": [],
|
|
|
|
"supertypes": []
|
|
|
|
}
|
|
|
|
|