[
{
"type": "anotation_arguments",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "literal_type",
"named": true
}
]
}
},
{
"type": "anotation_statement",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "anotation_identifier",
"named": true
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "anotation_arguments",
"named": true
}
]
}
},
{
"type": "argument_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "assignment_expression",
"named": true
},
{
"type": "call_expression",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "literal_type",
"named": true
}
]
}
},
{
"type": "array",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "type_block",
"named": true
}
]
}
},
{
"type": "assignment_expression",
"named": true,
"fields": {
"left": {
"multiple": false,
"required": true,
"types": [
{
"type": "assignment_expression",
"named": true
},
{
"type": "call_expression",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "literal_type",
"named": true
}
]
},
"right": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "call_expression",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "argument_list",
"named": true
},
{
"type": "identifier",
"named": true
}
]
}
},
{
"type": "decimal",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "argument_list",
"named": true
}
]
}
},
{
"type": "default_enumeral",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
{
"type": "default_value_expression",
"named": true,
"fields": {
"left": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"right": {
"multiple": false,
"required": true,
"types": [
{
"type": "value",
"named": true
}
]
}
}
},
{
"type": "enum_block",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "enumeral",
"named": true
}
]
}
},
{
"type": "enum_declaration",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "default_enumeral",
"named": true
},
{
"type": "enum_block",
"named": true
}
]
}
},
{
"type": "enumeral",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
{
"type": "error_declaration",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "statement_block",
"named": true
}
]
}
},
{
"type": "field_declaration",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"type": {
"multiple": true,
"required": true,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "array",
"named": true
},
{
"type": "logical_type",
"named": true
},
{
"type": "map",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "union",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "default_value_expression",
"named": true
}
]
}
},
{
"type": "fixed_declaration",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "call_expression",
"named": true
},
{
"type": "identifier",
"named": true
}
]
}
},
{
"type": "import_declaration",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
},
{
"type": "literal_type",
"named": true
}
]
}
},
{
"type": "known_logical_type",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "decimal",
"named": true
}
]
}
},
{
"type": "literal_type",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "false",
"named": true
},
{
"type": "null",
"named": true
},
{
"type": "number",
"named": true
},
{
"type": "string",
"named": true
},
{
"type": "true",
"named": true
}
]
}
},
{
"type": "logical_type",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "call_expression",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "known_logical_type",
"named": true
}
]
}
},
{
"type": "map",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "type_block",
"named": true
}
]
}
},
{
"type": "namespace_statement",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "namespace_identifier",
"named": true
}
]
}
},
{
"type": "null",
"named": true,
"fields": {}
},
{
"type": "nullable",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "array",
"named": true
},
{
"type": "logical_type",
"named": true
},
{
"type": "map",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "union",
"named": true
}
]
}
},
{
"type": "parameter",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "default_value_expression",
"named": true
},
{
"type": "identifier",
"named": true
}
]
},
"type": {
"multiple": true,
"required": true,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "array",
"named": true
},
{
"type": "logical_type",
"named": true
},
{
"type": "map",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "union",
"named": true
}
]
}
}
},
{
"type": "parameter_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "parameter",
"named": true
}
]
}
},
{
"type": "primitive_type",
"named": true,
"fields": {}
},
{
"type": "program",
"named": true,
"root": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "enum_declaration",
"named": true
},
{
"type": "error_declaration",
"named": true
},
{
"type": "fixed_declaration",
"named": true
},
{
"type": "import_declaration",
"named": true
},
{
"type": "protocol_declaration",
"named": true
},
{
"type": "record_declaration",
"named": true
},
{
"type": "rpc_message_declaration",
"named": true
},
{
"type": "schema_declaration",
"named": true
}
]
}
},
{
"type": "protocol_block",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "enum_declaration",
"named": true
},
{
"type": "error_declaration",
"named": true
},
{
"type": "fixed_declaration",
"named": true
},
{
"type": "import_declaration",
"named": true
},
{
"type": "record_declaration",
"named": true
},
{
"type": "rpc_message_declaration",
"named": true
}
]
}
},
{
"type": "protocol_declaration",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "protocol_block",
"named": true
}
]
}
},
{
"type": "record_declaration",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "statement_block",
"named": true
}
]
}
},
{
"type": "return_value",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "array",
"named": true
},
{
"type": "logical_type",
"named": true
},
{
"type": "map",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "union",
"named": true
},
{
"type": "void",
"named": true
}
]
}
},
{
"type": "rpc_message_declaration",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "oneway",
"named": true
},
{
"type": "parameter_list",
"named": true
},
{
"type": "return_value",
"named": true
},
{
"type": "throw_statement",
"named": true
}
]
}
},
{
"type": "schema_declaration",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
},
{
"type": "namespace_statement",
"named": true
},
{
"type": "primitive_type",
"named": true
}
]
}
},
{
"type": "statement_block",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "field_declaration",
"named": true
}
]
}
},
{
"type": "throw_statement",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
{
"type": "type_block",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "array",
"named": true
},
{
"type": "logical_type",
"named": true
},
{
"type": "map",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "union",
"named": true
}
]
}
},
{
"type": "union",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "union_block",
"named": true
}
]
}
},
{
"type": "union_block",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "anotation_statement",
"named": true
},
{
"type": "array",
"named": true
},
{
"type": "logical_type",
"named": true
},
{
"type": "map",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "union",
"named": true
}
]
}
},
{
"type": "value",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
},
{
"type": "literal_type",
"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": "anotation_identifier",
"named": true
},
{
"type": "array",
"named": false
},
{
"type": "boolean",
"named": false
},
{
"type": "bytes",
"named": false
},
{
"type": "comment",
"named": true,
"extra": true
},
{
"type": "date",
"named": false
},
{
"type": "decimal",
"named": false
},
{
"type": "double",
"named": false
},
{
"type": "enum",
"named": false
},
{
"type": "error",
"named": false
},
{
"type": "false",
"named": true
},
{
"type": "fixed",
"named": false
},
{
"type": "float",
"named": false
},
{
"type": "identifier",
"named": true
},
{
"type": "import",
"named": false
},
{
"type": "int",
"named": false
},
{
"type": "local_timestamp_ms",
"named": false
},
{
"type": "long",
"named": false
},
{
"type": "map",
"named": false
},
{
"type": "namespace",
"named": false
},
{
"type": "namespace_identifier",
"named": true
},
{
"type": "null",
"named": false
},
{
"type": "number",
"named": true
},
{
"type": "oneway",
"named": true
},
{
"type": "protocol",
"named": false
},
{
"type": "record",
"named": false
},
{
"type": "schema",
"named": false
},
{
"type": "string",
"named": true
},
{
"type": "string",
"named": false
},
{
"type": "throws",
"named": false
},
{
"type": "time_ms",
"named": false
},
{
"type": "timestamp_ms",
"named": false
},
{
"type": "true",
"named": true
},
{
"type": "union",
"named": false
},
{
"type": "uuid",
"named": false
},
{
"type": "void",
"named": true
},
{
"type": "{",
"named": false
},
{
"type": "}",
"named": false
}
]