pub const NODE_TYPES: &str = "[\n  {\n    \"type\": \"_definition\",\n    \"named\": true,\n    \"subtypes\": [\n      {\n        \"type\": \"abstract_definition\",\n        \"named\": true\n      },\n      {\n        \"type\": \"function_definition\",\n        \"named\": true\n      },\n      {\n        \"type\": \"macro_definition\",\n        \"named\": true\n      },\n      {\n        \"type\": \"module_definition\",\n        \"named\": true\n      },\n      {\n        \"type\": \"primitive_definition\",\n        \"named\": true\n      },\n      {\n        \"type\": \"struct_definition\",\n        \"named\": true\n      }\n    ]\n  },\n  {\n    \"type\": \"_expression\",\n    \"named\": true,\n    \"subtypes\": [\n      {\n        \"type\": \"_definition\",\n        \"named\": true\n      },\n      {\n        \"type\": \"_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"adjoint_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"arrow_function_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"binary_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"boolean_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"broadcast_call_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"call_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"character_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"command_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"compound_assignment_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"comprehension_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"curly_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"field_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"float_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"identifier\",\n        \"named\": true\n      },\n      {\n        \"type\": \"index_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"integer_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"interpolation_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"juxtaposition_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"macrocall_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"matrix_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"operator\",\n        \"named\": true\n      },\n      {\n        \"type\": \"parametrized_type_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"parenthesized_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"prefixed_command_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"prefixed_string_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"quote_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"range_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"splat_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"string_literal\",\n        \"named\": true\n      },\n      {\n        \"type\": \"ternary_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"tuple_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"typed_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"unary_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"unary_typed_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"vector_expression\",\n        \"named\": true\n      },\n      {\n        \"type\": \"where_expression\",\n        \"named\": true\n      }\n    ]\n  },\n  {\n    \"type\": \"_statement\",\n    \"named\": true,\n    \"subtypes\": [\n      {\n        \"type\": \"break_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"compound_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"const_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"continue_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"export_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"for_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"global_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"if_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"import_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"let_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"local_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"public_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"quote_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"return_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"try_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"using_statement\",\n        \"named\": true\n      },\n      {\n        \"type\": \"while_statement\",\n        \"named\": true\n      }\n    ]\n  },\n  {\n    \"type\": \"abstract_definition\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"type_head\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"adjoint_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"argument_list\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"for_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"if_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"named_argument\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"arrow_function_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"argument_list\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"assignment\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"binary_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"block_comment\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"boolean_literal\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"broadcast_call_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"argument_list\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"do_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"call_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"argument_list\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"do_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"catch_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"command_literal\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"content\",\n          \"named\": true\n        },\n        {\n          \"type\": \"escape_sequence\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_interpolation\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"compound_assignment_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"compound_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"comprehension_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"for_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"if_clause\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"const_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"curly_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"do_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"argument_list\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"else_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"elseif_clause\",\n    \"named\": true,\n    \"fields\": {\n      \"condition\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"export_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macro_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"field_expression\",\n    \"named\": true,\n    \"fields\": {\n      \"value\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"adjoint_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"boolean_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"broadcast_call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"call_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"character_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"command_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"comprehension_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"curly_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"field_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"index_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"interpolation_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"macrocall_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"matrix_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parametrized_type_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"parenthesized_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"prefixed_command_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"prefixed_string_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"quote_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"string_literal\",\n            \"named\": true\n          },\n          {\n            \"type\": \"tuple_expression\",\n            \"named\": true\n          },\n          {\n            \"type\": \"vector_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"finally_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"float_literal\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"for_binding\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"for_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"for_binding\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"for_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"for_binding\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"function_definition\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        },\n        {\n          \"type\": \"signature\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"global_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"identifier\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"if_clause\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"if_statement\",\n    \"named\": true,\n    \"fields\": {\n      \"alternative\": {\n        \"multiple\": true,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"else_clause\",\n            \"named\": true\n          },\n          {\n            \"type\": \"elseif_clause\",\n            \"named\": true\n          }\n        ]\n      },\n      \"condition\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"import_alias\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"import_path\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macro_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_identifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"import_path\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_identifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"import_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"import_alias\",\n          \"named\": true\n        },\n        {\n          \"type\": \"import_path\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macro_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"selected_import\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"index_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"integer_literal\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"interpolation_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"float_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"integer_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"juxtaposition_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"float_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"integer_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"let_binding\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"let_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"let_binding\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"line_comment\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"local_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"macro_argument_list\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"macro_definition\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        },\n        {\n          \"type\": \"signature\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"macro_identifier\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_identifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"macrocall_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"argument_list\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"do_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macro_argument_list\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macro_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"matrix_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"matrix_row\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"matrix_row\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"module_definition\",\n    \"named\": true,\n    \"fields\": {\n      \"name\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"identifier\",\n            \"named\": true\n          },\n          {\n            \"type\": \"interpolation_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"named_argument\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"named_field\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"open_tuple\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"operator\",\n    \"named\": true,\n    \"fields\": {}\n  },\n  {\n    \"type\": \"parametrized_type_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"parenthesized_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"for_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"if_clause\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"prefixed_command_literal\",\n    \"named\": true,\n    \"fields\": {\n      \"prefix\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"identifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"suffix\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"identifier\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"content\",\n          \"named\": true\n        },\n        {\n          \"type\": \"escape_sequence\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"prefixed_string_literal\",\n    \"named\": true,\n    \"fields\": {\n      \"prefix\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"identifier\",\n            \"named\": true\n          }\n        ]\n      },\n      \"suffix\": {\n        \"multiple\": false,\n        \"required\": false,\n        \"types\": [\n          {\n            \"type\": \"identifier\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"content\",\n          \"named\": true\n        },\n        {\n          \"type\": \"escape_sequence\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"primitive_definition\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"integer_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"type_head\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"public_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macro_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"quote_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"float_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"integer_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"quote_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"range_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"return_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"scoped_identifier\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_identifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"selected_import\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"import_alias\",\n          \"named\": true\n        },\n        {\n          \"type\": \"import_path\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macro_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_identifier\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"signature\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"argument_list\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"typed_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"where_expression\",\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\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"splat_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"string_interpolation\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"string_literal\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"content\",\n          \"named\": true\n        },\n        {\n          \"type\": \"escape_sequence\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_interpolation\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"struct_definition\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        },\n        {\n          \"type\": \"type_head\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"ternary_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"try_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"catch_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"else_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"finally_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"tuple_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"for_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"if_clause\",\n          \"named\": true\n        },\n        {\n          \"type\": \"named_field\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"type_head\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"binary_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"typed_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"unary_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"unary_typed_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": false,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"adjoint_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"boolean_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"broadcast_call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"call_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"character_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"comprehension_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"curly_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"field_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"index_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macrocall_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"matrix_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parametrized_type_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"parenthesized_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_command_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"prefixed_string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"quote_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"string_literal\",\n          \"named\": true\n        },\n        {\n          \"type\": \"tuple_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"vector_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"using_statement\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"import_alias\",\n          \"named\": true\n        },\n        {\n          \"type\": \"import_path\",\n          \"named\": true\n        },\n        {\n          \"type\": \"interpolation_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"macro_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"operator\",\n          \"named\": true\n        },\n        {\n          \"type\": \"scoped_identifier\",\n          \"named\": true\n        },\n        {\n          \"type\": \"selected_import\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"vector_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"where_expression\",\n    \"named\": true,\n    \"fields\": {},\n    \"children\": {\n      \"multiple\": true,\n      \"required\": true,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"while_statement\",\n    \"named\": true,\n    \"fields\": {\n      \"condition\": {\n        \"multiple\": false,\n        \"required\": true,\n        \"types\": [\n          {\n            \"type\": \"_expression\",\n            \"named\": true\n          }\n        ]\n      }\n    },\n    \"children\": {\n      \"multiple\": true,\n      \"required\": false,\n      \"types\": [\n        {\n          \"type\": \"_expression\",\n          \"named\": true\n        },\n        {\n          \"type\": \"assignment\",\n          \"named\": true\n        },\n        {\n          \"type\": \"open_tuple\",\n          \"named\": true\n        }\n      ]\n    }\n  },\n  {\n    \"type\": \"\\\"\",\n    \"named\": false\n  },\n  {\n    \"type\": \"\\\"\\\"\\\"\",\n    \"named\": false\n  },\n  {\n    \"type\": \"$\",\n    \"named\": false\n  },\n  {\n    \"type\": \"$=\",\n    \"named\": false\n  },\n  {\n    \"type\": \"\'\",\n    \"named\": false\n  },\n  {\n    \"type\": \"(\",\n    \"named\": false\n  },\n  {\n    \"type\": \")\",\n    \"named\": false\n  },\n  {\n    \"type\": \",\",\n    \"named\": false\n  },\n  {\n    \"type\": \"->\",\n    \"named\": false\n  },\n  {\n    \"type\": \".\",\n    \"named\": false\n  },\n  {\n    \"type\": \"...\",\n    \"named\": false\n  },\n  {\n    \"type\": \".=\",\n    \"named\": false\n  },\n  {\n    \"type\": \":\",\n    \"named\": false\n  },\n  {\n    \"type\": \"::\",\n    \"named\": false\n  },\n  {\n    \"type\": \":=\",\n    \"named\": false\n  },\n  {\n    \"type\": \";\",\n    \"named\": false\n  },\n  {\n    \"type\": \"=\",\n    \"named\": false\n  },\n  {\n    \"type\": \"?\",\n    \"named\": false\n  },\n  {\n    \"type\": \"@\",\n    \"named\": false\n  },\n  {\n    \"type\": \"[\",\n    \"named\": false\n  },\n  {\n    \"type\": \"]\",\n    \"named\": false\n  },\n  {\n    \"type\": \"`\",\n    \"named\": false\n  },\n  {\n    \"type\": \"```\",\n    \"named\": false\n  },\n  {\n    \"type\": \"abstract\",\n    \"named\": false\n  },\n  {\n    \"type\": \"as\",\n    \"named\": false\n  },\n  {\n    \"type\": \"baremodule\",\n    \"named\": false\n  },\n  {\n    \"type\": \"begin\",\n    \"named\": false\n  },\n  {\n    \"type\": \"break_statement\",\n    \"named\": true\n  },\n  {\n    \"type\": \"catch\",\n    \"named\": false\n  },\n  {\n    \"type\": \"character_literal\",\n    \"named\": true\n  },\n  {\n    \"type\": \"const\",\n    \"named\": false\n  },\n  {\n    \"type\": \"content\",\n    \"named\": true\n  },\n  {\n    \"type\": \"continue_statement\",\n    \"named\": true\n  },\n  {\n    \"type\": \"do\",\n    \"named\": false\n  },\n  {\n    \"type\": \"else\",\n    \"named\": false\n  },\n  {\n    \"type\": \"elseif\",\n    \"named\": false\n  },\n  {\n    \"type\": \"end\",\n    \"named\": false\n  },\n  {\n    \"type\": \"escape_sequence\",\n    \"named\": true\n  },\n  {\n    \"type\": \"export\",\n    \"named\": false\n  },\n  {\n    \"type\": \"false\",\n    \"named\": false\n  },\n  {\n    \"type\": \"finally\",\n    \"named\": false\n  },\n  {\n    \"type\": \"for\",\n    \"named\": false\n  },\n  {\n    \"type\": \"function\",\n    \"named\": false\n  },\n  {\n    \"type\": \"global\",\n    \"named\": false\n  },\n  {\n    \"type\": \"if\",\n    \"named\": false\n  },\n  {\n    \"type\": \"import\",\n    \"named\": false\n  },\n  {\n    \"type\": \"let\",\n    \"named\": false\n  },\n  {\n    \"type\": \"local\",\n    \"named\": false\n  },\n  {\n    \"type\": \"macro\",\n    \"named\": false\n  },\n  {\n    \"type\": \"module\",\n    \"named\": false\n  },\n  {\n    \"type\": \"mutable\",\n    \"named\": false\n  },\n  {\n    \"type\": \"outer\",\n    \"named\": false\n  },\n  {\n    \"type\": \"primitive\",\n    \"named\": false\n  },\n  {\n    \"type\": \"public\",\n    \"named\": false\n  },\n  {\n    \"type\": \"quote\",\n    \"named\": false\n  },\n  {\n    \"type\": \"return\",\n    \"named\": false\n  },\n  {\n    \"type\": \"struct\",\n    \"named\": false\n  },\n  {\n    \"type\": \"true\",\n    \"named\": false\n  },\n  {\n    \"type\": \"try\",\n    \"named\": false\n  },\n  {\n    \"type\": \"type\",\n    \"named\": false\n  },\n  {\n    \"type\": \"using\",\n    \"named\": false\n  },\n  {\n    \"type\": \"where\",\n    \"named\": false\n  },\n  {\n    \"type\": \"while\",\n    \"named\": false\n  },\n  {\n    \"type\": \"{\",\n    \"named\": false\n  },\n  {\n    \"type\": \"}\",\n    \"named\": false\n  }\n]";
Expand description

The content of the node-types.json file for this grammar.