pub const NODE_TYPES: &str = "[\n {\n \"type\": \"arg\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"array\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"for_spec\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_spec\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"assertion\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"assertion\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true,\n \"fields\": {\n \"lhs\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"!\",\n \"named\": false\n },\n {\n \"type\": \"+\",\n \"named\": false\n },\n {\n \"type\": \"-\",\n \"named\": false\n },\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n },\n {\n \"type\": \"~\",\n \"named\": false\n }\n ]\n },\n \"op\": {\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\": \"in\",\n \"named\": false\n },\n {\n \"type\": \"|\",\n \"named\": false\n },\n {\n \"type\": \"||\",\n \"named\": false\n }\n ]\n },\n \"rhs\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"!\",\n \"named\": false\n },\n {\n \"type\": \"+\",\n \"named\": false\n },\n {\n \"type\": \"-\",\n \"named\": false\n },\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n },\n {\n \"type\": \"~\",\n \"named\": false\n }\n ]\n }\n }\n },\n {\n \"type\": \"bind\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"destruct_field\",\n \"named\": true\n },\n {\n \"type\": \"destruct_rest\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"params\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"destruct_field\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"destruct_field\",\n \"named\": true\n },\n {\n \"type\": \"destruct_rest\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"destruct_rest\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"error_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"field\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"field_name\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"params\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n },\n {\n \"type\": \"visibility\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"field_name\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"for_spec\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"destruct_field\",\n \"named\": true\n },\n {\n \"type\": \"destruct_rest\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"function_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"params\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"if_spec\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"import_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"literal\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"local_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"bind\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"member\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"field\",\n \"named\": true\n },\n {\n \"type\": \"member_assert\",\n \"named\": true\n },\n {\n \"type\": \"member_local\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"member_assert\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"assertion\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"member_local\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"bind\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"object\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"for_spec\",\n \"named\": true\n },\n {\n \"type\": \"if_spec\",\n \"named\": true\n },\n {\n \"type\": \"member\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"param\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"destruct_field\",\n \"named\": true\n },\n {\n \"type\": \"destruct_rest\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"params\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"param\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"parened\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"source_file\",\n \"named\": true,\n \"root\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"arg\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"object\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"array\",\n \"named\": true\n },\n {\n \"type\": \"assert_expr\",\n \"named\": true\n },\n {\n \"type\": \"binary_expr\",\n \"named\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"error_expr\",\n \"named\": true\n },\n {\n \"type\": \"function_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident_ref\",\n \"named\": true\n },\n {\n \"type\": \"if_then_else\",\n \"named\": true\n },\n {\n \"type\": \"import_expr\",\n \"named\": true\n },\n {\n \"type\": \"literal\",\n \"named\": true\n },\n {\n \"type\": \"local_expr\",\n \"named\": true\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"object\",\n \"named\": true\n },\n {\n \"type\": \"parened\",\n \"named\": true\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"suffix_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index\",\n \"named\": true\n },\n {\n \"type\": \"suffix_index_expr\",\n \"named\": true\n },\n {\n \"type\": \"suffix_object_apply\",\n \"named\": true\n },\n {\n \"type\": \"suffix_slice\",\n \"named\": true\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"visibility\",\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\": \"^\",\n \"named\": false\n },\n {\n \"type\": \"assert\",\n \"named\": false\n },\n {\n \"type\": \"block_comment\",\n \"named\": true,\n \"extra\": true\n },\n {\n \"type\": \"dollar\",\n \"named\": true\n },\n {\n \"type\": \"else\",\n \"named\": false\n },\n {\n \"type\": \"error\",\n \"named\": false\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\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"if\",\n \"named\": false\n },\n {\n \"type\": \"import\",\n \"named\": false\n },\n {\n \"type\": \"importbin\",\n \"named\": false\n },\n {\n \"type\": \"importstr\",\n \"named\": false\n },\n {\n \"type\": \"in\",\n \"named\": false\n },\n {\n \"type\": \"line_comment\",\n \"named\": true,\n \"extra\": true\n },\n {\n \"type\": \"local\",\n \"named\": false\n },\n {\n \"type\": \"null\",\n \"named\": false\n },\n {\n \"type\": \"number\",\n \"named\": true\n },\n {\n \"type\": \"self\",\n \"named\": false\n },\n {\n \"type\": \"string\",\n \"named\": true\n },\n {\n \"type\": \"string_block\",\n \"named\": true\n },\n {\n \"type\": \"super\",\n \"named\": false\n },\n {\n \"type\": \"tailstrict\",\n \"named\": false\n },\n {\n \"type\": \"then\",\n \"named\": false\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"verbatim_string\",\n \"named\": true\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";Expand description
The content of the node-types.json file for this grammar.