pub const NODE_TYPES: &'static str = "[\n  {\n    \"type\": \"_expression\",\n    \"named\": true,\n    \"subtypes\": [\n      {\n        \"type\": \"_primary_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"assignment_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"augmented_assignment_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"binary_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"cast_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"clone_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"conditional_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"exponentiation_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"include_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"include_once_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"match_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"reference_assignment_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"require_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"require_once_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"unary_op_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"yield_expression\",\n        \"named\": true\n      }\n    ]\n  },\n  {\n    \"type\": \"_literal\",\n    \"named\": true,\n    \"subtypes\": [\n      {\n        \"type\": \"boolean\",\n        \"named\": true\n      },\n      {\n        \"type\": \"encapsed_string\",\n        \"named\": true\n      },\n      {\n        \"type\": \"float\",\n        \"named\": true\n      },\n      {\n        \"type\": \"heredoc\",\n        \"named\": true\n      },\n      {\n        \"type\": \"integer\",\n        \"named\": true\n      },\n      {\n        \"type\": \"null\",\n        \"named\": true\n      },\n      {\n        \"type\": \"string\",\n        \"named\": true\n      }\n    ]\n  },\n  {\n    \"type\": \"_primary_expression\",\n    \"named\": true,\n    \"subtypes\": [\n      {\n        \"type\": \"_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"anonymous_function_creation_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"array_creation_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"arrow_function\",\n        \"named\": true\n      },\n      {\n        \"type\": \"cast_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"class_constant_access_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"dynamic_variable_name\",\n        \"named\": true\n      },\n      {\n        \"type\": \"function_call_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"member_access_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"member_call_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"name\",\n        \"named\": true\n      },\n      {\n        \"type\": \"nullsafe_member_access_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"nullsafe_member_call_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"object_creation_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"parenthesized_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"print_intrinsic\",\n        \"named\": true\n      },\n      {\n        \"type\": \"qualified_name\",\n        \"named\": true\n      },\n      {\n        \"type\": \"scoped_call_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"scoped_property_access_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"shell_command_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"subscript_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"throw_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"update_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"variable_name\",\n        \"named\": true\n      }\n    ]\n  },\n  {\n    \"type\": \"_statement\",\n    \"named\": true,\n    \"subtypes\": [\n      {\n        \"type\": \"break_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"class_declaration\",\n        \"named\": true\n      },\n      {\n        \"type\": \"compound_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"const_declaration\",\n        \"named\": true\n      },\n      {\n        \"type\": \"continue_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"declare_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"do_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"echo_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"empty_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"enum_declaration\",\n        \"named\": true\n      },\n      {\n        \"type\": \"expression_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"for_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"foreach_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"function_definition\",\n        \"named\": true\n      },\n      {\n        \"type\": \"function_static_declaration\",\n        \"named\": true\n      },\n      {\n        \"type\": \"global_declaration\",\n        \"named\": true\n      },\n      {\n        \"type\": \"goto_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"if_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"interface_declaration\",\n        \"named\": true\n      },\n      {\n        \"type\": \"named_label_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"namespace_definition\",\n        \"named\": true\n      },\n      {\n        \"type\": \"namespace_use_declaration\",\n        \"named\": true\n      },\n      {\n        \"type\": \"return_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"switch_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"trait_declaration\",\n        \"named\": true\n      },\n      {\n        \"type\": \"try_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"unset_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"while_statement\",\n        \"named\": true\n      }\n    ]\n  },\n  {\n    \"type\": \"_type\",\n    \"named\": true,\n    \"subtypes\": [\n      {\n        \"type\": \"union_type\",\n        \"named\": true\n      }\n    ]\n  },\n  {\n    \"type\": \"abstract_modifier\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"anonymous_function_creation_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"compound_statement\",\n            \"named\": true\n          }\n        ]\n      },\n      \"parameters\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"formal_parameters\",\n            \"named\": true\n          }\n        ]\n      },\n      \"reference_modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"reference_modifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"return_type\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_type\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": false,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"anonymous_function_use_clause\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"anonymous_function_use_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"by_ref\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"argument\",\n    \"named\": true,\n    \"fields\": {\n      \"name\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"reference_modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"reference_modifier\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variadic_unpacking\",\n          \"named\": true\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\": \"argument\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"array_creation_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"array_element_initializer\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"array_element_initializer\",\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\": \"by_ref\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variadic_unpacking\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"arrow_function\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      },\n      \"parameters\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"formal_parameters\",\n            \"named\": true\n          }\n        ]\n      },\n      \"reference_modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"reference_modifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"return_type\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_type\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": false,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"static_modifier\",\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\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"list_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\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\": \"attribute\",\n    \"named\": true,\n    \"fields\": {\n      \"parameters\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"arguments\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"attribute_list\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"attribute\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"augmented_assignment_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"operator\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\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      },\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\": \"base_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"binary_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      },\n      \"operator\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\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\": \"and\",\n            \"named\": false\n          },\n          {\n            \"type\": \"instanceof\",\n            \"named\": false\n          },\n          {\n            \"type\": \"or\",\n            \"named\": false\n          },\n          {\n            \"type\": \"xor\",\n            \"named\": false\n          },\n          {\n            \"type\": \"|\",\n            \"named\": false\n          },\n          {\n            \"type\": \"||\",\n            \"named\": false\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"qualified_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"break_statement\",\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\": \"by_ref\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"function_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subscript_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"case_statement\",\n    \"named\": true,\n    \"fields\": {\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\": \"_statement\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"cast_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"type\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"cast_type\",\n            \"named\": true\n          }\n        ]\n      },\n      \"value\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_primary_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"clone_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponentiation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"include_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"include_once_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"unary_op_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"cast_type\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"catch_clause\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"compound_statement\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"type\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"type_list\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"class_constant_access_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"array_creation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"cast_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"class_constant_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"encapsed_string\",\n          \"named\": true\n        },\n        {\n          \"type\": \"function_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"heredoc\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"relative_scope\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_property_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subscript_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"class_declaration\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"declaration_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"abstract_modifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"final_modifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"name\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"base_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"class_interface_clause\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"class_interface_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"clone_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_primary_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"colon_block\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_statement\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"compound_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_statement\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"conditional_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"alternative\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\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\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"const_declaration\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"final_modifier\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"const_element\",\n          \"named\": true\n        },\n        {\n          \"type\": \"visibility_modifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"const_element\",\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\": \"name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"continue_statement\",\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\": \"declaration_list\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"const_declaration\",\n          \"named\": true\n        },\n        {\n          \"type\": \"method_declaration\",\n          \"named\": true\n        },\n        {\n          \"type\": \"property_declaration\",\n          \"named\": true\n        },\n        {\n          \"type\": \"use_declaration\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"declare_directive\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_literal\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"declare_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_statement\",\n          \"named\": true\n        },\n        {\n          \"type\": \"declare_directive\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"default_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_statement\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"do_statement\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_statement\",\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\": \"dynamic_variable_name\",\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          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"echo_statement\",\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          \"type\": \"sequence_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"else_clause\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_statement\",\n            \"named\": true\n          },\n          {\n            \"type\": \"colon_block\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"else_if_clause\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_statement\",\n            \"named\": true\n          },\n          {\n            \"type\": \"colon_block\",\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\": \"empty_statement\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"encapsed_string\",\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          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"escape_sequence\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subscript_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"enum_case\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"value\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"integer\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"enum_declaration\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"enum_declaration_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"name\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_type\",\n          \"named\": true\n        },\n        {\n          \"type\": \"class_interface_clause\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"enum_declaration_list\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"enum_case\",\n          \"named\": true\n        },\n        {\n          \"type\": \"method_declaration\",\n          \"named\": true\n        },\n        {\n          \"type\": \"use_declaration\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"exponentiation_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_primary_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"clone_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"match_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"unary_op_expression\",\n            \"named\": true\n          }\n        ]\n      },\n      \"right\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_primary_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"assignment_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"augmented_assignment_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"clone_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"exponentiation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"match_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"unary_op_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expression_statement\",\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\": \"final_modifier\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"finally_clause\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"compound_statement\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"for_statement\",\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          \"type\": \"_statement\",\n          \"named\": true\n        },\n        {\n          \"type\": \"sequence_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"foreach_statement\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_statement\",\n            \"named\": true\n          },\n          {\n            \"type\": \"colon_block\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"by_ref\",\n          \"named\": true\n        },\n        {\n          \"type\": \"list_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"pair\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"formal_parameters\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"property_promotion_parameter\",\n          \"named\": true\n        },\n        {\n          \"type\": \"simple_parameter\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variadic_parameter\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"function_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      },\n      \"function\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"array_creation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"encapsed_string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"heredoc\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parenthesized_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"qualified_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"function_definition\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"compound_statement\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"parameters\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"formal_parameters\",\n            \"named\": true\n          }\n        ]\n      },\n      \"reference_modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"reference_modifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"return_type\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_type\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"function_static_declaration\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"static_variable_declaration\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"global_declaration\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"goto_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"if_statement\",\n    \"named\": true,\n    \"fields\": {\n      \"alternative\": {\n        \"multiple\": true,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"else_clause\",\n            \"named\": true\n          },\n          {\n            \"type\": \"else_if_clause\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_statement\",\n            \"named\": true\n          },\n          {\n            \"type\": \"colon_block\",\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\": \"include_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\": \"include_once_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\": \"interface_declaration\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"declaration_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"name\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": false,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"base_clause\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"list_literal\",\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          \"type\": \"by_ref\",\n          \"named\": true\n        },\n        {\n          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"function_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"list_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_property_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subscript_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"match_block\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"match_conditional_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"match_default_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"match_condition_list\",\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\": \"match_conditional_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"conditional_expressions\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"match_condition_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"return_expression\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"match_default_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"return_expression\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\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\": \"match_block\",\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\": \"member_access_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"object\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"array_creation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"class_constant_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"encapsed_string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"heredoc\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parenthesized_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"qualified_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"member_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      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"object\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"array_creation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"class_constant_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"encapsed_string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"heredoc\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parenthesized_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"qualified_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"method_declaration\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"compound_statement\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"parameters\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"formal_parameters\",\n            \"named\": true\n          }\n        ]\n      },\n      \"reference_modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"reference_modifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"return_type\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_type\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"abstract_modifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"final_modifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"static_modifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"var_modifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"visibility_modifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"name\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"named_label_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"named_type\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"namespace_aliasing_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"namespace_definition\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"compound_statement\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"namespace_name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"namespace_name\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"namespace_name_as_prefix\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"namespace_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"namespace_use_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"namespace_aliasing_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"namespace_use_declaration\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"namespace_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"namespace_use_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"namespace_use_group\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"namespace_use_group\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"namespace_use_group_clause\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"namespace_use_group_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"namespace_aliasing_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"namespace_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"nullsafe_member_access_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"object\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"array_creation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"class_constant_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"encapsed_string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"heredoc\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parenthesized_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"qualified_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"nullsafe_member_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      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"object\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"array_creation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"class_constant_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"encapsed_string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"heredoc\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parenthesized_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"qualified_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"object_creation_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"arguments\",\n          \"named\": true\n        },\n        {\n          \"type\": \"base_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"class_interface_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"declaration_list\",\n          \"named\": true\n        },\n        {\n          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_property_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subscript_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"optional_type\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"named_type\",\n          \"named\": true\n        },\n        {\n          \"type\": \"primitive_type\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"pair\",\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\": \"by_ref\",\n          \"named\": true\n        },\n        {\n          \"type\": \"list_literal\",\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\": \"primitive_type\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"print_intrinsic\",\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\": \"program\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_statement\",\n          \"named\": true\n        },\n        {\n          \"type\": \"php_tag\",\n          \"named\": true\n        },\n        {\n          \"type\": \"text\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"property_declaration\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"type\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_type\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"abstract_modifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"final_modifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"property_element\",\n          \"named\": true\n        },\n        {\n          \"type\": \"static_modifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"var_modifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"visibility_modifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"property_element\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"property_initializer\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"property_initializer\",\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\": \"property_promotion_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\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"type\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_type\",\n            \"named\": true\n          }\n        ]\n      },\n      \"visibility\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"visibility_modifier\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"qualified_name\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"namespace_name_as_prefix\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"reference_assignment_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"left\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"list_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\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\": \"reference_modifier\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"relative_scope\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"require_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\": \"require_once_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\": \"return_statement\",\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\": \"scoped_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      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"scope\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"array_creation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"class_constant_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"encapsed_string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"heredoc\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parenthesized_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"qualified_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"relative_scope\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"scoped_property_access_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"scope\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"array_creation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"cast_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"class_constant_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"dynamic_variable_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"encapsed_string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"function_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"heredoc\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"nullsafe_member_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parenthesized_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"qualified_name\",\n            \"named\": true\n          },\n          {\n            \"type\": \"relative_scope\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"scoped_property_access_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          },\n          {\n            \"type\": \"subscript_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"sequence_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\": \"sequence_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"simple_parameter\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\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\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"reference_modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"reference_modifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"type\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_type\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"static_modifier\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"static_variable_declaration\",\n    \"named\": true,\n    \"fields\": {\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"value\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"string\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"subscript_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\": \"array_creation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"class_constant_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"encapsed_string\",\n          \"named\": true\n        },\n        {\n          \"type\": \"function_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"heredoc\",\n          \"named\": true\n        },\n        {\n          \"type\": \"integer\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_property_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subscript_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"switch_block\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"case_statement\",\n          \"named\": true\n        },\n        {\n          \"type\": \"default_statement\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"switch_statement\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"switch_block\",\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\": \"text\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"text_interpolation\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"php_tag\",\n          \"named\": true\n        },\n        {\n          \"type\": \"text\",\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_declaration\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"declaration_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"name\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"try_statement\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"compound_statement\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\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\": \"type_list\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"named_type\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"unary_op_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          \"type\": \"integer\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"union_type\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"named_type\",\n          \"named\": true\n        },\n        {\n          \"type\": \"optional_type\",\n          \"named\": true\n        },\n        {\n          \"type\": \"primitive_type\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"unset_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"cast_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"function_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_property_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subscript_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"update_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"cast_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"dynamic_variable_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"function_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"nullsafe_member_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_property_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"subscript_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"variable_name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"use_as_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"class_constant_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"visibility_modifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"use_declaration\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"qualified_name\",\n          \"named\": true\n        },\n        {\n          \"type\": \"use_list\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"use_instead_of_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"class_constant_access_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"use_list\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"use_as_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"use_instead_of_clause\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"variable_name\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"name\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"variadic_parameter\",\n    \"named\": true,\n    \"fields\": {\n      \"attributes\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"attribute_list\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"variable_name\",\n            \"named\": true\n          }\n        ]\n      },\n      \"reference_modifier\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"reference_modifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"type\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"_type\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"variadic_unpacking\",\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\": \"visibility_modifier\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"while_statement\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_statement\",\n            \"named\": true\n          },\n          {\n            \"type\": \"colon_block\",\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\": \"yield_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          \"type\": \"array_element_initializer\",\n          \"named\": true\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\": \",\",\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\": \"===\",\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\": \"and\",\n    \"named\": false\n  },\n  {\n    \"type\": \"array\",\n    \"named\": false\n  },\n  {\n    \"type\": \"as\",\n    \"named\": false\n  },\n  {\n    \"type\": \"bool\",\n    \"named\": false\n  },\n  {\n    \"type\": \"boolean\",\n    \"named\": true\n  },\n  {\n    \"type\": \"break\",\n    \"named\": false\n  },\n  {\n    \"type\": \"callable\",\n    \"named\": false\n  },\n  {\n    \"type\": \"case\",\n    \"named\": false\n  },\n  {\n    \"type\": \"catch\",\n    \"named\": false\n  },\n  {\n    \"type\": \"class\",\n    \"named\": false\n  },\n  {\n    \"type\": \"clone\",\n    \"named\": false\n  },\n  {\n    \"type\": \"comment\",\n    \"named\": true\n  },\n  {\n    \"type\": \"const\",\n    \"named\": false\n  },\n  {\n    \"type\": \"continue\",\n    \"named\": false\n  },\n  {\n    \"type\": \"declare\",\n    \"named\": false\n  },\n  {\n    \"type\": \"default\",\n    \"named\": false\n  },\n  {\n    \"type\": \"do\",\n    \"named\": false\n  },\n  {\n    \"type\": \"echo\",\n    \"named\": false\n  },\n  {\n    \"type\": \"else\",\n    \"named\": false\n  },\n  {\n    \"type\": \"elseif\",\n    \"named\": false\n  },\n  {\n    \"type\": \"encoding\",\n    \"named\": false\n  },\n  {\n    \"type\": \"enddeclare\",\n    \"named\": false\n  },\n  {\n    \"type\": \"endfor\",\n    \"named\": false\n  },\n  {\n    \"type\": \"endforeach\",\n    \"named\": false\n  },\n  {\n    \"type\": \"endif\",\n    \"named\": false\n  },\n  {\n    \"type\": \"endswitch\",\n    \"named\": false\n  },\n  {\n    \"type\": \"endwhile\",\n    \"named\": false\n  },\n  {\n    \"type\": \"enum\",\n    \"named\": false\n  },\n  {\n    \"type\": \"escape_sequence\",\n    \"named\": true\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\": \"float\",\n    \"named\": false\n  },\n  {\n    \"type\": \"float\",\n    \"named\": true\n  },\n  {\n    \"type\": \"fn\",\n    \"named\": false\n  },\n  {\n    \"type\": \"for\",\n    \"named\": false\n  },\n  {\n    \"type\": \"foreach\",\n    \"named\": false\n  },\n  {\n    \"type\": \"from\",\n    \"named\": false\n  },\n  {\n    \"type\": \"function\",\n    \"named\": false\n  },\n  {\n    \"type\": \"global\",\n    \"named\": false\n  },\n  {\n    \"type\": \"goto\",\n    \"named\": false\n  },\n  {\n    \"type\": \"heredoc\",\n    \"named\": true\n  },\n  {\n    \"type\": \"if\",\n    \"named\": false\n  },\n  {\n    \"type\": \"implements\",\n    \"named\": false\n  },\n  {\n    \"type\": \"include\",\n    \"named\": false\n  },\n  {\n    \"type\": \"include_once\",\n    \"named\": false\n  },\n  {\n    \"type\": \"instanceof\",\n    \"named\": false\n  },\n  {\n    \"type\": \"insteadof\",\n    \"named\": false\n  },\n  {\n    \"type\": \"int\",\n    \"named\": false\n  },\n  {\n    \"type\": \"integer\",\n    \"named\": true\n  },\n  {\n    \"type\": \"interface\",\n    \"named\": false\n  },\n  {\n    \"type\": \"iterable\",\n    \"named\": false\n  },\n  {\n    \"type\": \"list\",\n    \"named\": false\n  },\n  {\n    \"type\": \"match\",\n    \"named\": false\n  },\n  {\n    \"type\": \"mixed\",\n    \"named\": false\n  },\n  {\n    \"type\": \"namespace\",\n    \"named\": false\n  },\n  {\n    \"type\": \"new\",\n    \"named\": false\n  },\n  {\n    \"type\": \"null\",\n    \"named\": false\n  },\n  {\n    \"type\": \"null\",\n    \"named\": true\n  },\n  {\n    \"type\": \"or\",\n    \"named\": false\n  },\n  {\n    \"type\": \"parent\",\n    \"named\": false\n  },\n  {\n    \"type\": \"php_tag\",\n    \"named\": true\n  },\n  {\n    \"type\": \"print\",\n    \"named\": false\n  },\n  {\n    \"type\": \"private\",\n    \"named\": false\n  },\n  {\n    \"type\": \"protected\",\n    \"named\": false\n  },\n  {\n    \"type\": \"public\",\n    \"named\": false\n  },\n  {\n    \"type\": \"require\",\n    \"named\": false\n  },\n  {\n    \"type\": \"require_once\",\n    \"named\": false\n  },\n  {\n    \"type\": \"return\",\n    \"named\": false\n  },\n  {\n    \"type\": \"self\",\n    \"named\": false\n  },\n  {\n    \"type\": \"shell_command_expression\",\n    \"named\": true\n  },\n  {\n    \"type\": \"static\",\n    \"named\": false\n  },\n  {\n    \"type\": \"strict_types\",\n    \"named\": false\n  },\n  {\n    \"type\": \"string\",\n    \"named\": false\n  },\n  {\n    \"type\": \"switch\",\n    \"named\": false\n  },\n  {\n    \"type\": \"throw\",\n    \"named\": false\n  },\n  {\n    \"type\": \"ticks\",\n    \"named\": false\n  },\n  {\n    \"type\": \"trait\",\n    \"named\": false\n  },\n  {\n    \"type\": \"try\",\n    \"named\": false\n  },\n  {\n    \"type\": \"unset\",\n    \"named\": false\n  },\n  {\n    \"type\": \"use\",\n    \"named\": false\n  },\n  {\n    \"type\": \"var_modifier\",\n    \"named\": true\n  },\n  {\n    \"type\": \"void\",\n    \"named\": false\n  },\n  {\n    \"type\": \"while\",\n    \"named\": false\n  },\n  {\n    \"type\": \"xor\",\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  {\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.