Constant treelight::scala::NODE_TYPES
source · [−]pub const NODE_TYPES: &'static str = "[\n {\n \"type\": \"_definition\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"class_definition\",\n \"named\": true\n },\n {\n \"type\": \"function_declaration\",\n \"named\": true\n },\n {\n \"type\": \"function_definition\",\n \"named\": true\n },\n {\n \"type\": \"import_declaration\",\n \"named\": true\n },\n {\n \"type\": \"object_definition\",\n \"named\": true\n },\n {\n \"type\": \"package_clause\",\n \"named\": true\n },\n {\n \"type\": \"package_object\",\n \"named\": true\n },\n {\n \"type\": \"trait_definition\",\n \"named\": true\n },\n {\n \"type\": \"type_definition\",\n \"named\": true\n },\n {\n \"type\": \"val_declaration\",\n \"named\": true\n },\n {\n \"type\": \"val_definition\",\n \"named\": true\n },\n {\n \"type\": \"var_declaration\",\n \"named\": true\n },\n {\n \"type\": \"var_definition\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"_pattern\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"alternative_pattern\",\n \"named\": true\n },\n {\n \"type\": \"boolean_literal\",\n \"named\": true\n },\n {\n \"type\": \"capture_pattern\",\n \"named\": true\n },\n {\n \"type\": \"case_class_pattern\",\n \"named\": true\n },\n {\n \"type\": \"character_literal\",\n \"named\": true\n },\n {\n \"type\": \"floating_point_literal\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"infix_pattern\",\n \"named\": true\n },\n {\n \"type\": \"integer_literal\",\n \"named\": true\n },\n {\n \"type\": \"null_literal\",\n \"named\": true\n },\n {\n \"type\": \"stable_identifier\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"symbol_literal\",\n \"named\": true\n },\n {\n \"type\": \"tuple_pattern\",\n \"named\": true\n },\n {\n \"type\": \"typed_pattern\",\n \"named\": true\n },\n {\n \"type\": \"wildcard\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"expression\",\n \"named\": true,\n \"subtypes\": [\n {\n \"type\": \"ascription_expression\",\n \"named\": true\n },\n {\n \"type\": \"assignment_expression\",\n \"named\": true\n },\n {\n \"type\": \"block\",\n \"named\": true\n },\n {\n \"type\": \"boolean_literal\",\n \"named\": true\n },\n {\n \"type\": \"call_expression\",\n \"named\": true\n },\n {\n \"type\": \"case_block\",\n \"named\": true\n },\n {\n \"type\": \"character_literal\",\n \"named\": true\n },\n {\n \"type\": \"do_while_expression\",\n \"named\": true\n },\n {\n \"type\": \"field_expression\",\n \"named\": true\n },\n {\n \"type\": \"floating_point_literal\",\n \"named\": true\n },\n {\n \"type\": \"for_expression\",\n \"named\": true\n },\n {\n \"type\": \"generic_function\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"if_expression\",\n \"named\": true\n },\n {\n \"type\": \"infix_expression\",\n \"named\": true\n },\n {\n \"type\": \"instance_expression\",\n \"named\": true\n },\n {\n \"type\": \"integer_literal\",\n \"named\": true\n },\n {\n \"type\": \"interpolated_string_expression\",\n \"named\": true\n },\n {\n \"type\": \"lambda_expression\",\n \"named\": true\n },\n {\n \"type\": \"match_expression\",\n \"named\": true\n },\n {\n \"type\": \"null_literal\",\n \"named\": true\n },\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n },\n {\n \"type\": \"postfix_expression\",\n \"named\": true\n },\n {\n \"type\": \"prefix_expression\",\n \"named\": true\n },\n {\n \"type\": \"return_expression\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"symbol_literal\",\n \"named\": true\n },\n {\n \"type\": \"throw_expression\",\n \"named\": true\n },\n {\n \"type\": \"try_expression\",\n \"named\": true\n },\n {\n \"type\": \"tuple_expression\",\n \"named\": true\n },\n {\n \"type\": \"unit\",\n \"named\": true\n },\n {\n \"type\": \"while_expression\",\n \"named\": true\n }\n ]\n },\n {\n \"type\": \"access_modifier\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"access_qualifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"access_qualifier\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"alternative_pattern\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"annotation\",\n \"named\": true,\n \"fields\": {\n \"arguments\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"arguments\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"arguments\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"ascription_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"lazy_parameter_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"repeated_parameter_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"assignment_expression\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"binding\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"lazy_parameter_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"repeated_parameter_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"bindings\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"binding\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"block\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"_definition\",\n \"named\": true\n },\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"boolean_literal\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"call_expression\",\n \"named\": true,\n \"fields\": {\n \"arguments\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"arguments\",\n \"named\": true\n },\n {\n \"type\": \"block\",\n \"named\": true\n },\n {\n \"type\": \"case_block\",\n \"named\": true\n }\n ]\n },\n \"function\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"capture_pattern\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"pattern\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"case_block\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"case_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"case_class_pattern\",\n \"named\": true,\n \"fields\": {\n \"pattern\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"case_clause\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \";\",\n \"named\": false\n },\n {\n \"type\": \"_definition\",\n \"named\": true\n },\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"pattern\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"guard\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"catch_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"case_block\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"class_definition\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"template_body\",\n \"named\": true\n }\n ]\n },\n \"class_parameters\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"class_parameters\",\n \"named\": true\n }\n ]\n },\n \"extend\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"extends_clause\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"access_modifier\",\n \"named\": true\n },\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"class_parameter\",\n \"named\": true,\n \"fields\": {\n \"default_value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"class_parameters\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"class_parameter\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"compilation_unit\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"_definition\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"compound_type\",\n \"named\": true,\n \"fields\": {\n \"base\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"extra\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"context_bound\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"contravariant_type_parameter\",\n \"named\": true,\n \"fields\": {\n \"bound\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"context_bound\",\n \"named\": true\n },\n {\n \"type\": \"lower_bound\",\n \"named\": true\n },\n {\n \"type\": \"upper_bound\",\n \"named\": true\n },\n {\n \"type\": \"view_bound\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"wildcard\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"covariant_type_parameter\",\n \"named\": true,\n \"fields\": {\n \"bound\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"context_bound\",\n \"named\": true\n },\n {\n \"type\": \"lower_bound\",\n \"named\": true\n },\n {\n \"type\": \"upper_bound\",\n \"named\": true\n },\n {\n \"type\": \"view_bound\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"wildcard\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"do_while_expression\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"enumerator\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n },\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"guard\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"enumerators\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"enumerator\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"extends_clause\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"arguments\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"field_expression\",\n \"named\": true,\n \"fields\": {\n \"field\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"finally_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"for_expression\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"enumerators\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"(\",\n \"named\": false\n },\n {\n \"type\": \")\",\n \"named\": false\n },\n {\n \"type\": \"enumerators\",\n \"named\": true\n },\n {\n \"type\": \"{\",\n \"named\": false\n },\n {\n \"type\": \"}\",\n \"named\": false\n }\n ]\n }\n }\n },\n {\n \"type\": \"function_declaration\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"operator_identifier\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"function_definition\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"operator_identifier\",\n \"named\": true\n }\n ]\n },\n \"parameters\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"parameters\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"function_type\",\n \"named\": true,\n \"fields\": {\n \"parameter_types\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parameter_types\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"generic_function\",\n \"named\": true,\n \"fields\": {\n \"function\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"type_arguments\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"generic_type\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_arguments\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_arguments\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"guard\",\n \"named\": true,\n \"fields\": {\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"if_expression\",\n \"named\": true,\n \"fields\": {\n \"alternative\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n }\n ]\n },\n \"consequence\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"import_declaration\",\n \"named\": true,\n \"fields\": {\n \"path\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"stable_identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"import_selectors\",\n \"named\": true\n },\n {\n \"type\": \"wildcard\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"import_selectors\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"renamed_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"infix_expression\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"operator\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"operator_identifier\",\n \"named\": true\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"infix_pattern\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n },\n \"operator\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"operator_identifier\",\n \"named\": true\n }\n ]\n },\n \"right\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"infix_type\",\n \"named\": true,\n \"fields\": {\n \"left\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"operator\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"operator_identifier\",\n \"named\": true\n }\n ]\n },\n \"right\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"instance_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"interpolated_string\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"interpolation\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"interpolated_string_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"interpolated_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"interpolation\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"block\",\n \"named\": true\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"lambda_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"bindings\",\n \"named\": true\n },\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"lazy_parameter_type\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"lower_bound\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"match_expression\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"case_block\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"modifiers\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"access_modifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"object_definition\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"template_body\",\n \"named\": true\n }\n ]\n },\n \"extend\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"extends_clause\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"package_clause\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"template_body\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"package_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"package_identifier\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"package_object\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"template_body\",\n \"named\": true\n }\n ]\n },\n \"extend\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"extends_clause\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"parameter\",\n \"named\": true,\n \"fields\": {\n \"default_value\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"lazy_parameter_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"repeated_parameter_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"parameter_types\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"lazy_parameter_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"repeated_parameter_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"parameters\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"parameter\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"postfix_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n },\n {\n \"type\": \"operator_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"prefix_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"projected_type\",\n \"named\": true,\n \"fields\": {\n \"selector\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"renamed_identifier\",\n \"named\": true,\n \"fields\": {\n \"alias\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"wildcard\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"repeated_parameter_type\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"return_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"stable_identifier\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"stable_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"stable_identifier\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"string\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"template_body\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"_definition\",\n \"named\": true\n },\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"throw_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"trait_definition\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"template_body\",\n \"named\": true\n }\n ]\n },\n \"extend\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"extends_clause\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"try_expression\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"catch_clause\",\n \"named\": true\n },\n {\n \"type\": \"finally_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"tuple_expression\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"tuple_pattern\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_arguments\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_definition\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_parameters\",\n \"named\": true,\n \"fields\": {\n \"bound\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"context_bound\",\n \"named\": true\n },\n {\n \"type\": \"lower_bound\",\n \"named\": true\n },\n {\n \"type\": \"upper_bound\",\n \"named\": true\n },\n {\n \"type\": \"view_bound\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"wildcard\",\n \"named\": true\n }\n ]\n },\n \"type_parameters\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"type_parameters\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"contravariant_type_parameter\",\n \"named\": true\n },\n {\n \"type\": \"covariant_type_parameter\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"typed_pattern\",\n \"named\": true,\n \"fields\": {\n \"pattern\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"unit\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"upper_bound\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"val_declaration\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"val_definition\",\n \"named\": true,\n \"fields\": {\n \"pattern\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"var_declaration\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"identifier\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"var_definition\",\n \"named\": true,\n \"fields\": {\n \"pattern\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"_pattern\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"modifiers\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"view_bound\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"annotation\",\n \"named\": true\n },\n {\n \"type\": \"compound_type\",\n \"named\": true\n },\n {\n \"type\": \"function_type\",\n \"named\": true\n },\n {\n \"type\": \"generic_type\",\n \"named\": true\n },\n {\n \"type\": \"infix_type\",\n \"named\": true\n },\n {\n \"type\": \"projected_type\",\n \"named\": true\n },\n {\n \"type\": \"stable_type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"while_expression\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"expression\",\n \"named\": true\n }\n ]\n },\n \"condition\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"parenthesized_expression\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"!\",\n \"named\": false\n },\n {\n \"type\": \"#\",\n \"named\": false\n },\n {\n \"type\": \"$\",\n \"named\": false\n },\n {\n \"type\": \"(\",\n \"named\": false\n },\n {\n \"type\": \")\",\n \"named\": false\n },\n {\n \"type\": \"*\",\n \"named\": false\n },\n {\n \"type\": \"+\",\n \"named\": false\n },\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"-\",\n \"named\": false\n },\n {\n \"type\": \".\",\n \"named\": false\n },\n {\n \"type\": \":\",\n \"named\": false\n },\n {\n \"type\": \";\",\n \"named\": false\n },\n {\n \"type\": \"<%\",\n \"named\": false\n },\n {\n \"type\": \"<-\",\n \"named\": false\n },\n {\n \"type\": \"<:\",\n \"named\": false\n },\n {\n \"type\": \"=\",\n \"named\": false\n },\n {\n \"type\": \"=>\",\n \"named\": false\n },\n {\n \"type\": \">:\",\n \"named\": false\n },\n {\n \"type\": \"@\",\n \"named\": false\n },\n {\n \"type\": \"[\",\n \"named\": false\n },\n {\n \"type\": \"]\",\n \"named\": false\n },\n {\n \"type\": \"abstract\",\n \"named\": false\n },\n {\n \"type\": \"case\",\n \"named\": false\n },\n {\n \"type\": \"catch\",\n \"named\": false\n },\n {\n \"type\": \"character_literal\",\n \"named\": true\n },\n {\n \"type\": \"class\",\n \"named\": false\n },\n {\n \"type\": \"comment\",\n \"named\": true\n },\n {\n \"type\": \"def\",\n \"named\": false\n },\n {\n \"type\": \"do\",\n \"named\": false\n },\n {\n \"type\": \"else\",\n \"named\": false\n },\n {\n \"type\": \"extends\",\n \"named\": false\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"final\",\n \"named\": false\n },\n {\n \"type\": \"finally\",\n \"named\": false\n },\n {\n \"type\": \"floating_point_literal\",\n \"named\": true\n },\n {\n \"type\": \"for\",\n \"named\": false\n },\n {\n \"type\": \"identifier\",\n \"named\": true\n },\n {\n \"type\": \"if\",\n \"named\": false\n },\n {\n \"type\": \"implicit\",\n \"named\": false\n },\n {\n \"type\": \"import\",\n \"named\": false\n },\n {\n \"type\": \"integer_literal\",\n \"named\": true\n },\n {\n \"type\": \"lazy\",\n \"named\": false\n },\n {\n \"type\": \"match\",\n \"named\": false\n },\n {\n \"type\": \"new\",\n \"named\": false\n },\n {\n \"type\": \"null_literal\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": false\n },\n {\n \"type\": \"operator_identifier\",\n \"named\": true\n },\n {\n \"type\": \"override\",\n \"named\": false\n },\n {\n \"type\": \"package\",\n \"named\": false\n },\n {\n \"type\": \"private\",\n \"named\": false\n },\n {\n \"type\": \"protected\",\n \"named\": false\n },\n {\n \"type\": \"return\",\n \"named\": false\n },\n {\n \"type\": \"sealed\",\n \"named\": false\n },\n {\n \"type\": \"symbol_literal\",\n \"named\": true\n },\n {\n \"type\": \"throw\",\n \"named\": false\n },\n {\n \"type\": \"trait\",\n \"named\": false\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"try\",\n \"named\": false\n },\n {\n \"type\": \"type\",\n \"named\": false\n },\n {\n \"type\": \"type_identifier\",\n \"named\": true\n },\n {\n \"type\": \"val\",\n \"named\": false\n },\n {\n \"type\": \"var\",\n \"named\": false\n },\n {\n \"type\": \"while\",\n \"named\": false\n },\n {\n \"type\": \"wildcard\",\n \"named\": true\n },\n {\n \"type\": \"with\",\n \"named\": false\n },\n {\n \"type\": \"yield\",\n \"named\": false\n },\n {\n \"type\": \"{\",\n \"named\": false\n },\n {\n \"type\": \"|\",\n \"named\": false\n },\n {\n \"type\": \"}\",\n \"named\": false\n },\n {\n \"type\": \"~\",\n \"named\": false\n }\n]";
Expand description
The content of the node-types.json
file for this grammar.