tree-sitter-objc/src/node-types.json

8606 lines
158 KiB
JSON

[
{
"type": "_abstract_declarator",
"named": true,
"subtypes": [
{
"type": "abstract_array_declarator",
"named": true
},
{
"type": "abstract_function_declarator",
"named": true
},
{
"type": "abstract_parenthesized_declarator",
"named": true
},
{
"type": "abstract_pointer_declarator",
"named": true
},
{
"type": "block_abstract_declarator",
"named": true
}
]
},
{
"type": "_declarator",
"named": true,
"subtypes": [
{
"type": "array_declarator",
"named": true
},
{
"type": "block_declarator",
"named": true
},
{
"type": "function_declarator",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "parenthesized_declarator",
"named": true
},
{
"type": "pointer_declarator",
"named": true
}
]
},
{
"type": "_expression",
"named": true,
"subtypes": [
{
"type": "NO",
"named": true
},
{
"type": "YES",
"named": true
},
{
"type": "array_expression",
"named": true
},
{
"type": "assignment_expression",
"named": true
},
{
"type": "available_expression",
"named": true
},
{
"type": "binary_expression",
"named": true
},
{
"type": "block_expression",
"named": true
},
{
"type": "boolean_expression",
"named": true
},
{
"type": "call_expression",
"named": true
},
{
"type": "cast_expression",
"named": true
},
{
"type": "char_literal",
"named": true
},
{
"type": "compound_literal_expression",
"named": true
},
{
"type": "concatenated_string",
"named": true
},
{
"type": "conditional_expression",
"named": true
},
{
"type": "dictionary_expression",
"named": true
},
{
"type": "encode_expression",
"named": true
},
{
"type": "false",
"named": true
},
{
"type": "field_expression",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "message_expression",
"named": true
},
{
"type": "nil",
"named": true
},
{
"type": "null",
"named": true
},
{
"type": "number_expression",
"named": true
},
{
"type": "number_literal",
"named": true
},
{
"type": "object_expression",
"named": true
},
{
"type": "parenthesized_expression",
"named": true
},
{
"type": "pointer_expression",
"named": true
},
{
"type": "protocol_expression",
"named": true
},
{
"type": "selector_expression",
"named": true
},
{
"type": "self",
"named": true
},
{
"type": "sizeof_expression",
"named": true
},
{
"type": "statement_expression",
"named": true
},
{
"type": "string_expression",
"named": true
},
{
"type": "string_literal",
"named": true
},
{
"type": "subscript_expression",
"named": true
},
{
"type": "super",
"named": true
},
{
"type": "true",
"named": true
},
{
"type": "unary_expression",
"named": true
},
{
"type": "update_expression",
"named": true
},
{
"type": "va_arg_expression",
"named": true
}
]
},
{
"type": "_field_declarator",
"named": true,
"subtypes": [
{
"type": "array_declarator",
"named": true
},
{
"type": "block_declarator",
"named": true
},
{
"type": "field_identifier",
"named": true
},
{
"type": "function_declarator",
"named": true
},
{
"type": "parenthesized_declarator",
"named": true
},
{
"type": "pointer_declarator",
"named": true
}
]
},
{
"type": "_statement",
"named": true,
"subtypes": [
{
"type": "autoreleasepool_statement",
"named": true
},
{
"type": "break_statement",
"named": true
},
{
"type": "case_statement",
"named": true
},
{
"type": "compound_statement",
"named": true
},
{
"type": "continue_statement",
"named": true
},
{
"type": "do_statement",
"named": true
},
{
"type": "expression_statement",
"named": true
},
{
"type": "for_in_statement",
"named": true
},
{
"type": "for_statement",
"named": true
},
{
"type": "goto_statement",
"named": true
},
{
"type": "if_statement",
"named": true
},
{
"type": "labeled_statement",
"named": true
},
{
"type": "return_statement",
"named": true
},
{
"type": "switch_statement",
"named": true
},
{
"type": "synchronized_statement",
"named": true
},
{
"type": "throw_statement",
"named": true
},
{
"type": "try_catch_statement",
"named": true
},
{
"type": "while_statement",
"named": true
}
]
},
{
"type": "_type_declarator",
"named": true,
"subtypes": [
{
"type": "array_declarator",
"named": true
},
{
"type": "block_declarator",
"named": true
},
{
"type": "function_declarator",
"named": true
},
{
"type": "parenthesized_declarator",
"named": true
},
{
"type": "pointer_declarator",
"named": true
},
{
"type": "type_identifier",
"named": true
}
]
},
{
"type": "abstract_array_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
}
]
},
"size": {
"multiple": false,
"required": false,
"types": [
{
"type": "*",
"named": false
},
{
"type": "_expression",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "abstract_function_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
}
]
},
"parameters": {
"multiple": false,
"required": true,
"types": [
{
"type": "parameter_list",
"named": true
}
]
}
}
},
{
"type": "abstract_parenthesized_declarator",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "_abstract_declarator",
"named": true
}
]
}
},
{
"type": "abstract_pointer_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "argument_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "preproc_defined",
"named": true
},
{
"type": "preproc_has_include",
"named": true
}
]
}
},
{
"type": "array_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": true,
"types": [
{
"type": "_declarator",
"named": true
},
{
"type": "_field_declarator",
"named": true
},
{
"type": "_type_declarator",
"named": true
}
]
},
"size": {
"multiple": false,
"required": false,
"types": [
{
"type": "*",
"named": false
},
{
"type": "_expression",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "array_expression",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
}
},
{
"type": "assignment_expression",
"named": true,
"fields": {
"left": {
"multiple": false,
"required": true,
"types": [
{
"type": "call_expression",
"named": true
},
{
"type": "field_expression",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "parenthesized_expression",
"named": true
},
{
"type": "pointer_expression",
"named": true
},
{
"type": "self",
"named": true
},
{
"type": "subscript_expression",
"named": true
}
]
},
"right": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
}
}
},
{
"type": "atomic_specifier",
"named": true,
"fields": {
"operator": {
"multiple": false,
"required": true,
"types": [
{
"type": "_Atomic",
"named": false
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "type_descriptor",
"named": true
}
]
}
}
},
{
"type": "attribute_specifier",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "argument_list",
"named": true
},
{
"type": "availability_attribute_specifier",
"named": true
},
{
"type": "method_attribute_specifier",
"named": true
},
{
"type": "method_variadic_arguments_attribute_specifier",
"named": true
}
]
}
},
{
"type": "autoreleasepool_statement",
"named": true,
"fields": {
"consequence": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
}
}
},
{
"type": "availability_attribute_specifier",
"named": true,
"fields": {
"message": {
"multiple": true,
"required": false,
"types": [
{
"type": "string_literal",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "platform_version",
"named": true
}
]
}
},
{
"type": "available_expression",
"named": true,
"fields": {
"platform": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "binary_expression",
"named": true,
"fields": {
"left": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "preproc_defined",
"named": true
},
{
"type": "preproc_has_include",
"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
}
]
},
"right": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "preproc_defined",
"named": true
},
{
"type": "preproc_has_include",
"named": true
}
]
}
}
},
{
"type": "bitfield_clause",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
}
},
{
"type": "block_abstract_declarator",
"named": true,
"fields": {
"parameters": {
"multiple": false,
"required": true,
"types": [
{
"type": "parameter_list",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "block_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"parameters": {
"multiple": false,
"required": true,
"types": [
{
"type": "parameter_list",
"named": true
}
]
},
"return_type": {
"multiple": false,
"required": false,
"types": [
{
"type": "block_declarator",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "block_expression",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "type_descriptor",
"named": true
},
{
"type": "type_qualifier",
"named": true
}
]
},
"parameters": {
"multiple": false,
"required": false,
"types": [
{
"type": "parameter_list",
"named": true
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "compound_statement",
"named": true
}
]
}
},
{
"type": "boolean_expression",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "NO",
"named": true
},
{
"type": "YES",
"named": true
}
]
}
},
{
"type": "break_statement",
"named": true,
"fields": {}
},
{
"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": "case_statement",
"named": true,
"fields": {
"value": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "autoreleasepool_statement",
"named": true
},
{
"type": "break_statement",
"named": true
},
{
"type": "compound_statement",
"named": true
},
{
"type": "continue_statement",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "do_statement",
"named": true
},
{
"type": "expression_statement",
"named": true
},
{
"type": "for_in_statement",
"named": true
},
{
"type": "for_statement",
"named": true
},
{
"type": "goto_statement",
"named": true
},
{
"type": "if_statement",
"named": true
},
{
"type": "labeled_statement",
"named": true
},
{
"type": "return_statement",
"named": true
},
{
"type": "switch_statement",
"named": true
},
{
"type": "synchronized_statement",
"named": true
},
{
"type": "throw_statement",
"named": true
},
{
"type": "try_catch_statement",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "while_statement",
"named": true
}
]
}
},
{
"type": "cast_expression",
"named": true,
"fields": {
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "block_abstract_declarator",
"named": true
},
{
"type": "type_descriptor",
"named": true
}
]
},
"value": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
}
}
},
{
"type": "category_implementation",
"named": true,
"fields": {
"category": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "dynamic_definition",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "method_definition",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "synthesize_definition",
"named": true
},
{
"type": "type_definition",
"named": true
}
]
}
},
{
"type": "category_interface",
"named": true,
"fields": {
"category": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"name": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "field_declaration",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "generics_type_reference",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "method_declaration",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "optional",
"named": true
},
{
"type": "package",
"named": true
},
{
"type": "parameterized_class_type_arguments",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "private",
"named": true
},
{
"type": "property_declaration",
"named": true
},
{
"type": "protected",
"named": true
},
{
"type": "protocol_qualifiers",
"named": true
},
{
"type": "public",
"named": true
},
{
"type": "required",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "char_literal",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "escape_sequence",
"named": true
}
]
}
},
{
"type": "class_forward_declaration",
"named": true,
"fields": {
"name": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "parameterized_class_type_arguments",
"named": true
},
{
"type": "protocol_qualifiers",
"named": true
}
]
}
},
{
"type": "class_implementation",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "dynamic_definition",
"named": true
},
{
"type": "field_declaration",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "method_definition",
"named": true
},
{
"type": "package",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "private",
"named": true
},
{
"type": "protected",
"named": true
},
{
"type": "public",
"named": true
},
{
"type": "superclass_reference",
"named": true
},
{
"type": "synthesize_definition",
"named": true
},
{
"type": "type_definition",
"named": true
}
]
}
},
{
"type": "class_interface",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "attribute_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "class_interface_attribute_sepcifier",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "field_declaration",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "generics_type_reference",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "method_declaration",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "optional",
"named": true
},
{
"type": "package",
"named": true
},
{
"type": "parameterized_class_type_arguments",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "private",
"named": true
},
{
"type": "property_declaration",
"named": true
},
{
"type": "protected",
"named": true
},
{
"type": "protocol_qualifiers",
"named": true
},
{
"type": "public",
"named": true
},
{
"type": "required",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "superclass_reference",
"named": true
},
{
"type": "swift_name_attribute_sepcifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "class_scope",
"named": true,
"fields": {}
},
{
"type": "comma_expression",
"named": true,
"fields": {
"left": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"right": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "comma_expression",
"named": true
}
]
}
}
},
{
"type": "compatibility_alias_declaration",
"named": true,
"fields": {
"alias_name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"class_name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "compound_literal_expression",
"named": true,
"fields": {
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "type_descriptor",
"named": true
}
]
},
"value": {
"multiple": false,
"required": true,
"types": [
{
"type": "initializer_list",
"named": true
}
]
}
}
},
{
"type": "compound_statement",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "_statement",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "category_implementation",
"named": true
},
{
"type": "category_interface",
"named": true
},
{
"type": "class_forward_declaration",
"named": true
},
{
"type": "class_implementation",
"named": true
},
{
"type": "class_interface",
"named": true
},
{
"type": "compatibility_alias_declaration",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "linkage_specification",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "module_import",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "preproc_if",
"named": true
},
{
"type": "preproc_ifdef",
"named": true
},
{
"type": "preproc_import",
"named": true
},
{
"type": "preproc_include",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "protocol_declaration",
"named": true
},
{
"type": "protocol_forward_declaration",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "concatenated_string",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "string_literal",
"named": true
}
]
}
},
{
"type": "conditional_expression",
"named": true,
"fields": {
"alternative": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"consequence": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
}
}
},
{
"type": "continue_statement",
"named": true,
"fields": {}
},
{
"type": "declaration",
"named": true,
"fields": {
"declarator": {
"multiple": true,
"required": true,
"types": [
{
"type": "_declarator",
"named": true
},
{
"type": "init_declarator",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "ms_declspec_modifier",
"named": true
},
{
"type": "storage_class_specifier",
"named": true
},
{
"type": "swift_name_attribute_sepcifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "declaration_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "_statement",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "category_implementation",
"named": true
},
{
"type": "category_interface",
"named": true
},
{
"type": "class_forward_declaration",
"named": true
},
{
"type": "class_implementation",
"named": true
},
{
"type": "class_interface",
"named": true
},
{
"type": "compatibility_alias_declaration",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "linkage_specification",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "module_import",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "preproc_if",
"named": true
},
{
"type": "preproc_ifdef",
"named": true
},
{
"type": "preproc_import",
"named": true
},
{
"type": "preproc_include",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "protocol_declaration",
"named": true
},
{
"type": "protocol_forward_declaration",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "dictionary_expression",
"named": true,
"fields": {
"key": {
"multiple": true,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"value": {
"multiple": true,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
}
}
},
{
"type": "do_statement",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
},
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "parenthesized_expression",
"named": true
}
]
}
}
},
{
"type": "dynamic_definition",
"named": true,
"fields": {
"property": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "encode_expression",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "type_descriptor",
"named": true
}
]
}
},
{
"type": "enum_specifier",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": false,
"types": [
{
"type": "enumerator_list",
"named": true
}
]
},
"name": {
"multiple": false,
"required": false,
"types": [
{
"type": "type_identifier",
"named": true
}
]
},
"superclass": {
"multiple": true,
"required": false,
"types": [
{
"type": ":",
"named": false
},
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
}
},
{
"type": "enumerator",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"value": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "swift_name_attribute_sepcifier",
"named": true
}
]
}
},
{
"type": "enumerator_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "enumerator",
"named": true
}
]
}
},
{
"type": "expression_statement",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "comma_expression",
"named": true
}
]
}
},
{
"type": "field_declaration",
"named": true,
"fields": {
"declarator": {
"multiple": true,
"required": false,
"types": [
{
"type": "_field_declarator",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "bitfield_clause",
"named": true
},
{
"type": "ms_declspec_modifier",
"named": true
},
{
"type": "storage_class_specifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "field_declaration_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "field_declaration",
"named": true
},
{
"type": "preproc_call",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "preproc_if",
"named": true
},
{
"type": "preproc_ifdef",
"named": true
}
]
}
},
{
"type": "field_designator",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "field_identifier",
"named": true
}
]
}
},
{
"type": "field_expression",
"named": true,
"fields": {
"argument": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"field": {
"multiple": false,
"required": true,
"types": [
{
"type": "field_identifier",
"named": true
}
]
}
}
},
{
"type": "for_in_statement",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
}
]
},
"initializer": {
"multiple": true,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "NS_NOESCAPE",
"named": false
},
{
"type": "SEL",
"named": true
},
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "attribute_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ms_declspec_modifier",
"named": true
},
{
"type": "nonnull",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "storage_class_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
},
"loop": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
}
},
{
"type": "for_statement",
"named": true,
"fields": {
"condition": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"initializer": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "comma_expression",
"named": true
},
{
"type": "declaration",
"named": true
}
]
},
"update": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "comma_expression",
"named": true
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
}
},
{
"type": "function_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": true,
"types": [
{
"type": "_declarator",
"named": true
},
{
"type": "_field_declarator",
"named": true
},
{
"type": "_type_declarator",
"named": true
}
]
},
"parameters": {
"multiple": false,
"required": true,
"types": [
{
"type": "parameter_list",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
}
]
}
},
{
"type": "function_definition",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": true,
"types": [
{
"type": "compound_statement",
"named": true
}
]
},
"declarator": {
"multiple": false,
"required": true,
"types": [
{
"type": "_declarator",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "ms_call_modifier",
"named": true
},
{
"type": "ms_declspec_modifier",
"named": true
},
{
"type": "storage_class_specifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "generic_type_references",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "type_descriptor",
"named": true
}
]
}
},
{
"type": "generic_type_specifier",
"named": true,
"fields": {
"class_name": {
"multiple": false,
"required": true,
"types": [
{
"type": "Class",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "type_identifier",
"named": true
}
]
},
"type_reference": {
"multiple": true,
"required": true,
"types": [
{
"type": "generic_type_references",
"named": true
},
{
"type": "protocol_qualifiers",
"named": true
}
]
}
}
},
{
"type": "generics_type_reference",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "getter",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "goto_statement",
"named": true,
"fields": {
"label": {
"multiple": false,
"required": true,
"types": [
{
"type": "statement_identifier",
"named": true
}
]
}
}
},
{
"type": "if_statement",
"named": true,
"fields": {
"alternative": {
"multiple": false,
"required": false,
"types": [
{
"type": "_statement",
"named": true
}
]
},
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "parenthesized_expression",
"named": true
}
]
},
"consequence": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
}
}
},
{
"type": "init_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": true,
"types": [
{
"type": "_declarator",
"named": true
}
]
},
"value": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "initializer_list",
"named": true
}
]
}
}
},
{
"type": "initializer_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "initializer_list",
"named": true
},
{
"type": "initializer_pair",
"named": true
}
]
}
},
{
"type": "initializer_pair",
"named": true,
"fields": {
"designator": {
"multiple": true,
"required": true,
"types": [
{
"type": "field_designator",
"named": true
},
{
"type": "subscript_designator",
"named": true
}
]
},
"value": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "initializer_list",
"named": true
}
]
}
}
},
{
"type": "instance_scope",
"named": true,
"fields": {}
},
{
"type": "keyword_argument",
"named": true,
"fields": {
"argument": {
"multiple": true,
"required": true,
"types": [
{
"type": ",",
"named": false
},
{
"type": "_expression",
"named": true
}
]
},
"keyword": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "keyword_argument_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "keyword_argument",
"named": true
}
]
}
},
{
"type": "keyword_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
}
]
},
"keyword": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"type": {
"multiple": true,
"required": false,
"types": [
{
"type": "(",
"named": false
},
{
"type": ")",
"named": false
},
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "NS_NOESCAPE",
"named": false
},
{
"type": "SEL",
"named": true
},
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "attribute_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ms_declspec_modifier",
"named": true
},
{
"type": "nonnull",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "storage_class_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
}
},
{
"type": "keyword_selector",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "keyword_declarator",
"named": true
}
]
}
},
{
"type": "labeled_statement",
"named": true,
"fields": {
"label": {
"multiple": false,
"required": true,
"types": [
{
"type": "statement_identifier",
"named": true
}
]
}
},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
}
},
{
"type": "linkage_specification",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": true,
"types": [
{
"type": "declaration",
"named": true
},
{
"type": "declaration_list",
"named": true
},
{
"type": "function_definition",
"named": true
}
]
},
"value": {
"multiple": false,
"required": true,
"types": [
{
"type": "string_literal",
"named": true
}
]
}
}
},
{
"type": "macro_type_specifier",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "type_descriptor",
"named": true
}
]
}
}
},
{
"type": "message_expression",
"named": true,
"fields": {
"receiver": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "_expression",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
},
"selector": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
},
{
"type": "keyword_argument_list",
"named": true
}
]
}
}
},
{
"type": "method_declaration",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
}
]
},
"return_type": {
"multiple": true,
"required": false,
"types": [
{
"type": "(",
"named": false
},
{
"type": ")",
"named": false
},
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "NS_NOESCAPE",
"named": false
},
{
"type": "SEL",
"named": true
},
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "attribute_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ms_declspec_modifier",
"named": true
},
{
"type": "nonnull",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "storage_class_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
},
"scope": {
"multiple": false,
"required": true,
"types": [
{
"type": "class_scope",
"named": true
},
{
"type": "instance_scope",
"named": true
}
]
},
"selector": {
"multiple": true,
"required": true,
"types": [
{
"type": ",",
"named": false
},
{
"type": "...",
"named": false
},
{
"type": "identifier",
"named": true
},
{
"type": "keyword_selector",
"named": true
}
]
},
"type": {
"multiple": false,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "swift_name_attribute_sepcifier",
"named": true
}
]
}
},
{
"type": "method_definition",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": true,
"types": [
{
"type": "compound_statement",
"named": true
}
]
},
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
}
]
},
"return_type": {
"multiple": true,
"required": false,
"types": [
{
"type": "(",
"named": false
},
{
"type": ")",
"named": false
},
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "NS_NOESCAPE",
"named": false
},
{
"type": "SEL",
"named": true
},
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "attribute_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ms_declspec_modifier",
"named": true
},
{
"type": "nonnull",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "storage_class_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
},
"scope": {
"multiple": false,
"required": true,
"types": [
{
"type": "class_scope",
"named": true
},
{
"type": "instance_scope",
"named": true
}
]
},
"selector": {
"multiple": true,
"required": true,
"types": [
{
"type": ",",
"named": false
},
{
"type": "...",
"named": false
},
{
"type": "identifier",
"named": true
},
{
"type": "keyword_selector",
"named": true
}
]
},
"type": {
"multiple": false,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
}
]
}
},
{
"type": "method_variadic_arguments_attribute_specifier",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "number_literal",
"named": true
}
]
}
},
{
"type": "module_import",
"named": true,
"fields": {
"module": {
"multiple": false,
"required": true,
"types": [
{
"type": "module_string",
"named": true
}
]
}
}
},
{
"type": "ms_based_modifier",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "argument_list",
"named": true
}
]
}
},
{
"type": "ms_call_modifier",
"named": true,
"fields": {}
},
{
"type": "ms_declspec_modifier",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
{
"type": "ms_pointer_modifier",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "ms_restrict_modifier",
"named": true
},
{
"type": "ms_signed_ptr_modifier",
"named": true
},
{
"type": "ms_unaligned_ptr_modifier",
"named": true
},
{
"type": "ms_unsigned_ptr_modifier",
"named": true
}
]
}
},
{
"type": "ms_unaligned_ptr_modifier",
"named": true,
"fields": {}
},
{
"type": "ns_enum_specifier",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": false,
"types": [
{
"type": "enumerator_list",
"named": true
}
]
},
"name": {
"multiple": false,
"required": false,
"types": [
{
"type": "type_identifier",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
}
},
{
"type": "number_expression",
"named": true,
"fields": {}
},
{
"type": "object_expression",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
}
},
{
"type": "parameter_declaration",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
},
{
"type": "_declarator",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "ms_declspec_modifier",
"named": true
},
{
"type": "storage_class_specifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "parameter_list",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "parameter_declaration",
"named": true
}
]
}
},
{
"type": "parameterized_class_type_arguments",
"named": true,
"fields": {
"type": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "type_descriptor",
"named": true
}
]
}
},
{
"type": "parenthesized_declarator",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "_declarator",
"named": true
},
{
"type": "_field_declarator",
"named": true
},
{
"type": "_type_declarator",
"named": true
}
]
}
},
{
"type": "parenthesized_expression",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "comma_expression",
"named": true
},
{
"type": "preproc_defined",
"named": true
},
{
"type": "preproc_has_include",
"named": true
}
]
}
},
{
"type": "platform",
"named": true,
"fields": {}
},
{
"type": "platform_version",
"named": true,
"fields": {
"platform": {
"multiple": false,
"required": false,
"types": [
{
"type": "platform",
"named": true
}
]
},
"version": {
"multiple": true,
"required": false,
"types": [
{
"type": ",",
"named": false
},
{
"type": "identifier",
"named": true
},
{
"type": "number_literal",
"named": true
}
]
}
}
},
{
"type": "pointer_declarator",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": true,
"types": [
{
"type": "_declarator",
"named": true
},
{
"type": "_field_declarator",
"named": true
},
{
"type": "_type_declarator",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "ms_based_modifier",
"named": true
},
{
"type": "ms_pointer_modifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "pointer_expression",
"named": true,
"fields": {
"argument": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"operator": {
"multiple": false,
"required": true,
"types": [
{
"type": "&",
"named": false
},
{
"type": "*",
"named": false
}
]
}
}
},
{
"type": "preproc_call",
"named": true,
"fields": {
"argument": {
"multiple": false,
"required": false,
"types": [
{
"type": "preproc_arg",
"named": true
}
]
},
"directive": {
"multiple": false,
"required": true,
"types": [
{
"type": "preproc_directive",
"named": true
}
]
}
}
},
{
"type": "preproc_def",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"value": {
"multiple": false,
"required": false,
"types": [
{
"type": "preproc_arg",
"named": true
}
]
}
}
},
{
"type": "preproc_defined",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
{
"type": "preproc_elif",
"named": true,
"fields": {
"alternative": {
"multiple": false,
"required": false,
"types": [
{
"type": "preproc_elif",
"named": true
},
{
"type": "preproc_else",
"named": true
}
]
},
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "binary_expression",
"named": true
},
{
"type": "call_expression",
"named": true
},
{
"type": "char_literal",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "number_literal",
"named": true
},
{
"type": "parenthesized_expression",
"named": true
},
{
"type": "preproc_defined",
"named": true
},
{
"type": "preproc_has_include",
"named": true
},
{
"type": "unary_expression",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "_statement",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "category_implementation",
"named": true
},
{
"type": "category_interface",
"named": true
},
{
"type": "class_forward_declaration",
"named": true
},
{
"type": "class_implementation",
"named": true
},
{
"type": "class_interface",
"named": true
},
{
"type": "compatibility_alias_declaration",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "field_declaration",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "linkage_specification",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "module_import",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "preproc_call",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "preproc_if",
"named": true
},
{
"type": "preproc_ifdef",
"named": true
},
{
"type": "preproc_import",
"named": true
},
{
"type": "preproc_include",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "protocol_declaration",
"named": true
},
{
"type": "protocol_forward_declaration",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "preproc_else",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "_statement",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "category_implementation",
"named": true
},
{
"type": "category_interface",
"named": true
},
{
"type": "class_forward_declaration",
"named": true
},
{
"type": "class_implementation",
"named": true
},
{
"type": "class_interface",
"named": true
},
{
"type": "compatibility_alias_declaration",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "field_declaration",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "linkage_specification",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "module_import",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "preproc_call",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "preproc_if",
"named": true
},
{
"type": "preproc_ifdef",
"named": true
},
{
"type": "preproc_import",
"named": true
},
{
"type": "preproc_include",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "protocol_declaration",
"named": true
},
{
"type": "protocol_forward_declaration",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "preproc_function_def",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"parameters": {
"multiple": false,
"required": true,
"types": [
{
"type": "preproc_params",
"named": true
}
]
},
"value": {
"multiple": false,
"required": false,
"types": [
{
"type": "preproc_arg",
"named": true
}
]
}
}
},
{
"type": "preproc_has_include",
"named": true,
"fields": {
"path": {
"multiple": false,
"required": true,
"types": [
{
"type": "module_string",
"named": true
},
{
"type": "string_literal",
"named": true
},
{
"type": "system_lib_string",
"named": true
}
]
}
}
},
{
"type": "preproc_if",
"named": true,
"fields": {
"alternative": {
"multiple": false,
"required": false,
"types": [
{
"type": "preproc_elif",
"named": true
},
{
"type": "preproc_else",
"named": true
}
]
},
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "binary_expression",
"named": true
},
{
"type": "call_expression",
"named": true
},
{
"type": "char_literal",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "number_literal",
"named": true
},
{
"type": "parenthesized_expression",
"named": true
},
{
"type": "preproc_defined",
"named": true
},
{
"type": "preproc_has_include",
"named": true
},
{
"type": "unary_expression",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "_statement",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "category_implementation",
"named": true
},
{
"type": "category_interface",
"named": true
},
{
"type": "class_forward_declaration",
"named": true
},
{
"type": "class_implementation",
"named": true
},
{
"type": "class_interface",
"named": true
},
{
"type": "compatibility_alias_declaration",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "field_declaration",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "linkage_specification",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "module_import",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "preproc_call",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "preproc_if",
"named": true
},
{
"type": "preproc_ifdef",
"named": true
},
{
"type": "preproc_import",
"named": true
},
{
"type": "preproc_include",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "protocol_declaration",
"named": true
},
{
"type": "protocol_forward_declaration",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "preproc_ifdef",
"named": true,
"fields": {
"alternative": {
"multiple": false,
"required": false,
"types": [
{
"type": "preproc_elif",
"named": true
},
{
"type": "preproc_else",
"named": true
}
]
},
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "_statement",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "category_implementation",
"named": true
},
{
"type": "category_interface",
"named": true
},
{
"type": "class_forward_declaration",
"named": true
},
{
"type": "class_implementation",
"named": true
},
{
"type": "class_interface",
"named": true
},
{
"type": "compatibility_alias_declaration",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "field_declaration",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "linkage_specification",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "module_import",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "preproc_call",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "preproc_if",
"named": true
},
{
"type": "preproc_ifdef",
"named": true
},
{
"type": "preproc_import",
"named": true
},
{
"type": "preproc_include",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "protocol_declaration",
"named": true
},
{
"type": "protocol_forward_declaration",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "preproc_import",
"named": true,
"fields": {
"path": {
"multiple": false,
"required": true,
"types": [
{
"type": "string_literal",
"named": true
},
{
"type": "system_lib_string",
"named": true
}
]
}
}
},
{
"type": "preproc_include",
"named": true,
"fields": {
"path": {
"multiple": false,
"required": true,
"types": [
{
"type": "call_expression",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "string_literal",
"named": true
},
{
"type": "system_lib_string",
"named": true
}
]
}
}
},
{
"type": "preproc_params",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
{
"type": "property_attributes",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "DISPATCH_QUEUE_REFERENCE_TYPE",
"named": true
},
{
"type": "NS_NONATOMIC_IOSONLY",
"named": true
},
{
"type": "assign",
"named": true
},
{
"type": "atomic",
"named": true
},
{
"type": "class",
"named": true
},
{
"type": "copy",
"named": true
},
{
"type": "direct",
"named": true
},
{
"type": "getter",
"named": true
},
{
"type": "nonatomic",
"named": true
},
{
"type": "nonnull",
"named": true
},
{
"type": "null_resettable",
"named": true
},
{
"type": "null_unspecified",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "readonly",
"named": true
},
{
"type": "readwrite",
"named": true
},
{
"type": "retain",
"named": true
},
{
"type": "setter",
"named": true
},
{
"type": "strong",
"named": true
},
{
"type": "unsafe_unretained",
"named": true
},
{
"type": "weak",
"named": true
}
]
}
},
{
"type": "property_declaration",
"named": true,
"fields": {
"declarator": {
"multiple": true,
"required": true,
"types": [
{
"type": "_declarator",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "property_attributes",
"named": true
},
{
"type": "swift_name_attribute_sepcifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "protocol_declaration",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "attribute_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "method_declaration",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "optional",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "property_declaration",
"named": true
},
{
"type": "protocol_qualifiers",
"named": true
},
{
"type": "required",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "swift_name_attribute_sepcifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "protocol_expression",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "protocol_forward_declaration",
"named": true,
"fields": {
"name": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "protocol_qualifiers",
"named": true,
"fields": {
"name": {
"multiple": true,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "return_statement",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "comma_expression",
"named": true
}
]
}
},
{
"type": "selector_expression",
"named": true,
"fields": {
"name": {
"multiple": true,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "setter",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "sized_type_specifier",
"named": true,
"fields": {
"type": {
"multiple": false,
"required": false,
"types": [
{
"type": "primitive_type",
"named": true
},
{
"type": "type_identifier",
"named": true
}
]
}
}
},
{
"type": "sizeof_expression",
"named": true,
"fields": {
"type": {
"multiple": false,
"required": false,
"types": [
{
"type": "type_descriptor",
"named": true
}
]
},
"value": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
}
]
}
}
},
{
"type": "statement_expression",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
}
}
},
{
"type": "storage_class_specifier",
"named": true,
"fields": {}
},
{
"type": "string_expression",
"named": true,
"fields": {}
},
{
"type": "string_literal",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "escape_sequence",
"named": true
}
]
}
},
{
"type": "struct_specifier",
"named": true,
"fields": {
"body": {
"multiple": true,
"required": false,
"types": [
{
"type": "(",
"named": false
},
{
"type": ")",
"named": false
},
{
"type": "@defs",
"named": false
},
{
"type": "field_declaration_list",
"named": true
}
]
},
"class_name": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"name": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
},
{
"type": "type_identifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "superclass_reference",
"named": true
}
]
}
},
{
"type": "subscript_designator",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
}
},
{
"type": "subscript_expression",
"named": true,
"fields": {
"argument": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"index": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
}
}
},
{
"type": "superclass_reference",
"named": true,
"fields": {
"name": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"type_reference": {
"multiple": false,
"required": false,
"types": [
{
"type": "generic_type_references",
"named": true
}
]
}
}
},
{
"type": "swift_name_attribute_sepcifier",
"named": true,
"fields": {
"class": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"method": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"parameters": {
"multiple": true,
"required": false,
"types": [
{
"type": "(",
"named": false
},
{
"type": ")",
"named": false
},
{
"type": ":",
"named": false
},
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
}
},
{
"type": "switch_statement",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": true,
"types": [
{
"type": "compound_statement",
"named": true
}
]
},
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "parenthesized_expression",
"named": true
}
]
}
}
},
{
"type": "synchronized_statement",
"named": true,
"fields": {
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "parenthesized_expression",
"named": true
}
]
},
"consequence": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
}
}
},
{
"type": "synthesize_definition",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": true,
"types": [
{
"type": "synthesize_property",
"named": true
}
]
}
},
{
"type": "synthesize_property",
"named": true,
"fields": {
"instance_variable": {
"multiple": false,
"required": false,
"types": [
{
"type": "identifier",
"named": true
}
]
},
"property": {
"multiple": false,
"required": true,
"types": [
{
"type": "identifier",
"named": true
}
]
}
}
},
{
"type": "throw_statement",
"named": true,
"fields": {},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "comma_expression",
"named": true
}
]
}
},
{
"type": "translation_unit",
"named": true,
"fields": {},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "_statement",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "category_implementation",
"named": true
},
{
"type": "category_interface",
"named": true
},
{
"type": "class_forward_declaration",
"named": true
},
{
"type": "class_implementation",
"named": true
},
{
"type": "class_interface",
"named": true
},
{
"type": "compatibility_alias_declaration",
"named": true
},
{
"type": "declaration",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "function_definition",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "linkage_specification",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "module_import",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "preproc_def",
"named": true
},
{
"type": "preproc_function_def",
"named": true
},
{
"type": "preproc_if",
"named": true
},
{
"type": "preproc_ifdef",
"named": true
},
{
"type": "preproc_import",
"named": true
},
{
"type": "preproc_include",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "protocol_declaration",
"named": true
},
{
"type": "protocol_forward_declaration",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_definition",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
{
"type": "try_catch_statement",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
},
"catch": {
"multiple": true,
"required": false,
"types": [
{
"type": "_statement",
"named": true
}
]
},
"declaration": {
"multiple": true,
"required": false,
"types": [
{
"type": "(",
"named": false
},
{
"type": ")",
"named": false
},
{
"type": "...",
"named": false
},
{
"type": "parameter_declaration",
"named": true
}
]
},
"finally": {
"multiple": false,
"required": false,
"types": [
{
"type": "_statement",
"named": true
}
]
}
}
},
{
"type": "type_definition",
"named": true,
"fields": {
"attributes": {
"multiple": false,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "identifier",
"named": true
}
]
},
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_type_declarator",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "attribute_specifier",
"named": true
},
{
"type": "swift_name_attribute_sepcifier",
"named": true
},
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "type_descriptor",
"named": true,
"fields": {
"declarator": {
"multiple": false,
"required": false,
"types": [
{
"type": "_abstract_declarator",
"named": true
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "BOOL",
"named": true
},
{
"type": "Class",
"named": true
},
{
"type": "IMP",
"named": true
},
{
"type": "SEL",
"named": true
},
{
"type": "atomic_specifier",
"named": true
},
{
"type": "auto",
"named": true
},
{
"type": "enum_specifier",
"named": true
},
{
"type": "generic_type_specifier",
"named": true
},
{
"type": "id",
"named": true
},
{
"type": "instancetype",
"named": true
},
{
"type": "macro_type_specifier",
"named": true
},
{
"type": "ns_enum_specifier",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "sized_type_specifier",
"named": true
},
{
"type": "struct_specifier",
"named": true
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typeof_specifier",
"named": true
},
{
"type": "union_specifier",
"named": true
}
]
}
},
"children": {
"multiple": true,
"required": false,
"types": [
{
"type": "type_qualifier",
"named": true
}
]
}
},
{
"type": "type_qualifier",
"named": true,
"fields": {}
},
{
"type": "typeof_specifier",
"named": true,
"fields": {
"operator": {
"multiple": false,
"required": true,
"types": [
{
"type": "__typeof",
"named": false
},
{
"type": "__typeof__",
"named": false
},
{
"type": "typeof",
"named": false
}
]
},
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
}
}
},
{
"type": "unary_expression",
"named": true,
"fields": {
"argument": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
},
{
"type": "preproc_defined",
"named": true
},
{
"type": "preproc_has_include",
"named": true
}
]
},
"operator": {
"multiple": false,
"required": true,
"types": [
{
"type": "!",
"named": false
},
{
"type": "+",
"named": false
},
{
"type": "-",
"named": false
},
{
"type": "~",
"named": false
}
]
}
}
},
{
"type": "union_specifier",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": false,
"types": [
{
"type": "field_declaration_list",
"named": true
}
]
},
"name": {
"multiple": false,
"required": false,
"types": [
{
"type": "type_identifier",
"named": true
}
]
}
},
"children": {
"multiple": false,
"required": false,
"types": [
{
"type": "ms_declspec_modifier",
"named": true
}
]
}
},
{
"type": "update_expression",
"named": true,
"fields": {
"argument": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
},
"operator": {
"multiple": false,
"required": true,
"types": [
{
"type": "++",
"named": false
},
{
"type": "--",
"named": false
}
]
}
}
},
{
"type": "va_arg_expression",
"named": true,
"fields": {
"type": {
"multiple": false,
"required": true,
"types": [
{
"type": "type_descriptor",
"named": true
}
]
},
"va_list": {
"multiple": false,
"required": true,
"types": [
{
"type": "_expression",
"named": true
}
]
}
}
},
{
"type": "while_statement",
"named": true,
"fields": {
"body": {
"multiple": false,
"required": true,
"types": [
{
"type": "_statement",
"named": true
}
]
},
"condition": {
"multiple": false,
"required": true,
"types": [
{
"type": "parenthesized_expression",
"named": true
}
]
}
}
},
{
"type": "\n",
"named": false
},
{
"type": "!",
"named": false
},
{
"type": "!=",
"named": false
},
{
"type": "\"",
"named": false
},
{
"type": "#define",
"named": false
},
{
"type": "#elif",
"named": false
},
{
"type": "#else",
"named": false
},
{
"type": "#endif",
"named": false
},
{
"type": "#if",
"named": false
},
{
"type": "#ifdef",
"named": false
},
{
"type": "#ifndef",
"named": false
},
{
"type": "#import",
"named": false
},
{
"type": "#include",
"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": "@autoreleasepool",
"named": false
},
{
"type": "@available",
"named": false
},
{
"type": "@catch",
"named": false
},
{
"type": "@class",
"named": false
},
{
"type": "@compatibility_alias",
"named": false
},
{
"type": "@defs",
"named": false
},
{
"type": "@dynamic",
"named": false
},
{
"type": "@encode",
"named": false
},
{
"type": "@end",
"named": false
},
{
"type": "@finally",
"named": false
},
{
"type": "@implementation",
"named": false
},
{
"type": "@import",
"named": false
},
{
"type": "@interface",
"named": false
},
{
"type": "@property",
"named": false
},
{
"type": "@protocol",
"named": false
},
{
"type": "@selector",
"named": false
},
{
"type": "@synchronized",
"named": false
},
{
"type": "@synthesize",
"named": false
},
{
"type": "@throw",
"named": false
},
{
"type": "@try",
"named": false
},
{
"type": "API_AVAILABLE",
"named": false
},
{
"type": "API_DEPRECATED",
"named": false
},
{
"type": "API_UNAVAILABLE",
"named": false
},
{
"type": "BOOL",
"named": true
},
{
"type": "CF_FORMAT_FUNCTION",
"named": false
},
{
"type": "Class",
"named": true
},
{
"type": "DEPRECATED_ATTRIBUTE",
"named": false
},
{
"type": "DEPRECATED_MSG_ATTRIBUTE",
"named": false
},
{
"type": "DISPATCH_QUEUE_REFERENCE_TYPE",
"named": true
},
{
"type": "IBInspectable",
"named": false
},
{
"type": "IBOutlet",
"named": false
},
{
"type": "IMP",
"named": true
},
{
"type": "L\"",
"named": false
},
{
"type": "L'",
"named": false
},
{
"type": "NO",
"named": true
},
{
"type": "NS_AVAILABLE",
"named": false
},
{
"type": "NS_AVAILABLE_IOS",
"named": false
},
{
"type": "NS_CLASS_AVAILABLE_IOS",
"named": false
},
{
"type": "NS_CLASS_DEPRECATED_IOS",
"named": false
},
{
"type": "NS_DEPRECATED_IOS",
"named": false
},
{
"type": "NS_ENUM",
"named": false
},
{
"type": "NS_ENUM_AVAILABLE_IOS",
"named": false
},
{
"type": "NS_ENUM_DEPRECATED_IOS",
"named": false
},
{
"type": "NS_ERROR_ENUM",
"named": false
},
{
"type": "NS_EXTENSION_UNAVAILABLE_IOS",
"named": false
},
{
"type": "NS_FORMAT_FUNCTION",
"named": false
},
{
"type": "NS_NOESCAPE",
"named": false
},
{
"type": "NS_NONATOMIC_IOSONLY",
"named": true
},
{
"type": "NS_OPTIONS",
"named": false
},
{
"type": "NS_REFINED_FOR_SWIFT",
"named": false
},
{
"type": "NS_SWIFT_NAME",
"named": false
},
{
"type": "NS_SWIFT_UNAVAILABLE",
"named": false
},
{
"type": "NS_UNAVAILABLE",
"named": false
},
{
"type": "NS_VALID_UNTIL_END_OF_SCOPE",
"named": false
},
{
"type": "SEL",
"named": true
},
{
"type": "U\"",
"named": false
},
{
"type": "U'",
"named": false
},
{
"type": "UI_APPEARANCE_SELECTOR",
"named": false
},
{
"type": "UNAVAILABLE_ATTRIBUTE",
"named": false
},
{
"type": "YES",
"named": true
},
{
"type": "[",
"named": false
},
{
"type": "]",
"named": false
},
{
"type": "^",
"named": false
},
{
"type": "^=",
"named": false
},
{
"type": "_Atomic",
"named": false
},
{
"type": "_Complex",
"named": false
},
{
"type": "_Nonnull",
"named": false
},
{
"type": "_Null_unspecified",
"named": false
},
{
"type": "_Nullable",
"named": false
},
{
"type": "_Nullable_result",
"named": false
},
{
"type": "__GENERICS",
"named": false
},
{
"type": "__IOS_AVAILABLE",
"named": false
},
{
"type": "__attribute",
"named": false
},
{
"type": "__attribute__",
"named": false
},
{
"type": "__autoreleasing",
"named": false
},
{
"type": "__based",
"named": false
},
{
"type": "__block",
"named": false
},
{
"type": "__bridge",
"named": false
},
{
"type": "__bridge_retained",
"named": false
},
{
"type": "__bridge_transfer",
"named": false
},
{
"type": "__builtin_available",
"named": false
},
{
"type": "__cdecl",
"named": false
},
{
"type": "__clrcall",
"named": false
},
{
"type": "__complex",
"named": false
},
{
"type": "__contravariant",
"named": false
},
{
"type": "__covariant",
"named": false
},
{
"type": "__declspec",
"named": false
},
{
"type": "__deprecated_enum_msg",
"named": false
},
{
"type": "__deprecated_msg",
"named": false
},
{
"type": "__fastcall",
"named": false
},
{
"type": "__has_include",
"named": false
},
{
"type": "__kindof",
"named": false
},
{
"type": "__nonnull",
"named": false
},
{
"type": "__nullable",
"named": false
},
{
"type": "__objc_no",
"named": false
},
{
"type": "__objc_yes",
"named": false
},
{
"type": "__stdcall",
"named": false
},
{
"type": "__strong",
"named": false
},
{
"type": "__thiscall",
"named": false
},
{
"type": "__typeof",
"named": false
},
{
"type": "__typeof__",
"named": false
},
{
"type": "__unaligned",
"named": false
},
{
"type": "__unsafe_unretained",
"named": false
},
{
"type": "__unused",
"named": false
},
{
"type": "__vectorcall",
"named": false
},
{
"type": "__weak",
"named": false
},
{
"type": "_unaligned",
"named": false
},
{
"type": "assign",
"named": true
},
{
"type": "atomic",
"named": true
},
{
"type": "auto",
"named": false
},
{
"type": "auto",
"named": true
},
{
"type": "break",
"named": false
},
{
"type": "bycopy",
"named": false
},
{
"type": "byref",
"named": false
},
{
"type": "case",
"named": false
},
{
"type": "class",
"named": true
},
{
"type": "class_interface_attribute_sepcifier",
"named": true
},
{
"type": "comment",
"named": true
},
{
"type": "const",
"named": false
},
{
"type": "continue",
"named": false
},
{
"type": "copy",
"named": true
},
{
"type": "default",
"named": false
},
{
"type": "defined",
"named": false
},
{
"type": "direct",
"named": true
},
{
"type": "do",
"named": false
},
{
"type": "else",
"named": false
},
{
"type": "enum",
"named": false
},
{
"type": "escape_sequence",
"named": true
},
{
"type": "extern",
"named": false
},
{
"type": "false",
"named": true
},
{
"type": "field_identifier",
"named": true
},
{
"type": "for",
"named": false
},
{
"type": "getter",
"named": false
},
{
"type": "goto",
"named": false
},
{
"type": "id",
"named": true
},
{
"type": "identifier",
"named": true
},
{
"type": "if",
"named": false
},
{
"type": "in",
"named": false
},
{
"type": "inline",
"named": false
},
{
"type": "inout",
"named": false
},
{
"type": "instancetype",
"named": true
},
{
"type": "ios",
"named": false
},
{
"type": "long",
"named": false
},
{
"type": "macos",
"named": false
},
{
"type": "macosx",
"named": false
},
{
"type": "method_attribute_specifier",
"named": true
},
{
"type": "module_string",
"named": true
},
{
"type": "ms_restrict_modifier",
"named": true
},
{
"type": "ms_signed_ptr_modifier",
"named": true
},
{
"type": "ms_unsigned_ptr_modifier",
"named": true
},
{
"type": "nil",
"named": true
},
{
"type": "nonatomic",
"named": true
},
{
"type": "nonnull",
"named": true
},
{
"type": "null",
"named": true
},
{
"type": "null_resettable",
"named": true
},
{
"type": "null_unspecified",
"named": true
},
{
"type": "nullable",
"named": true
},
{
"type": "number_literal",
"named": false
},
{
"type": "number_literal",
"named": true
},
{
"type": "oneway",
"named": false
},
{
"type": "optional",
"named": true
},
{
"type": "out",
"named": false
},
{
"type": "package",
"named": true
},
{
"type": "pragma",
"named": true
},
{
"type": "preproc_arg",
"named": true
},
{
"type": "preproc_directive",
"named": true
},
{
"type": "primitive_type",
"named": true
},
{
"type": "private",
"named": true
},
{
"type": "protected",
"named": true
},
{
"type": "public",
"named": true
},
{
"type": "readonly",
"named": true
},
{
"type": "readwrite",
"named": true
},
{
"type": "register",
"named": false
},
{
"type": "required",
"named": true
},
{
"type": "restrict",
"named": false
},
{
"type": "retain",
"named": true
},
{
"type": "return",
"named": false
},
{
"type": "self",
"named": true
},
{
"type": "setter",
"named": false
},
{
"type": "short",
"named": false
},
{
"type": "signed",
"named": false
},
{
"type": "sizeof",
"named": false
},
{
"type": "statement_identifier",
"named": true
},
{
"type": "static",
"named": false
},
{
"type": "strong",
"named": true
},
{
"type": "struct",
"named": false
},
{
"type": "super",
"named": true
},
{
"type": "switch",
"named": false
},
{
"type": "system_lib_string",
"named": true
},
{
"type": "true",
"named": true
},
{
"type": "tvos",
"named": false
},
{
"type": "type_identifier",
"named": true
},
{
"type": "typedef",
"named": false
},
{
"type": "typeof",
"named": false
},
{
"type": "u\"",
"named": false
},
{
"type": "u'",
"named": false
},
{
"type": "u8\"",
"named": false
},
{
"type": "u8'",
"named": false
},
{
"type": "union",
"named": false
},
{
"type": "unsafe_unretained",
"named": true
},
{
"type": "unsigned",
"named": false
},
{
"type": "va_arg",
"named": false
},
{
"type": "volatile",
"named": false
},
{
"type": "watchos",
"named": false
},
{
"type": "weak",
"named": true
},
{
"type": "while",
"named": false
},
{
"type": "{",
"named": false
},
{
"type": "|",
"named": false
},
{
"type": "|=",
"named": false
},
{
"type": "||",
"named": false
},
{
"type": "}",
"named": false
},
{
"type": "~",
"named": false
}
]