mirror of https://github.com/Wilfred/difftastic/
5290 lines
97 KiB
JSON
5290 lines
97 KiB
JSON
[
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true,
|
|
"fields": {
|
|
"body": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"parameters": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "function_parameters",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"return_type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "argument",
|
|
"named": true,
|
|
"fields": {
|
|
"label": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "label",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "arguments",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "argument",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "attribute_value",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "assert",
|
|
"named": true,
|
|
"fields": {
|
|
"message": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "attribute",
|
|
"named": true,
|
|
"fields": {
|
|
"arguments": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "arguments",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "attribute_value",
|
|
"named": true,
|
|
"fields": {
|
|
"label": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "label",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"left": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "{",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "}",
|
|
"named": false
|
|
}
|
|
]
|
|
},
|
|
"operator": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "!=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "%",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "&&",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "*",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "*.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "+",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "+.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "-",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "-.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "/",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "/.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<=.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<>",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "==",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">=.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "|>",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "||",
|
|
"named": false
|
|
}
|
|
]
|
|
},
|
|
"right": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "pipeline_echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "{",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "}",
|
|
"named": false
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "bit_string_segment",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "bit_string_segment",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "bit_string_segment",
|
|
"named": true,
|
|
"fields": {
|
|
"assign": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"options": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": ":",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "bit_string_segment_options",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "bit_string_segment_option",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "bit_string_segment_options",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "bit_string_segment_option",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "assert",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "let",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "let_assert",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "use",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true,
|
|
"fields": {
|
|
"clauses": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "case_clauses",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"subjects": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "case_subjects",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "case_clause",
|
|
"named": true,
|
|
"fields": {
|
|
"guard": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "case_clause_guard",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"patterns": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "case_clause_patterns",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "case_clause_guard",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "case_clause_pattern",
|
|
"named": true,
|
|
"fields": {
|
|
"assign": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "case_clause_patterns",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "case_clause_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "case_clauses",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "case_clause",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "case_subjects",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "constant",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "visibility_modifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "constructor_name",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "data_constructor",
|
|
"named": true,
|
|
"fields": {
|
|
"arguments": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "data_constructor_arguments",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "constructor_name",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "attribute",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "data_constructor_argument",
|
|
"named": true,
|
|
"fields": {
|
|
"label": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "label",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "data_constructor_arguments",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "data_constructor_argument",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "data_constructors",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "data_constructor",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "escape_sequence",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "external_function",
|
|
"named": true,
|
|
"fields": {
|
|
"body": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "external_function_body",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"parameters": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "function_parameters",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"return_type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "visibility_modifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "external_function_body",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "external_type",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "type_name",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "visibility_modifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true,
|
|
"fields": {
|
|
"field": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "label",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"record": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "function",
|
|
"named": true,
|
|
"fields": {
|
|
"body": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"parameters": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "function_parameters",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"return_type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "visibility_modifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true,
|
|
"fields": {
|
|
"arguments": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "arguments",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"function": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "function_parameter",
|
|
"named": true,
|
|
"fields": {
|
|
"label": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "label",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "function_parameter_types",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "function_parameters",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_parameter",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "function_type",
|
|
"named": true,
|
|
"fields": {
|
|
"parameter_types": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_parameter_types",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"return_type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "hole",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "import",
|
|
"named": true,
|
|
"fields": {
|
|
"alias": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"imports": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "unqualified_imports",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"module": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "module",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "label",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "let",
|
|
"named": true,
|
|
"fields": {
|
|
"assign": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"pattern": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "let_assert",
|
|
"named": true,
|
|
"fields": {
|
|
"assign": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"message": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"pattern": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true,
|
|
"fields": {
|
|
"spread": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true,
|
|
"fields": {
|
|
"assign": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern_tail",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "list_pattern_tail",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "module",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true,
|
|
"fields": {
|
|
"message": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "pattern_spread",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "pipeline_echo",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true,
|
|
"fields": {
|
|
"arguments": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "arguments",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "constructor_name",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "remote_constructor_name",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true,
|
|
"fields": {
|
|
"arguments": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "record_pattern_arguments",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "constructor_name",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "remote_constructor_name",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "record_pattern_argument",
|
|
"named": true,
|
|
"fields": {
|
|
"assign": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"label": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "label",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"pattern": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "record_pattern_arguments",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "pattern_spread",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern_argument",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true,
|
|
"fields": {
|
|
"arguments": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "record_update_arguments",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"constructor": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "constructor_name",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "remote_constructor_name",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"spread": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "record_update_argument",
|
|
"named": true,
|
|
"fields": {
|
|
"label": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "label",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "record_update_arguments",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "record_update_argument",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "remote_constructor_name",
|
|
"named": true,
|
|
"fields": {
|
|
"module": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "constructor_name",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "remote_type_identifier",
|
|
"named": true,
|
|
"fields": {
|
|
"module": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "source_file",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "assert",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "attribute",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "constant",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "external_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "external_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "import",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "let",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "let_assert",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "target_group",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_alias",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_definition",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "use",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "escape_sequence",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "quoted_content",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "target",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "target_group",
|
|
"named": true,
|
|
"fields": {
|
|
"target": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "target",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "attribute",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "constant",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "external_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "external_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "import",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_alias",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_definition",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true,
|
|
"fields": {
|
|
"message": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true,
|
|
"fields": {
|
|
"index": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"tuple": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true,
|
|
"fields": {
|
|
"assign": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true,
|
|
"fields": {
|
|
"arguments": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "type_arguments",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "remote_type_identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "type_alias",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "opacity_modifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_name",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "visibility_modifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type_argument",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type_arguments",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "type_argument",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type_definition",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "data_constructors",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "opacity_modifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_name",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "visibility_modifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "type_name",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "remote_type_identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"parameters": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "type_parameters",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "type_parameter",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "type_parameters",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "type_parameter",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "unqualified_import",
|
|
"named": true,
|
|
"fields": {
|
|
"alias": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "unqualified_imports",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "unqualified_import",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "use",
|
|
"named": true,
|
|
"fields": {
|
|
"assignments": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "use_assignments",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "anonymous_function",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "boolean_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_access",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_call",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer_negation",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_update",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_access",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "use_assignment",
|
|
"named": true,
|
|
"fields": {
|
|
"assign": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_hole",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_var",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "bit_string_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "discard",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "integer",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "list_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "record_pattern",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "string",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "tuple_pattern",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "use_assignments",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "use_assignment",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "!",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "!=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "\"",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "#",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "%",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "&&",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "(",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ")",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "*",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "*.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "+",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "+.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ",",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "-",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "-.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "->",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ".",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "..",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "/",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "/.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ":",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<-",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<<",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<=.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "<>",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "==",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">=.",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">>",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "@",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "[",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "]",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "as",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "assert",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "big",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "binary",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "bit_string",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "bits",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "bytes",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "comment",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "const",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "echo",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "erlang",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "external",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "float",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "fn",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "if",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "import",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "int",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "javascript",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "let",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "little",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "module_comment",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "native",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "opacity_modifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "panic",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "quoted_content",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "signed",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "size",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "statement_comment",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "todo",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "unit",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "unsigned",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "use",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "utf16",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "utf16_codepoint",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "utf32",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "utf32_codepoint",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "utf8",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "utf8_codepoint",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "visibility_modifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "{",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "|",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "|>",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "||",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "}",
|
|
"named": false
|
|
}
|
|
] |