2022-06-01 16:23:43 +02:00
|
|
|
[
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"init": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:48:54 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"size": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:48:54 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"type": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:54:35 +02:00
|
|
|
{
|
|
|
|
"type": "array_type",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"element_type": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"array": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"index": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 20:11:52 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"left": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"right": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 20:07:00 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"left": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
2022-06-01 19:40:44 +02:00
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"operator": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "operator",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"right": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"body": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"end": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"index": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"start": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:58:40 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"arguments": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": ",",
|
|
|
|
"named": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
2022-06-01 19:40:44 +02:00
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:54:09 +02:00
|
|
|
}
|
|
|
|
]
|
2022-06-01 19:58:40 +02:00
|
|
|
},
|
|
|
|
"function": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
2022-06-01 19:54:09 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:48:32 +02:00
|
|
|
{
|
|
|
|
"type": "function_declaration",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"body": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"name": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"parameters": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "parameters",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"alternative": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 20:18:10 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"condition": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 20:18:10 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"consequence": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "import_declaration",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"file": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"body": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": ";",
|
|
|
|
"named": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 20:18:10 +02:00
|
|
|
}
|
|
|
|
]
|
2022-06-01 20:36:14 +02:00
|
|
|
},
|
|
|
|
"declarations": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
2022-06-01 20:48:32 +02:00
|
|
|
{
|
|
|
|
"type": "function_declaration",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "import_declaration",
|
|
|
|
"named": true
|
2022-06-01 20:41:25 +02:00
|
|
|
},
|
2022-06-01 20:48:32 +02:00
|
|
|
{
|
|
|
|
"type": "primitive_declaration",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:52:20 +02:00
|
|
|
{
|
|
|
|
"type": "type_declaration",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:41:25 +02:00
|
|
|
{
|
|
|
|
"type": "variable_declaration",
|
|
|
|
"named": true
|
2022-06-01 20:36:14 +02:00
|
|
|
}
|
|
|
|
]
|
2022-06-01 20:18:10 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:48:32 +02:00
|
|
|
{
|
|
|
|
"type": "parameters",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"name": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"parameters": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": ",",
|
|
|
|
"named": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": ":",
|
|
|
|
"named": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"type": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "primitive_declaration",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"name": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"parameters": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "parameters",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"field": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"init": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
}
|
|
|
|
]
|
2022-06-01 19:54:09 +02:00
|
|
|
},
|
|
|
|
"type": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
2022-06-01 19:34:31 +02:00
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:53:39 +02:00
|
|
|
{
|
|
|
|
"type": "record_type",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"name": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"type": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"field": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"record": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {},
|
|
|
|
"children": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:40:44 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 16:23:43 +02:00
|
|
|
{
|
|
|
|
"type": "source_file",
|
|
|
|
"named": true,
|
2022-06-01 19:33:42 +02:00
|
|
|
"fields": {},
|
|
|
|
"children": {
|
2022-06-01 20:37:24 +02:00
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
2022-06-01 19:33:42 +02:00
|
|
|
"types": [
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:48:32 +02:00
|
|
|
{
|
|
|
|
"type": "function_declaration",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:37:24 +02:00
|
|
|
{
|
|
|
|
"type": "import_declaration",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:33:42 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:40:44 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:48:32 +02:00
|
|
|
{
|
|
|
|
"type": "primitive_declaration",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:33:42 +02:00
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
},
|
2022-06-01 20:52:20 +02:00
|
|
|
{
|
|
|
|
"type": "type_declaration",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
2022-06-01 20:41:25 +02:00
|
|
|
{
|
|
|
|
"type": "variable_declaration",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:19:56 +02:00
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:33:42 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
2022-06-01 16:23:43 +02:00
|
|
|
},
|
|
|
|
{
|
2022-06-01 19:33:42 +02:00
|
|
|
"type": "string_literal",
|
|
|
|
"named": true,
|
|
|
|
"fields": {},
|
|
|
|
"children": {
|
|
|
|
"multiple": true,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "escape_sequence",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:52:20 +02:00
|
|
|
{
|
|
|
|
"type": "type_alias",
|
|
|
|
"named": true,
|
|
|
|
"fields": {},
|
|
|
|
"children": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "type_declaration",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"name": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"value": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
2022-06-01 20:54:35 +02:00
|
|
|
{
|
|
|
|
"type": "array_type",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:53:39 +02:00
|
|
|
{
|
|
|
|
"type": "record_type",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:52:20 +02:00
|
|
|
{
|
|
|
|
"type": "type_alias",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"expression": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:58:40 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
2022-06-01 19:40:44 +02:00
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
2022-06-01 20:19:56 +02:00
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"operator": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "operator",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:41:25 +02:00
|
|
|
{
|
|
|
|
"type": "variable_declaration",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"name": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"type": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": false,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"value": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 20:19:56 +02:00
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true,
|
|
|
|
"fields": {
|
|
|
|
"body": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:19:56 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:19:56 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
},
|
|
|
|
"condition": {
|
|
|
|
"multiple": false,
|
|
|
|
"required": true,
|
|
|
|
"types": [
|
|
|
|
{
|
|
|
|
"type": "array_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "array_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "assignment_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "binary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:19:56 +02:00
|
|
|
{
|
|
|
|
"type": "function_call",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "if_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:19:56 +02:00
|
|
|
{
|
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "record_value",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "sequence_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "string_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "unary_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "while_expression",
|
|
|
|
"named": true
|
|
|
|
}
|
|
|
|
]
|
|
|
|
}
|
|
|
|
}
|
|
|
|
},
|
2022-06-01 19:33:42 +02:00
|
|
|
{
|
|
|
|
"type": "\"",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "(",
|
|
|
|
"named": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": ")",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": ",",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:07:00 +02:00
|
|
|
{
|
|
|
|
"type": ".",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:41:25 +02:00
|
|
|
{
|
|
|
|
"type": ":",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:11:52 +02:00
|
|
|
{
|
|
|
|
"type": ":=",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": ";",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "=",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "[",
|
|
|
|
"named": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "]",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:54:35 +02:00
|
|
|
{
|
|
|
|
"type": "array",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:23:46 +02:00
|
|
|
{
|
|
|
|
"type": "break_expression",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:19:56 +02:00
|
|
|
{
|
|
|
|
"type": "do",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "else",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "end",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:33:42 +02:00
|
|
|
{
|
|
|
|
"type": "escape_sequence",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "for",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:48:32 +02:00
|
|
|
{
|
|
|
|
"type": "function",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "identifier",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "if",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "import",
|
|
|
|
"named": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "in",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:33:42 +02:00
|
|
|
{
|
|
|
|
"type": "integer_literal",
|
|
|
|
"named": true
|
|
|
|
},
|
2022-06-01 20:36:14 +02:00
|
|
|
{
|
|
|
|
"type": "let",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:33:42 +02:00
|
|
|
{
|
2022-06-01 19:40:44 +02:00
|
|
|
"type": "nil_literal",
|
|
|
|
"named": true
|
2022-06-01 19:34:31 +02:00
|
|
|
},
|
2022-06-01 19:48:54 +02:00
|
|
|
{
|
|
|
|
"type": "of",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:34:31 +02:00
|
|
|
{
|
|
|
|
"type": "operator",
|
|
|
|
"named": true
|
2022-06-01 19:54:09 +02:00
|
|
|
},
|
2022-06-01 20:48:32 +02:00
|
|
|
{
|
|
|
|
"type": "primitive",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:18:10 +02:00
|
|
|
{
|
|
|
|
"type": "then",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:23:04 +02:00
|
|
|
{
|
|
|
|
"type": "to",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:52:20 +02:00
|
|
|
{
|
|
|
|
"type": "type",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:41:25 +02:00
|
|
|
{
|
|
|
|
"type": "var",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 20:19:56 +02:00
|
|
|
{
|
|
|
|
"type": "while",
|
|
|
|
"named": false
|
|
|
|
},
|
2022-06-01 19:54:09 +02:00
|
|
|
{
|
|
|
|
"type": "{",
|
|
|
|
"named": false
|
|
|
|
},
|
|
|
|
{
|
|
|
|
"type": "}",
|
|
|
|
"named": false
|
2022-06-01 16:23:43 +02:00
|
|
|
}
|
|
|
|
]
|