Constant NODE_TYPES

Source
pub const NODE_TYPES: &'static str = "[\n  {\n    \"type\": \"args\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"expr_array\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_binary\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_call\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_field\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_group\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_if\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_index\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_lambda\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_match\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_object\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_unary\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"boolean\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"comment\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"default_arm\",\n    \"named\": true,\n    \"fields\": {\n      \"value\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_break\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_continue\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_for\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_func_decl\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_loop\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_return\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_var_decl\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_while\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expr_array\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"expr_array\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_binary\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_call\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_field\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_group\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_if\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_index\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_lambda\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_match\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_object\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_unary\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"expr_binary\",\n    \"named\": true,\n    \"fields\": {\n      \"lhs\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\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            \"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\": \"or\",\n            \"named\": false\n          },\n          {\n            \"type\": \"to\",\n            \"named\": false\n          }\n        ]\n      },\n      \"rhs\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expr_call\",\n    \"named\": true,\n    \"fields\": {\n      \"args\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"args\",\n            \"named\": true\n          }\n        ]\n      },\n      \"func\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expr_field\",\n    \"named\": true,\n    \"fields\": {\n      \"arg\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      },\n      \"field\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expr_group\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"expr_array\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_binary\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_call\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_field\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_group\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_if\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_index\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_lambda\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_match\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_object\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_unary\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"expr_if\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          }\n        ]\n      },\n      \"condition\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      },\n      \"else_branch\": {\n        \"multiple\": true,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"else\",\n            \"named\": false\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expr_index\",\n    \"named\": true,\n    \"fields\": {\n      \"arg\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      },\n      \"index\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expr_lambda\",\n    \"named\": true,\n    \"fields\": {\n      \"args\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"args\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_break\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_continue\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_for\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_func_decl\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_loop\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_return\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_var_decl\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_while\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expr_literal\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"boolean\",\n          \"named\": true\n        },\n        {\n          \"type\": \"null\",\n          \"named\": true\n        },\n        {\n          \"type\": \"number\",\n          \"named\": true\n        },\n        {\n          \"type\": \"self\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"expr_match\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"match_body\",\n            \"named\": true\n          }\n        ]\n      },\n      \"value\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"expr_object\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"prop\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"expr_unary\",\n    \"named\": true,\n    \"fields\": {\n      \"operand\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      },\n      \"oprator\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"!\",\n            \"named\": false\n          },\n          {\n            \"type\": \"-\",\n            \"named\": false\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"iterator\",\n    \"named\": true,\n    \"fields\": {\n      \"key\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"value\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": false,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"expr_identifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"literal_pattern\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"expr_array\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_binary\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_call\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_field\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_group\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_if\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_index\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_lambda\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_match\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_object\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_unary\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"match_arm\",\n    \"named\": true,\n    \"fields\": {\n      \"pattern\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"literal_pattern\",\n            \"named\": true\n          },\n          {\n            \"type\": \"or_pattern\",\n            \"named\": true\n          }\n        ]\n      },\n      \"value\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_break\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_continue\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_for\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_func_decl\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_loop\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_return\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_var_decl\",\n            \"named\": true\n          },\n          {\n            \"type\": \"stmt_while\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"match_body\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"default_arm\",\n          \"named\": true\n        },\n        {\n          \"type\": \"match_arm\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"or_pattern\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"literal_pattern\",\n          \"named\": true\n        },\n        {\n          \"type\": \"or_pattern\",\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\": \"stmt_block\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_break\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_continue\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_for\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_func_decl\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_loop\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_return\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_var_decl\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_while\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"prop\",\n    \"named\": true,\n    \"fields\": {\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string\",\n            \"named\": true\n          }\n        ]\n      },\n      \"value\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"stmt_block\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"stmt_block\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_break\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_continue\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_for\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_func_decl\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_loop\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_return\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_var_decl\",\n          \"named\": true\n        },\n        {\n          \"type\": \"stmt_while\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"stmt_break\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"stmt_continue\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"stmt_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"expr_array\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_binary\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_call\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_field\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_group\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_if\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_index\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_lambda\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_match\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_object\",\n          \"named\": true\n        },\n        {\n          \"type\": \"expr_unary\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"stmt_for\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          }\n        ]\n      },\n      \"iterable\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      },\n      \"iterator\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"iterator\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"stmt_func_decl\",\n    \"named\": true,\n    \"fields\": {\n      \"args\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"args\",\n            \"named\": true\n          }\n        ]\n      },\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          }\n        ]\n      },\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"stmt_loop\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"stmt_return\",\n    \"named\": true,\n    \"fields\": {\n      \"value\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"stmt_var_decl\",\n    \"named\": true,\n    \"fields\": {\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"value\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"stmt_while\",\n    \"named\": true,\n    \"fields\": {\n      \"body\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"stmt_block\",\n            \"named\": true\n          }\n        ]\n      },\n      \"condition\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"expr_array\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_binary\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_call\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_field\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_group\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_if\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_index\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_lambda\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_match\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_object\",\n            \"named\": true\n          },\n          {\n            \"type\": \"expr_unary\",\n            \"named\": true\n          }\n        ]\n      }\n    }\n  },\n  {\n    \"type\": \"string\",\n    \"named\": true,\n    \"fields\": {}\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\": \"and\",\n    \"named\": false\n  },\n  {\n    \"type\": \"break\",\n    \"named\": false\n  },\n  {\n    \"type\": \"continue\",\n    \"named\": false\n  },\n  {\n    \"type\": \"else\",\n    \"named\": false\n  },\n  {\n    \"type\": \"expr_identifier\",\n    \"named\": true\n  },\n  {\n    \"type\": \"false\",\n    \"named\": false\n  },\n  {\n    \"type\": \"for\",\n    \"named\": false\n  },\n  {\n    \"type\": \"function\",\n    \"named\": false\n  },\n  {\n    \"type\": \"if\",\n    \"named\": false\n  },\n  {\n    \"type\": \"in\",\n    \"named\": false\n  },\n  {\n    \"type\": \"lambda\",\n    \"named\": false\n  },\n  {\n    \"type\": \"loop\",\n    \"named\": false\n  },\n  {\n    \"type\": \"match\",\n    \"named\": false\n  },\n  {\n    \"type\": \"null\",\n    \"named\": true\n  },\n  {\n    \"type\": \"number\",\n    \"named\": true\n  },\n  {\n    \"type\": \"or\",\n    \"named\": false\n  },\n  {\n    \"type\": \"return\",\n    \"named\": false\n  },\n  {\n    \"type\": \"self\",\n    \"named\": true\n  },\n  {\n    \"type\": \"set\",\n    \"named\": false\n  },\n  {\n    \"type\": \"to\",\n    \"named\": false\n  },\n  {\n    \"type\": \"true\",\n    \"named\": false\n  },\n  {\n    \"type\": \"while\",\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.