Constant tree_sitter_cwscript::NODE_TYPES
source · [−]pub const NODE_TYPES: &'static str = "[\n {\n \"type\": \"add_sub_expr\",\n \"named\": true,\n \"fields\": {\n \"lhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\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 },\n \"rhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"and_expr\",\n \"named\": true,\n \"fields\": {\n \"lhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n },\n \"rhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"assign_op\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"assign_stmt\",\n \"named\": true,\n \"fields\": {\n \"op\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"assign_op\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"builtin_type\",\n \"named\": true,\n \"fields\": {}\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true,\n \"fields\": {\n \"lhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\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 },\n \"rhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"contract_defn\",\n \"named\": true,\n \"fields\": {\n \"args\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"fn_args\",\n \"named\": true\n }\n ]\n },\n \"bases\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"extends\",\n \"named\": false\n },\n {\n \"type\": \"ident_list\",\n \"named\": true\n }\n ]\n },\n \"body\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"enum_variant_struct\",\n \"named\": true\n },\n {\n \"type\": \"enum_variant_tuple\",\n \"named\": true\n },\n {\n \"type\": \"enum_variant_unit\",\n \"named\": true\n },\n {\n \"type\": \"error\",\n \"named\": false\n },\n {\n \"type\": \"error_defn\",\n \"named\": true\n },\n {\n \"type\": \"event\",\n \"named\": false\n },\n {\n \"type\": \"event_defn\",\n \"named\": true\n },\n {\n \"type\": \"exec\",\n \"named\": false\n },\n {\n \"type\": \"exec_defn\",\n \"named\": true\n },\n {\n \"type\": \"fn_args\",\n \"named\": true\n },\n {\n \"type\": \"fn_body\",\n \"named\": true\n },\n {\n \"type\": \"fn_return_type\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"instantiate_defn\",\n \"named\": true\n },\n {\n \"type\": \"migrate_defn\",\n \"named\": true\n },\n {\n \"type\": \"query\",\n \"named\": false\n },\n {\n \"type\": \"query_defn\",\n \"named\": true\n },\n {\n \"type\": \"state\",\n \"named\": false\n },\n {\n \"type\": \"state_defn\",\n \"named\": true\n },\n {\n \"type\": \"state_item\",\n \"named\": true\n },\n {\n \"type\": \"state_map\",\n \"named\": true\n },\n {\n \"type\": \"{\",\n \"named\": false\n },\n {\n \"type\": \"}\",\n \"named\": false\n }\n ]\n },\n \"interfaces\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"ident_list\",\n \"named\": true\n },\n {\n \"type\": \"implements\",\n \"named\": false\n }\n ]\n },\n \"name\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"fn_return_type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"cwscript_src\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"contract_defn\",\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\": \"fn_body\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"else_if_clause\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"if_clause\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"emit_stmt\",\n \"named\": true,\n \"fields\": {\n \"arg\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"enum_body\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"enum_variant_struct\",\n \"named\": true\n },\n {\n \"type\": \"enum_variant_tuple\",\n \"named\": true\n },\n {\n \"type\": \"enum_variant_unit\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"enum_body\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"enum_variant_struct\",\n \"named\": true,\n \"fields\": {\n \"members\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"struct_member\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"struct_member\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"enum_variant_tuple\",\n \"named\": true,\n \"fields\": {\n \"members\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"enum_variant_unit\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true,\n \"fields\": {\n \"lhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\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 },\n \"rhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"error_defn\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"enum_variant_struct\",\n \"named\": true\n },\n {\n \"type\": \"enum_variant_tuple\",\n \"named\": true\n },\n {\n \"type\": \"enum_variant_unit\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"event_defn\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"enum_variant_struct\",\n \"named\": true\n },\n {\n \"type\": \"enum_variant_tuple\",\n \"named\": true\n },\n {\n \"type\": \"enum_variant_unit\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"exec_defn\",\n \"named\": true,\n \"fields\": {\n \"args\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_args\",\n \"named\": true\n }\n ]\n },\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_body\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"fn_return_type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"exec_stmt\",\n \"named\": true,\n \"fields\": {\n \"arg\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"fail_stmt\",\n \"named\": true,\n \"fields\": {\n \"arg\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"fn_arg\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"fn_args\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"fn_arg\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"fn_body\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"assign_stmt\",\n \"named\": true\n },\n {\n \"type\": \"emit_stmt\",\n \"named\": true\n },\n {\n \"type\": \"exec_stmt\",\n \"named\": true\n },\n {\n \"type\": \"fail_stmt\",\n \"named\": true\n },\n {\n \"type\": \"for_stmt\",\n \"named\": true\n },\n {\n \"type\": \"if_stmt\",\n \"named\": true\n },\n {\n \"type\": \"let_stmt\",\n \"named\": true\n },\n {\n \"type\": \"return_stmt\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"fn_return_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"for_stmt\",\n \"named\": true,\n \"fields\": {\n \"bindings\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident_binding\",\n \"named\": true\n },\n {\n \"type\": \"struct_unpack_binding\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"fn_body\",\n \"named\": true\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"ident_binding\",\n \"named\": true,\n \"fields\": {\n \"type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n },\n \"var_name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"ident_list\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"if_clause\",\n \"named\": true,\n \"fields\": {\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_body\",\n \"named\": true\n }\n ]\n },\n \"predicate\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"if_stmt\",\n \"named\": true,\n \"fields\": {\n \"else_clause\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"else_clause\",\n \"named\": true\n }\n ]\n },\n \"else_if_clauses\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"else_if_clause\",\n \"named\": true\n }\n ]\n },\n \"if_clause\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"if_clause\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"instantiate_defn\",\n \"named\": true,\n \"fields\": {\n \"args\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_args\",\n \"named\": true\n }\n ]\n },\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_body\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"fn_return_type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"let_stmt\",\n \"named\": true,\n \"fields\": {\n \"bindings\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident_binding\",\n \"named\": true\n },\n {\n \"type\": \"struct_unpack_binding\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"fn_body\",\n \"named\": true\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"map_key\",\n \"named\": true,\n \"fields\": {\n \"key_name\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"key_type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true,\n \"fields\": {\n \"lhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n },\n \"member\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"migrate_defn\",\n \"named\": true,\n \"fields\": {\n \"args\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_args\",\n \"named\": true\n }\n ]\n },\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_body\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"fn_return_type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true,\n \"fields\": {\n \"lhs\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\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 }\n }\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_call_arg\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"named_call_arg\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"or_expr\",\n \"named\": true,\n \"fields\": {\n \"lhs\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"query_defn\",\n \"named\": true,\n \"fields\": {\n \"args\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_args\",\n \"named\": true\n }\n ]\n },\n \"body\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"fn_body\",\n \"named\": true\n }\n ]\n },\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"return_type\": {\n \"multiple\": false,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"fn_return_type\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"query_expr\",\n \"named\": true,\n \"fields\": {\n \"arg\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"return_stmt\",\n \"named\": true,\n \"fields\": {\n \"arg\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"state_defn\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"state_item\",\n \"named\": true\n },\n {\n \"type\": \"state_map\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"state_item\",\n \"named\": true,\n \"fields\": {\n \"key\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"state_map\",\n \"named\": true,\n \"fields\": {\n \"key\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"map_key\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"struct_body\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"struct_member\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"struct_body\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"struct_member\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"struct_unpack_binding\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident_binding\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"struct_val\",\n \"named\": true,\n \"fields\": {\n \"members_vals\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"struct_val_member\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"struct_val_member\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n }\n ]\n },\n \"value\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true,\n \"fields\": {\n \"index\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n },\n \"lhs\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true,\n \"fields\": {\n \"member_vals\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n },\n \"type\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true,\n \"fields\": {\n \"name\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"type_name\",\n \"named\": true\n }\n ]\n }\n },\n \"children\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"builtin_type\",\n \"named\": true\n },\n {\n \"type\": \"enum_defn\",\n \"named\": true\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"short_option_type\",\n \"named\": true\n },\n {\n \"type\": \"short_vec_type\",\n \"named\": true\n },\n {\n \"type\": \"struct_defn\",\n \"named\": true\n },\n {\n \"type\": \"tuple_type\",\n \"named\": true\n },\n {\n \"type\": \"type_alias_defn\",\n \"named\": true\n },\n {\n \"type\": \"type_path\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"type_path\",\n \"named\": true,\n \"fields\": {},\n \"children\": {\n \"multiple\": true,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"type_name\",\n \"named\": true\n }\n ]\n }\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true,\n \"fields\": {\n \"arg\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true,\n \"fields\": {\n \"arg\": {\n \"multiple\": false,\n \"required\": true,\n \"types\": [\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"vec_val\",\n \"named\": true,\n \"fields\": {\n \"vals\": {\n \"multiple\": true,\n \"required\": false,\n \"types\": [\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"add_sub_expr\",\n \"named\": true\n },\n {\n \"type\": \"and_expr\",\n \"named\": true\n },\n {\n \"type\": \"comparison_expr\",\n \"named\": true\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"equality_expr\",\n \"named\": true\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"grouped_expr\",\n \"named\": true\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"member_access_expr\",\n \"named\": true\n },\n {\n \"type\": \"mult_div_mod_expr\",\n \"named\": true\n },\n {\n \"type\": \"named_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or_expr\",\n \"named\": true\n },\n {\n \"type\": \"pos_args_fn_call_expr\",\n \"named\": true\n },\n {\n \"type\": \"query_expr\",\n \"named\": true\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct_val\",\n \"named\": true\n },\n {\n \"type\": \"table_lookup_expr\",\n \"named\": true\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"tuple_struct_val\",\n \"named\": true\n },\n {\n \"type\": \"unary_neg_expr\",\n \"named\": true\n },\n {\n \"type\": \"unary_not_expr\",\n \"named\": true\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\n },\n {\n \"type\": \"vec_val\",\n \"named\": true\n }\n ]\n }\n }\n },\n {\n \"type\": \"!\",\n \"named\": false\n },\n {\n \"type\": \"!=\",\n \"named\": false\n },\n {\n \"type\": \"%\",\n \"named\": false\n },\n {\n \"type\": \"%=\",\n \"named\": false\n },\n {\n \"type\": \"(\",\n \"named\": false\n },\n {\n \"type\": \")\",\n \"named\": false\n },\n {\n \"type\": \"*\",\n \"named\": false\n },\n {\n \"type\": \"*=\",\n \"named\": false\n },\n {\n \"type\": \"+\",\n \"named\": false\n },\n {\n \"type\": \"+=\",\n \"named\": false\n },\n {\n \"type\": \",\",\n \"named\": false\n },\n {\n \"type\": \"-\",\n \"named\": false\n },\n {\n \"type\": \"-=\",\n \"named\": false\n },\n {\n \"type\": \"->\",\n \"named\": false\n },\n {\n \"type\": \".\",\n \"named\": false\n },\n {\n \"type\": \"/\",\n \"named\": false\n },\n {\n \"type\": \"/=\",\n \"named\": false\n },\n {\n \"type\": \":\",\n \"named\": false\n },\n {\n \"type\": \"::\",\n \"named\": false\n },\n {\n \"type\": \"<\",\n \"named\": false\n },\n {\n \"type\": \"<=\",\n \"named\": false\n },\n {\n \"type\": \"=\",\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\": \"bool\",\n \"named\": false\n },\n {\n \"type\": \"byte\",\n \"named\": false\n },\n {\n \"type\": \"contract\",\n \"named\": false\n },\n {\n \"type\": \"decimal_val\",\n \"named\": true\n },\n {\n \"type\": \"else\",\n \"named\": false\n },\n {\n \"type\": \"emit\",\n \"named\": false\n },\n {\n \"type\": \"enum\",\n \"named\": false\n },\n {\n \"type\": \"error\",\n \"named\": false\n },\n {\n \"type\": \"event\",\n \"named\": false\n },\n {\n \"type\": \"exec\",\n \"named\": false\n },\n {\n \"type\": \"extends\",\n \"named\": false\n },\n {\n \"type\": \"fail\",\n \"named\": false\n },\n {\n \"type\": \"false\",\n \"named\": false\n },\n {\n \"type\": \"for\",\n \"named\": false\n },\n {\n \"type\": \"i128\",\n \"named\": false\n },\n {\n \"type\": \"i16\",\n \"named\": false\n },\n {\n \"type\": \"i32\",\n \"named\": false\n },\n {\n \"type\": \"i64\",\n \"named\": false\n },\n {\n \"type\": \"i8\",\n \"named\": false\n },\n {\n \"type\": \"ident\",\n \"named\": true\n },\n {\n \"type\": \"if\",\n \"named\": false\n },\n {\n \"type\": \"implements\",\n \"named\": false\n },\n {\n \"type\": \"in\",\n \"named\": false\n },\n {\n \"type\": \"infer_type\",\n \"named\": true\n },\n {\n \"type\": \"instantiate\",\n \"named\": false\n },\n {\n \"type\": \"integer_val\",\n \"named\": true\n },\n {\n \"type\": \"let\",\n \"named\": false\n },\n {\n \"type\": \"migrate\",\n \"named\": false\n },\n {\n \"type\": \"none_val\",\n \"named\": true\n },\n {\n \"type\": \"or\",\n \"named\": false\n },\n {\n \"type\": \"query\",\n \"named\": false\n },\n {\n \"type\": \"return\",\n \"named\": false\n },\n {\n \"type\": \"state\",\n \"named\": false\n },\n {\n \"type\": \"string_val\",\n \"named\": true\n },\n {\n \"type\": \"struct\",\n \"named\": false\n },\n {\n \"type\": \"true\",\n \"named\": false\n },\n {\n \"type\": \"type\",\n \"named\": false\n },\n {\n \"type\": \"type_name\",\n \"named\": true\n },\n {\n \"type\": \"u128\",\n \"named\": false\n },\n {\n \"type\": \"u16\",\n \"named\": false\n },\n {\n \"type\": \"u32\",\n \"named\": false\n },\n {\n \"type\": \"u64\",\n \"named\": false\n },\n {\n \"type\": \"u8\",\n \"named\": false\n },\n {\n \"type\": \"unit_val\",\n \"named\": true\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.