mirror of
https://github.com/github/semantic.git
synced 2024-11-23 08:27:56 +03:00
2716 lines
46 KiB
JSON
2716 lines
46 KiB
JSON
[
|
|
{
|
|
"type": "_expression",
|
|
"named": true,
|
|
"subtypes": [
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "call_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "composite_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "false",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "func_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "imaginary_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "index_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "int_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "interpreted_string_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "nil",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "parenthesized_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "raw_string_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "rune_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "selector_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "slice_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "true",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_assertion_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_conversion_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "unary_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "_simple_statement",
|
|
"named": true,
|
|
"subtypes": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "assignment_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "dec_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "inc_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "send_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "short_var_declaration",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "_simple_type",
|
|
"named": true,
|
|
"subtypes": [
|
|
{
|
|
"type": "array_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "channel_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "interface_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "map_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "pointer_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "qualified_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "slice_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "struct_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "_statement",
|
|
"named": true,
|
|
"subtypes": [
|
|
{
|
|
"type": "_simple_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "break_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "const_declaration",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "continue_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "defer_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "empty_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "expression_switch_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "fallthrough_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "for_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "go_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "goto_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "if_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "labeled_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "return_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "select_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_declaration",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_switch_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "var_declaration",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "_type",
|
|
"named": true,
|
|
"subtypes": [
|
|
{
|
|
"type": "_simple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "parenthesized_type",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"type": "argument_list",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "variadic_argument",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "array_type",
|
|
"named": true,
|
|
"fields": {
|
|
"element": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"length": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "assignment_statement",
|
|
"named": true,
|
|
"fields": {
|
|
"left": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"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
|
|
}
|
|
]
|
|
},
|
|
"right": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "binary_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"left": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"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
|
|
}
|
|
]
|
|
},
|
|
"right": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "block",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "break_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "label_name",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "call_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"arguments": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "argument_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"function": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "channel_type",
|
|
"named": true,
|
|
"fields": {
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "communication_case",
|
|
"named": true,
|
|
"fields": {
|
|
"communication": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "receive_statement",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "send_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "composite_literal",
|
|
"named": true,
|
|
"fields": {
|
|
"body": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "literal_value",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "array_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "implicit_length_array_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "map_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "qualified_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "slice_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "struct_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "const_declaration",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "const_spec",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "const_spec",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": ",",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "continue_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "label_name",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "dec_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "default_case",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "defer_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "dot",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "element",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "literal_value",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "empty_statement",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "expression_case",
|
|
"named": true,
|
|
"fields": {
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "expression_list",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "expression_switch_statement",
|
|
"named": true,
|
|
"fields": {
|
|
"initializer": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "default_case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "expression_case",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "fallthrough_statement",
|
|
"named": true,
|
|
"fields": {}
|
|
},
|
|
{
|
|
"type": "field_declaration",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": ",",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "field_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"tag": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "interpreted_string_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "raw_string_literal",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "qualified_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "field_declaration_list",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "field_declaration",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "for_clause",
|
|
"named": true,
|
|
"fields": {
|
|
"condition": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"initializer": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"update": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "for_statement",
|
|
"named": true,
|
|
"fields": {
|
|
"body": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "for_clause",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "range_clause",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "func_literal",
|
|
"named": true,
|
|
"fields": {
|
|
"body": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"parameters": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"result": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "function_declaration",
|
|
"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": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"result": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "function_type",
|
|
"named": true,
|
|
"fields": {
|
|
"parameters": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"result": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "go_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "goto_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "label_name",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "if_statement",
|
|
"named": true,
|
|
"fields": {
|
|
"alternative": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "if_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"condition": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"consequence": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"initializer": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "implicit_length_array_type",
|
|
"named": true,
|
|
"fields": {
|
|
"element": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "import_declaration",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "import_spec",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "import_spec_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "import_spec",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "blank_identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "dot",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "package_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"path": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "interpreted_string_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "raw_string_literal",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "import_spec_list",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "import_spec",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "inc_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "index_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"index": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"operand": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "interface_type",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "method_spec_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "interpreted_string_literal",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "escape_sequence",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "keyed_element",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "literal_value",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "labeled_statement",
|
|
"named": true,
|
|
"fields": {
|
|
"label": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "label_name",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "literal_value",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "element",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "keyed_element",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "map_type",
|
|
"named": true,
|
|
"fields": {
|
|
"key": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "method_declaration",
|
|
"named": true,
|
|
"fields": {
|
|
"body": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "block",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "field_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"parameters": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"receiver": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"result": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "method_spec",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "field_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"parameters": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"result": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "method_spec_list",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "method_spec",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "qualified_type",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "package_clause",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "package_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "parameter_declaration",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": ",",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "parameter_list",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "parameter_declaration",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "variadic_parameter_declaration",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "parenthesized_expression",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "parenthesized_type",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "pointer_type",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "qualified_type",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"package": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "package_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "range_clause",
|
|
"named": true,
|
|
"fields": {
|
|
"left": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"right": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "receive_statement",
|
|
"named": true,
|
|
"fields": {
|
|
"left": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"right": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "return_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "select_statement",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "communication_case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "default_case",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "selector_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"field": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "field_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"operand": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "send_statement",
|
|
"named": true,
|
|
"fields": {
|
|
"channel": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "short_var_declaration",
|
|
"named": true,
|
|
"fields": {
|
|
"left": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"right": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "slice_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"capacity": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"end": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"operand": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"start": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "slice_type",
|
|
"named": true,
|
|
"fields": {
|
|
"element": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "source_file",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "const_declaration",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "function_declaration",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "import_declaration",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "method_declaration",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "package_clause",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_declaration",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "var_declaration",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "struct_type",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "field_declaration_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type_alias",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "type_assertion_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"operand": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "type_case",
|
|
"named": true,
|
|
"fields": {
|
|
"type": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": ",",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type_conversion_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"operand": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "type_declaration",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "type_alias",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_spec",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "type_spec",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "type_switch_statement",
|
|
"named": true,
|
|
"fields": {
|
|
"alias": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"initializer": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_simple_statement",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "default_case",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type_case",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "unary_expression",
|
|
"named": true,
|
|
"fields": {
|
|
"operand": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"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": "var_declaration",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": true,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "var_spec",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "var_spec",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": true,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": ",",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"value": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "expression_list",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "variadic_argument",
|
|
"named": true,
|
|
"fields": {},
|
|
"children": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_expression",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "variadic_parameter_declaration",
|
|
"named": true,
|
|
"fields": {
|
|
"name": {
|
|
"multiple": false,
|
|
"required": false,
|
|
"types": [
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
}
|
|
]
|
|
},
|
|
"type": {
|
|
"multiple": false,
|
|
"required": true,
|
|
"types": [
|
|
{
|
|
"type": "_type",
|
|
"named": true
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
"type": "\n",
|
|
"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": ">>",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": ">>=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "[",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "]",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "^",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "^=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "blank_identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "break",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "case",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "chan",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "const",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "continue",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "default",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "defer",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "else",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "escape_sequence",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "fallthrough",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "false",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "field_identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "float_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "for",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "func",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "go",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "goto",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "if",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "imaginary_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "import",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "int_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "interface",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "label_name",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "map",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "nil",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "package",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "package_identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "range",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "raw_string_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "return",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "rune_literal",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "select",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "struct",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "switch",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "true",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "type",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "type_identifier",
|
|
"named": true
|
|
},
|
|
{
|
|
"type": "var",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "{",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "|",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "|=",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "||",
|
|
"named": false
|
|
},
|
|
{
|
|
"type": "}",
|
|
"named": false
|
|
}
|
|
] |