schemas/java.json
|
[
{ "type": "_literal", "named": true, "subtypes": [ { "type": "binary_integer_literal", "named": true }, { "type": "character_literal", "named": true }, { "type": "decimal_floating_point_literal", "named": true }, { "type": "decimal_integer_literal", "named": true }, { "type": "false", "named": true }, { "type": "hex_floating_point_literal", "named": true }, { "type": "hex_integer_literal", "named": true }, { "type": "null_literal", "named": true }, { "type": "octal_integer_literal", "named": true }, { "type": "string_literal", "named": true }, { "type": "true", "named": true } ] }, { "type": "_simple_type", "named": true, "subtypes": [ { "type": "boolean_type", "named": true }, { "type": "floating_point_type", "named": true }, { "type": "generic_type", "named": true }, { "type": "integral_type", "named": true }, { "type": "scoped_type_identifier", "named": true }, { "type": "type_identifier", "named": true }, { "type": "void_type", "named": true } ] }, { "type": "_type", "named": true, "subtypes": [ { "type": "_unannotated_type", "named": true }, { "type": "annotated_type", "named": true } ] }, { "type": "_unannotated_type", "named": true, "subtypes": [ { "type": "_simple_type", "named": true }, { "type": "array_type", "named": true } ] }, { "type": "declaration", "named": true, "subtypes": [ { "type": "annotation_type_declaration", "named": true }, { "type": "class_declaration", "named": true }, { "type": "enum_declaration", "named": true }, { "type": "import_declaration", "named": true }, { "type": "interface_declaration", "named": true }, { "type": "module_declaration", "named": true }, { "type": "package_declaration", "named": true }, { "type": "record_declaration", "named": true } ] }, { "type": "expression", "named": true, "subtypes": [ { "type": "assignment_expression", "named": true }, { "type": "binary_expression", "named": true }, { "type": "cast_expression", "named": true }, { "type": "instanceof_expression", "named": true }, { "type": "lambda_expression", "named": true }, { "type": "primary_expression", "named": true }, { "type": "switch_expression", "named": true }, { "type": "ternary_expression", "named": true }, { "type": "unary_expression", "named": true }, { "type": "update_expression", "named": true } ] }, { "type": "module_directive", "named": true, "subtypes": [ { "type": "exports_module_directive", "named": true }, { "type": "opens_module_directive", "named": true }, { "type": "provides_module_directive", "named": true }, { "type": "requires_module_directive", "named": true }, { "type": "uses_module_directive", "named": true } ] }, { "type": "primary_expression", "named": true, "subtypes": [ { "type": "_literal", "named": true }, { "type": "array_access", "named": true }, { "type": "array_creation_expression", "named": true }, { "type": "class_literal", "named": true }, { "type": "field_access", "named": true }, { "type": "identifier", "named": true }, { "type": "method_invocation", "named": true }, { "type": "method_reference", "named": true }, { "type": "object_creation_expression", "named": true }, { "type": "parenthesized_expression", "named": true }, { "type": "template_expression", "named": true }, { "type": "this", "named": true } ] }, { "type": "statement", "named": true, "subtypes": [ { "type": ";", "named": false }, { "type": "assert_statement", "named": true }, { "type": "block", "named": true }, { "type": "break_statement", "named": true }, { "type": "continue_statement", "named": true }, { "type": "declaration", "named": true }, { "type": "do_statement", "named": true }, { "type": "enhanced_for_statement", "named": true }, { "type": "expression_statement", "named": true }, { "type": "for_statement", "named": true }, { "type": "if_statement", "named": true }, { "type": "labeled_statement", "named": true }, { "type": "local_variable_declaration", "named": true }, { "type": "return_statement", "named": true }, { "type": "switch_expression", "named": true }, { "type": "synchronized_statement", "named": true }, { "type": "throw_statement", "named": true }, { "type": "try_statement", "named": true }, { "type": "try_with_resources_statement", "named": true }, { "type": "while_statement", "named": true }, { "type": "yield_statement", "named": true } ] }, { "type": "annotated_type", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_unannotated_type", "named": true }, { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true } ] } }, { "type": "annotation", "named": true, "fields": { "arguments": { "multiple": false, "required": true, "types": [ { "type": "annotation_argument_list", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } } }, { "type": "annotation_argument_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "element_value_array_initializer", "named": true }, { "type": "element_value_pair", "named": true }, { "type": "expression", "named": true }, { "type": "marker_annotation", "named": true } ] } }, { "type": "annotation_type_body", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation_type_declaration", "named": true }, { "type": "annotation_type_element_declaration", "named": true }, { "type": "class_declaration", "named": true }, { "type": "constant_declaration", "named": true }, { "type": "enum_declaration", "named": true }, { "type": "interface_declaration", "named": true } ] } }, { "type": "annotation_type_declaration", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "annotation_type_body", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "annotation_type_element_declaration", "named": true, "fields": { "dimensions": { "multiple": false, "required": false, "types": [ { "type": "dimensions", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "element_value_array_initializer", "named": true }, { "type": "expression", "named": true }, { "type": "marker_annotation", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "argument_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true } ] } }, { "type": "array_access", "named": true, "fields": { "array": { "multiple": false, "required": true, "types": [ { "type": "primary_expression", "named": true } ] }, "index": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "array_creation_expression", "named": true, "fields": { "dimensions": { "multiple": true, "required": true, "types": [ { "type": "dimensions", "named": true }, { "type": "dimensions_expr", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_simple_type", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "array_initializer", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true } ] } }, { "type": "array_initializer", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "array_initializer", "named": true }, { "type": "expression", "named": true } ] } }, { "type": "array_type", "named": true, "fields": { "dimensions": { "multiple": false, "required": true, "types": [ { "type": "dimensions", "named": true } ] }, "element": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] } } }, { "type": "assert_statement", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "assignment_expression", "named": true, "fields": { "left": { "multiple": false, "required": true, "types": [ { "type": "array_access", "named": true }, { "type": "field_access", "named": true }, { "type": "identifier", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "%=", "named": false }, { "type": "&=", "named": false }, { "type": "*=", "named": false }, { "type": "+=", "named": false }, { "type": "-=", "named": false }, { "type": "/=", "named": false }, { "type": "<<=", "named": false }, { "type": "=", "named": false }, { "type": ">>=", "named": false }, { "type": ">>>=", "named": false }, { "type": "^=", "named": false }, { "type": "|=", "named": false } ] }, "right": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "asterisk", "named": true, "fields": {} }, { "type": "binary_expression", "named": true, "fields": { "left": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "!=", "named": false }, { "type": "%", "named": false }, { "type": "&", "named": false }, { "type": "&&", "named": false }, { "type": "*", "named": false }, { "type": "+", "named": false }, { "type": "-", "named": false }, { "type": "/", "named": false }, { "type": "<", "named": false }, { "type": "<<", "named": false }, { "type": "<=", "named": false }, { "type": "==", "named": false }, { "type": ">", "named": false }, { "type": ">=", "named": false }, { "type": ">>", "named": false }, { "type": ">>>", "named": false }, { "type": "^", "named": false }, { "type": "|", "named": false }, { "type": "||", "named": false } ] }, "right": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "block", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "statement", "named": true } ] } }, { "type": "break_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "cast_expression", "named": true, "fields": { "type": { "multiple": true, "required": true, "types": [ { "type": "_type", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "catch_clause", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "block", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "catch_formal_parameter", "named": true } ] } }, { "type": "catch_formal_parameter", "named": true, "fields": { "dimensions": { "multiple": false, "required": false, "types": [ { "type": "dimensions", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "underscore_pattern", "named": true } ] } }, "children": { "multiple": true, "required": true, "types": [ { "type": "catch_type", "named": true }, { "type": "modifiers", "named": true } ] } }, { "type": "catch_type", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] } }, { "type": "class_body", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation_type_declaration", "named": true }, { "type": "block", "named": true }, { "type": "class_declaration", "named": true }, { "type": "compact_constructor_declaration", "named": true }, { "type": "constructor_declaration", "named": true }, { "type": "enum_declaration", "named": true }, { "type": "field_declaration", "named": true }, { "type": "interface_declaration", "named": true }, { "type": "method_declaration", "named": true }, { "type": "record_declaration", "named": true }, { "type": "static_initializer", "named": true } ] } }, { "type": "class_declaration", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "class_body", "named": true } ] }, "interfaces": { "multiple": false, "required": false, "types": [ { "type": "super_interfaces", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "permits": { "multiple": false, "required": false, "types": [ { "type": "permits", "named": true } ] }, "superclass": { "multiple": false, "required": false, "types": [ { "type": "superclass", "named": true } ] }, "type_parameters": { "multiple": false, "required": false, "types": [ { "type": "type_parameters", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "class_literal", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] } }, { "type": "compact_constructor_declaration", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "block", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "constant_declaration", "named": true, "fields": { "declarator": { "multiple": true, "required": true, "types": [ { "type": "variable_declarator", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "constructor_body", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "explicit_constructor_invocation", "named": true }, { "type": "statement", "named": true } ] } }, { "type": "constructor_declaration", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "constructor_body", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "parameters": { "multiple": false, "required": true, "types": [ { "type": "formal_parameters", "named": true } ] }, "type_parameters": { "multiple": false, "required": false, "types": [ { "type": "type_parameters", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "modifiers", "named": true }, { "type": "throws", "named": true } ] } }, { "type": "continue_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "dimensions", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true } ] } }, { "type": "dimensions_expr", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "annotation", "named": true }, { "type": "expression", "named": true }, { "type": "marker_annotation", "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": "element_value_array_initializer", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "element_value_array_initializer", "named": true }, { "type": "expression", "named": true }, { "type": "marker_annotation", "named": true } ] } }, { "type": "element_value_pair", "named": true, "fields": { "key": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "annotation", "named": true }, { "type": "element_value_array_initializer", "named": true }, { "type": "expression", "named": true }, { "type": "marker_annotation", "named": true } ] } } }, { "type": "enhanced_for_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] }, "dimensions": { "multiple": false, "required": false, "types": [ { "type": "dimensions", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "underscore_pattern", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "enum_body", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "enum_body_declarations", "named": true }, { "type": "enum_constant", "named": true } ] } }, { "type": "enum_body_declarations", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation_type_declaration", "named": true }, { "type": "block", "named": true }, { "type": "class_declaration", "named": true }, { "type": "compact_constructor_declaration", "named": true }, { "type": "constructor_declaration", "named": true }, { "type": "enum_declaration", "named": true }, { "type": "field_declaration", "named": true }, { "type": "interface_declaration", "named": true }, { "type": "method_declaration", "named": true }, { "type": "record_declaration", "named": true }, { "type": "static_initializer", "named": true } ] } }, { "type": "enum_constant", "named": true, "fields": { "arguments": { "multiple": false, "required": false, "types": [ { "type": "argument_list", "named": true } ] }, "body": { "multiple": false, "required": false, "types": [ { "type": "class_body", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "enum_declaration", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "enum_body", "named": true } ] }, "interfaces": { "multiple": false, "required": false, "types": [ { "type": "super_interfaces", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "explicit_constructor_invocation", "named": true, "fields": { "arguments": { "multiple": false, "required": true, "types": [ { "type": "argument_list", "named": true } ] }, "constructor": { "multiple": false, "required": true, "types": [ { "type": "super", "named": true }, { "type": "this", "named": true } ] }, "object": { "multiple": false, "required": false, "types": [ { "type": "primary_expression", "named": true } ] }, "type_arguments": { "multiple": false, "required": false, "types": [ { "type": "type_arguments", "named": true } ] } } }, { "type": "exports_module_directive", "named": true, "fields": { "modules": { "multiple": true, "required": false, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] }, "package": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } } }, { "type": "expression_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "extends_interfaces", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "type_list", "named": true } ] } }, { "type": "field_access", "named": true, "fields": { "field": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "this", "named": true } ] }, "object": { "multiple": false, "required": true, "types": [ { "type": "primary_expression", "named": true }, { "type": "super", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "super", "named": true } ] } }, { "type": "field_declaration", "named": true, "fields": { "declarator": { "multiple": true, "required": true, "types": [ { "type": "variable_declarator", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "finally_clause", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "block", "named": true } ] } }, { "type": "floating_point_type", "named": true, "fields": {} }, { "type": "for_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] }, "condition": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] }, "init": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true }, { "type": "local_variable_declaration", "named": true } ] }, "update": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "formal_parameter", "named": true, "fields": { "dimensions": { "multiple": false, "required": false, "types": [ { "type": "dimensions", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "underscore_pattern", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "formal_parameters", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "formal_parameter", "named": true }, { "type": "receiver_parameter", "named": true }, { "type": "spread_parameter", "named": true } ] } }, { "type": "generic_type", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "scoped_type_identifier", "named": true }, { "type": "type_arguments", "named": true }, { "type": "type_identifier", "named": true } ] } }, { "type": "guard", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "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": "import_declaration", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "asterisk", "named": true }, { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } }, { "type": "inferred_parameters", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "instanceof_expression", "named": true, "fields": { "left": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "name": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] }, "pattern": { "multiple": false, "required": false, "types": [ { "type": "record_pattern", "named": true } ] }, "right": { "multiple": false, "required": false, "types": [ { "type": "_type", "named": true } ] } } }, { "type": "integral_type", "named": true, "fields": {} }, { "type": "interface_body", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation_type_declaration", "named": true }, { "type": "class_declaration", "named": true }, { "type": "constant_declaration", "named": true }, { "type": "enum_declaration", "named": true }, { "type": "interface_declaration", "named": true }, { "type": "method_declaration", "named": true }, { "type": "record_declaration", "named": true } ] } }, { "type": "interface_declaration", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "interface_body", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "permits": { "multiple": false, "required": false, "types": [ { "type": "permits", "named": true } ] }, "type_parameters": { "multiple": false, "required": false, "types": [ { "type": "type_parameters", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "extends_interfaces", "named": true }, { "type": "modifiers", "named": true } ] } }, { "type": "labeled_statement", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "statement", "named": true } ] } }, { "type": "lambda_expression", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "block", "named": true }, { "type": "expression", "named": true } ] }, "parameters": { "multiple": false, "required": true, "types": [ { "type": "formal_parameters", "named": true }, { "type": "identifier", "named": true }, { "type": "inferred_parameters", "named": true } ] } } }, { "type": "local_variable_declaration", "named": true, "fields": { "declarator": { "multiple": true, "required": true, "types": [ { "type": "variable_declarator", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "marker_annotation", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } } }, { "type": "method_declaration", "named": true, "fields": { "body": { "multiple": false, "required": false, "types": [ { "type": "block", "named": true } ] }, "dimensions": { "multiple": false, "required": false, "types": [ { "type": "dimensions", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "parameters": { "multiple": false, "required": true, "types": [ { "type": "formal_parameters", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_unannotated_type", "named": true } ] }, "type_parameters": { "multiple": false, "required": false, "types": [ { "type": "type_parameters", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true }, { "type": "modifiers", "named": true }, { "type": "throws", "named": true } ] } }, { "type": "method_invocation", "named": true, "fields": { "arguments": { "multiple": false, "required": true, "types": [ { "type": "argument_list", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "object": { "multiple": false, "required": false, "types": [ { "type": "primary_expression", "named": true }, { "type": "super", "named": true } ] }, "type_arguments": { "multiple": false, "required": false, "types": [ { "type": "type_arguments", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "super", "named": true } ] } }, { "type": "method_reference", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_type", "named": true }, { "type": "primary_expression", "named": true }, { "type": "super", "named": true }, { "type": "type_arguments", "named": true } ] } }, { "type": "modifiers", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true } ] } }, { "type": "module_body", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "module_directive", "named": true } ] } }, { "type": "module_declaration", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "module_body", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true } ] } }, { "type": "multiline_string_fragment", "named": true, "fields": {} }, { "type": "object_creation_expression", "named": true, "fields": { "arguments": { "multiple": false, "required": true, "types": [ { "type": "argument_list", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "_simple_type", "named": true } ] }, "type_arguments": { "multiple": false, "required": false, "types": [ { "type": "type_arguments", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "annotation", "named": true }, { "type": "class_body", "named": true }, { "type": "marker_annotation", "named": true }, { "type": "primary_expression", "named": true } ] } }, { "type": "opens_module_directive", "named": true, "fields": { "modules": { "multiple": true, "required": false, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] }, "package": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } } }, { "type": "package_declaration", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "annotation", "named": true }, { "type": "identifier", "named": true }, { "type": "marker_annotation", "named": true }, { "type": "scoped_identifier", "named": true } ] } }, { "type": "parenthesized_expression", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "pattern", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "record_pattern", "named": true }, { "type": "type_pattern", "named": true } ] } }, { "type": "permits", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "type_list", "named": true } ] } }, { "type": "program", "named": true, "root": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "method_declaration", "named": true }, { "type": "statement", "named": true } ] } }, { "type": "provides_module_directive", "named": true, "fields": { "provided": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] }, "provider": { "multiple": true, "required": false, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } }, { "type": "receiver_parameter", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_unannotated_type", "named": true }, { "type": "annotation", "named": true }, { "type": "identifier", "named": true }, { "type": "marker_annotation", "named": true }, { "type": "this", "named": true } ] } }, { "type": "record_declaration", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "class_body", "named": true } ] }, "interfaces": { "multiple": false, "required": false, "types": [ { "type": "super_interfaces", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "parameters": { "multiple": false, "required": true, "types": [ { "type": "formal_parameters", "named": true } ] }, "type_parameters": { "multiple": false, "required": false, "types": [ { "type": "type_parameters", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "modifiers", "named": true } ] } }, { "type": "record_pattern", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "generic_type", "named": true }, { "type": "identifier", "named": true }, { "type": "record_pattern_body", "named": true } ] } }, { "type": "record_pattern_body", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "record_pattern", "named": true }, { "type": "record_pattern_component", "named": true } ] } }, { "type": "record_pattern_component", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_unannotated_type", "named": true }, { "type": "identifier", "named": true }, { "type": "underscore_pattern", "named": true } ] } }, { "type": "requires_modifier", "named": true, "fields": {} }, { "type": "requires_module_directive", "named": true, "fields": { "modifiers": { "multiple": true, "required": false, "types": [ { "type": "requires_modifier", "named": true } ] }, "module": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } } }, { "type": "resource", "named": true, "fields": { "dimensions": { "multiple": false, "required": false, "types": [ { "type": "dimensions", "named": true } ] }, "name": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true }, { "type": "underscore_pattern", "named": true } ] }, "type": { "multiple": false, "required": false, "types": [ { "type": "_unannotated_type", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "field_access", "named": true }, { "type": "identifier", "named": true }, { "type": "modifiers", "named": true } ] } }, { "type": "resource_specification", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "resource", "named": true } ] } }, { "type": "return_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } }, { "type": "scoped_identifier", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "scope": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } } }, { "type": "scoped_type_identifier", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "annotation", "named": true }, { "type": "generic_type", "named": true }, { "type": "marker_annotation", "named": true }, { "type": "scoped_type_identifier", "named": true }, { "type": "type_identifier", "named": true } ] } }, { "type": "spread_parameter", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_unannotated_type", "named": true }, { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true }, { "type": "modifiers", "named": true }, { "type": "variable_declarator", "named": true } ] } }, { "type": "static_initializer", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "block", "named": true } ] } }, { "type": "string_interpolation", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "string_literal", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "escape_sequence", "named": true }, { "type": "multiline_string_fragment", "named": true }, { "type": "string_fragment", "named": true }, { "type": "string_interpolation", "named": true } ] } }, { "type": "super_interfaces", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "type_list", "named": true } ] } }, { "type": "superclass", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "_type", "named": true } ] } }, { "type": "switch_block", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "switch_block_statement_group", "named": true }, { "type": "switch_rule", "named": true } ] } }, { "type": "switch_block_statement_group", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "statement", "named": true }, { "type": "switch_label", "named": true } ] } }, { "type": "switch_expression", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "switch_block", "named": true } ] }, "condition": { "multiple": false, "required": true, "types": [ { "type": "parenthesized_expression", "named": true } ] } } }, { "type": "switch_label", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true }, { "type": "guard", "named": true }, { "type": "pattern", "named": true } ] } }, { "type": "switch_rule", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "block", "named": true }, { "type": "expression_statement", "named": true }, { "type": "switch_label", "named": true }, { "type": "throw_statement", "named": true } ] } }, { "type": "synchronized_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "block", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "parenthesized_expression", "named": true } ] } }, { "type": "template_expression", "named": true, "fields": { "template_argument": { "multiple": false, "required": true, "types": [ { "type": "string_literal", "named": true } ] }, "template_processor": { "multiple": false, "required": true, "types": [ { "type": "primary_expression", "named": true } ] } } }, { "type": "ternary_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": true, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "throw_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "throws", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_type", "named": true } ] } }, { "type": "try_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "block", "named": true } ] } }, "children": { "multiple": true, "required": true, "types": [ { "type": "catch_clause", "named": true }, { "type": "finally_clause", "named": true } ] } }, { "type": "try_with_resources_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "block", "named": true } ] }, "resources": { "multiple": false, "required": true, "types": [ { "type": "resource_specification", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "catch_clause", "named": true }, { "type": "finally_clause", "named": true } ] } }, { "type": "type_arguments", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "_type", "named": true }, { "type": "wildcard", "named": true } ] } }, { "type": "type_bound", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_type", "named": true } ] } }, { "type": "type_list", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_type", "named": true } ] } }, { "type": "type_parameter", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true }, { "type": "type_bound", "named": true }, { "type": "type_identifier", "named": true } ] } }, { "type": "type_parameters", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "type_parameter", "named": true } ] } }, { "type": "type_pattern", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_unannotated_type", "named": true }, { "type": "identifier", "named": true } ] } }, { "type": "unary_expression", "named": true, "fields": { "operand": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "!", "named": false }, { "type": "+", "named": false }, { "type": "-", "named": false }, { "type": "~", "named": false } ] } } }, { "type": "update_expression", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "uses_module_directive", "named": true, "fields": { "type": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "scoped_identifier", "named": true } ] } } }, { "type": "variable_declarator", "named": true, "fields": { "dimensions": { "multiple": false, "required": false, "types": [ { "type": "dimensions", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "underscore_pattern", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "array_initializer", "named": true }, { "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": "wildcard", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "_type", "named": true }, { "type": "annotation", "named": true }, { "type": "marker_annotation", "named": true }, { "type": "super", "named": true } ] } }, { "type": "yield_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "!", "named": false }, { "type": "!=", "named": false }, { "type": "\"", "named": false }, { "type": "\"\"\"", "named": false }, { "type": "%", "named": false }, { "type": "%=", "named": false }, { "type": "&", "named": false }, { "type": "&&", "named": false }, { "type": "&=", "named": false }, { "type": "(", "named": false }, { "type": ")", "named": false }, { "type": "*", "named": false }, { "type": "*=", "named": false }, { "type": "+", "named": false }, { "type": "++", "named": false }, { "type": "+=", "named": false }, { "type": ",", "named": false }, { "type": "-", "named": false }, { "type": "--", "named": false }, { "type": "-=", "named": false }, { "type": "->", "named": false }, { "type": ".", "named": false }, { "type": "...", "named": false }, { "type": "/", "named": false }, { "type": "/=", "named": false }, { "type": ":", "named": false }, { "type": "::", "named": false }, { "type": ";", "named": false }, { "type": "<", "named": false }, { "type": "<<", "named": false }, { "type": "<<=", "named": false }, { "type": "<=", "named": false }, { "type": "=", "named": false }, { "type": "==", "named": false }, { "type": ">", "named": false }, { "type": ">=", "named": false }, { "type": ">>", "named": false }, { "type": ">>=", "named": false }, { "type": ">>>", "named": false }, { "type": ">>>=", "named": false }, { "type": "?", "named": false }, { "type": "@", "named": false }, { "type": "@interface", "named": false }, { "type": "[", "named": false }, { "type": "\\{", "named": false }, { "type": "]", "named": false }, { "type": "^", "named": false }, { "type": "^=", "named": false }, { "type": "abstract", "named": false }, { "type": "assert", "named": false }, { "type": "binary_integer_literal", "named": true }, { "type": "block_comment", "named": true }, { "type": "boolean_type", "named": true }, { "type": "break", "named": false }, { "type": "byte", "named": false }, { "type": "case", "named": false }, { "type": "catch", "named": false }, { "type": "char", "named": false }, { "type": "character_literal", "named": true }, { "type": "class", "named": false }, { "type": "continue", "named": false }, { "type": "decimal_floating_point_literal", "named": true }, { "type": "decimal_integer_literal", "named": true }, { "type": "default", "named": false }, { "type": "do", "named": false }, { "type": "double", "named": false }, { "type": "else", "named": false }, { "type": "enum", "named": false }, { "type": "escape_sequence", "named": true }, { "type": "exports", "named": false }, { "type": "extends", "named": false }, { "type": "false", "named": true }, { "type": "final", "named": false }, { "type": "finally", "named": false }, { "type": "float", "named": false }, { "type": "for", "named": false }, { "type": "hex_floating_point_literal", "named": true }, { "type": "hex_integer_literal", "named": true }, { "type": "identifier", "named": true }, { "type": "if", "named": false }, { "type": "implements", "named": false }, { "type": "import", "named": false }, { "type": "instanceof", "named": false }, { "type": "int", "named": false }, { "type": "interface", "named": false }, { "type": "line_comment", "named": true }, { "type": "long", "named": false }, { "type": "module", "named": false }, { "type": "native", "named": false }, { "type": "new", "named": false }, { "type": "non-sealed", "named": false }, { "type": "null_literal", "named": true }, { "type": "octal_integer_literal", "named": true }, { "type": "open", "named": false }, { "type": "opens", "named": false }, { "type": "package", "named": false }, { "type": "permits", "named": false }, { "type": "private", "named": false }, { "type": "protected", "named": false }, { "type": "provides", "named": false }, { "type": "public", "named": false }, { "type": "record", "named": false }, { "type": "requires", "named": false }, { "type": "return", "named": false }, { "type": "sealed", "named": false }, { "type": "short", "named": false }, { "type": "static", "named": false }, { "type": "strictfp", "named": false }, { "type": "string_fragment", "named": true }, { "type": "super", "named": true }, { "type": "switch", "named": false }, { "type": "synchronized", "named": false }, { "type": "this", "named": true }, { "type": "throw", "named": false }, { "type": "throws", "named": false }, { "type": "to", "named": false }, { "type": "transient", "named": false }, { "type": "transitive", "named": false }, { "type": "true", "named": true }, { "type": "try", "named": false }, { "type": "type_identifier", "named": true }, { "type": "underscore_pattern", "named": true }, { "type": "uses", "named": false }, { "type": "void_type", "named": true }, { "type": "volatile", "named": false }, { "type": "when", "named": false }, { "type": "while", "named": false }, { "type": "with", "named": false }, { "type": "yield", "named": false }, { "type": "{", "named": false }, { "type": "|", "named": false }, { "type": "|=", "named": false }, { "type": "||", "named": false }, { "type": "}", "named": false }, { "type": "~", "named": false } ] |