[
  {
    "type": "anonymous_array_expr",
    "named": true,
    "fields": {
      "values": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "array_values",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "anonymous_struct_enum",
    "named": true,
    "fields": {
      "field": {
        "multiple": true,
        "required": true,
        "types": [
          {
            "type": ",",
            "named": false
          },
          {
            "type": "field_init",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "arguments",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "array_expression",
    "named": true,
    "fields": {
      "size": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          }
        ]
      },
      "type": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          }
        ]
      },
      "values": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array_values",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "array_type",
    "named": true,
    "fields": {
      "size": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "pointer",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "type_prefix",
          "named": true
        }
      ]
    }
  },
  {
    "type": "array_values",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "assignment_expression",
    "named": true,
    "fields": {
      "left": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "right": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "assignment_operator",
    "named": true,
    "fields": {}
  },
  {
    "type": "assignment_statement",
    "named": true,
    "fields": {
      "expression": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "type": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "assignment_modifier",
          "named": true
        },
        {
          "type": "visibility_modifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "await_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "binary_expression",
    "named": true,
    "fields": {
      "left": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "operator": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "binary_operator",
            "named": true
          }
        ]
      },
      "right": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "block",
    "named": true,
    "fields": {
      "label": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "loop_label",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "assignment_statement",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "empty_statement",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "function_declaration",
          "named": true
        },
        {
          "type": "function_signature",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "boolean_literal",
    "named": true,
    "fields": {}
  },
  {
    "type": "break_expression",
    "named": true,
    "fields": {
      "label": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "loop_label_inverse",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "build_in_call_expr",
    "named": true,
    "fields": {
      "arguments": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "arguments",
            "named": true
          }
        ]
      },
      "function": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "call_expression",
    "named": true,
    "fields": {
      "arguments": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "arguments",
            "named": true
          }
        ]
      },
      "function": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "call_modifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "char_literal",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "escape_sequence",
          "named": true
        }
      ]
    }
  },
  {
    "type": "compound_assignment_expr",
    "named": true,
    "fields": {
      "left": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "operator": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "assignment_operator",
            "named": true
          }
        ]
      },
      "right": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "comptime_block",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "continue_expression",
    "named": true,
    "fields": {
      "label": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "loop_label_inverse",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "defer_block",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "defer_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "dereference_expression",
    "named": true,
    "fields": {
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "empty_statement",
    "named": true,
    "fields": {}
  },
  {
    "type": "enum_expression",
    "named": true,
    "fields": {
      "type": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          }
        ]
      },
      "variant": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": ",",
            "named": false
          },
          {
            "type": "variant_declaration",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "assignment_statement",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "empty_statement",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "enum_modifier",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "function_declaration",
          "named": true
        },
        {
          "type": "function_signature",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "enum_literal",
    "named": true,
    "fields": {
      "variant": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "enum_identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "error_expression",
    "named": true,
    "fields": {
      "error_variant": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": ",",
            "named": false
          },
          {
            "type": "error_identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "error_type",
    "named": true,
    "fields": {
      "err": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          }
        ]
      },
      "ok": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "extern_modifier",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "string_literal",
          "named": true
        }
      ]
    }
  },
  {
    "type": "field_declaration",
    "named": true,
    "fields": {
      "default": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "field_identifier",
            "named": true
          }
        ]
      },
      "type": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "inference_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "visibility_modifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "field_expression",
    "named": true,
    "fields": {
      "field": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "field_identifier",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "field_init",
    "named": true,
    "fields": {
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "field_identifier",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "field_pattern",
    "named": true,
    "fields": {
      "field": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "field_identifier",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "for_expression",
    "named": true,
    "fields": {
      "alternative": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "block",
            "named": true
          }
        ]
      },
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "loop_label",
          "named": true
        },
        {
          "type": "loop_modifier",
          "named": true
        },
        {
          "type": "payload",
          "named": true
        }
      ]
    }
  },
  {
    "type": "function_declaration",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "block",
            "named": true
          }
        ]
      },
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "parameters": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "parameters",
            "named": true
          }
        ]
      },
      "return": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "function_modifiers",
          "named": true
        },
        {
          "type": "visibility_modifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "function_modifiers",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "extern_modifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "function_signature",
    "named": true,
    "fields": {
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "parameters": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "parameters",
            "named": true
          }
        ]
      },
      "return": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "function_modifiers",
          "named": true
        },
        {
          "type": "visibility_modifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "if_expression",
    "named": true,
    "fields": {
      "alternative": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "consequence": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "payload",
          "named": true
        }
      ]
    }
  },
  {
    "type": "index_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "slice_pattern",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "loop_label",
    "named": true,
    "fields": {
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "label_identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "loop_label_inverse",
    "named": true,
    "fields": {
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "label_identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "multiline_string_literal",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "escape_sequence",
          "named": true
        }
      ]
    }
  },
  {
    "type": "null_literal",
    "named": true,
    "fields": {}
  },
  {
    "type": "optional_type",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "orelse_postfix_expression",
    "named": true,
    "fields": {
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "parameter",
    "named": true,
    "fields": {
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "identifier",
            "named": true
          }
        ]
      },
      "type": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "inference_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "variadic_parameter",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "parameters",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "parameter",
          "named": true
        }
      ]
    }
  },
  {
    "type": "payload",
    "named": true,
    "fields": {
      "values": {
        "multiple": true,
        "required": true,
        "types": [
          {
            "type": ",",
            "named": false
          },
          {
            "type": "payload_identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "payload_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "pointer_type",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "type_prefix",
          "named": true
        }
      ]
    }
  },
  {
    "type": "primitive_type",
    "named": true,
    "fields": {}
  },
  {
    "type": "range_pattern",
    "named": true,
    "fields": {
      "end": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "start": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "reference_expression",
    "named": true,
    "fields": {
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "resume_block",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "resume_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "return_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "slice_pattern",
    "named": true,
    "fields": {
      "end": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "start": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "source_file",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "assignment_statement",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "empty_statement",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "function_declaration",
          "named": true
        },
        {
          "type": "function_signature",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "string_literal",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "escape_sequence",
          "named": true
        }
      ]
    }
  },
  {
    "type": "struct_construction",
    "named": true,
    "fields": {
      "field": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": ",",
            "named": false
          },
          {
            "type": "field_init",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "type_identifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "struct_expression",
    "named": true,
    "fields": {
      "field": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": ",",
            "named": false
          },
          {
            "type": "field_declaration",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "assignment_statement",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "empty_statement",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "function_declaration",
          "named": true
        },
        {
          "type": "function_signature",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "struct_modifier",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "suspend_block",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": true,
      "types": [
        {
          "type": "block",
          "named": true
        }
      ]
    }
  },
  {
    "type": "suspend_expression",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_arm",
    "named": true,
    "fields": {
      "pattern": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "switch_pattern",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "switch_block",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "switch_arm",
          "named": true
        },
        {
          "type": "switch_last_arm",
          "named": true
        }
      ]
    }
  },
  {
    "type": "switch_expression",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "switch_block",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "switch_last_arm",
    "named": true,
    "fields": {
      "pattern": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "else_switch",
            "named": true
          },
          {
            "type": "switch_pattern",
            "named": true
          }
        ]
      },
      "value": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "switch_pattern",
    "named": true,
    "fields": {},
    "children": {
      "multiple": true,
      "required": true,
      "types": [
        {
          "type": "field_pattern",
          "named": true
        },
        {
          "type": "literal_pattern",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "slice_pattern",
          "named": true
        }
      ]
    }
  },
  {
    "type": "test_expression",
    "named": true,
    "fields": {
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "block",
            "named": true
          }
        ]
      },
      "test_name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "string_literal",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "try_expression",
    "named": true,
    "fields": {
      "expression": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "type_prefix",
    "named": true,
    "fields": {},
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "unary_expression",
    "named": true,
    "fields": {
      "expression": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "operator": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "unary_operator",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "unary_operator",
    "named": true,
    "fields": {}
  },
  {
    "type": "union_expression",
    "named": true,
    "fields": {
      "field_variant": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": ",",
            "named": false
          },
          {
            "type": "union_field_variant",
            "named": true
          }
        ]
      },
      "type": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "inference_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "anonymous_array_expr",
          "named": true
        },
        {
          "type": "anonymous_struct_enum",
          "named": true
        },
        {
          "type": "array_expression",
          "named": true
        },
        {
          "type": "array_type",
          "named": true
        },
        {
          "type": "assignment_expression",
          "named": true
        },
        {
          "type": "assignment_statement",
          "named": true
        },
        {
          "type": "await_expression",
          "named": true
        },
        {
          "type": "binary_expression",
          "named": true
        },
        {
          "type": "block",
          "named": true
        },
        {
          "type": "boolean_literal",
          "named": true
        },
        {
          "type": "break_expression",
          "named": true
        },
        {
          "type": "build_in_call_expr",
          "named": true
        },
        {
          "type": "call_expression",
          "named": true
        },
        {
          "type": "char_literal",
          "named": true
        },
        {
          "type": "compound_assignment_expr",
          "named": true
        },
        {
          "type": "comptime_block",
          "named": true
        },
        {
          "type": "continue_expression",
          "named": true
        },
        {
          "type": "custom_number_type",
          "named": true
        },
        {
          "type": "defer_block",
          "named": true
        },
        {
          "type": "defer_expression",
          "named": true
        },
        {
          "type": "dereference_expression",
          "named": true
        },
        {
          "type": "empty_statement",
          "named": true
        },
        {
          "type": "enum_expression",
          "named": true
        },
        {
          "type": "enum_literal",
          "named": true
        },
        {
          "type": "error_expression",
          "named": true
        },
        {
          "type": "error_type",
          "named": true
        },
        {
          "type": "field_expression",
          "named": true
        },
        {
          "type": "float_literal",
          "named": true
        },
        {
          "type": "for_expression",
          "named": true
        },
        {
          "type": "function_declaration",
          "named": true
        },
        {
          "type": "function_signature",
          "named": true
        },
        {
          "type": "identifier",
          "named": true
        },
        {
          "type": "if_expression",
          "named": true
        },
        {
          "type": "index_expression",
          "named": true
        },
        {
          "type": "integer_literal",
          "named": true
        },
        {
          "type": "multiline_string_literal",
          "named": true
        },
        {
          "type": "null_literal",
          "named": true
        },
        {
          "type": "optional_type",
          "named": true
        },
        {
          "type": "orelse_postfix_expression",
          "named": true
        },
        {
          "type": "payload_expression",
          "named": true
        },
        {
          "type": "pointer_type",
          "named": true
        },
        {
          "type": "primitive_type",
          "named": true
        },
        {
          "type": "range_pattern",
          "named": true
        },
        {
          "type": "reference_expression",
          "named": true
        },
        {
          "type": "resume_block",
          "named": true
        },
        {
          "type": "resume_expression",
          "named": true
        },
        {
          "type": "return_expression",
          "named": true
        },
        {
          "type": "string_literal",
          "named": true
        },
        {
          "type": "struct_construction",
          "named": true
        },
        {
          "type": "struct_expression",
          "named": true
        },
        {
          "type": "suspend_block",
          "named": true
        },
        {
          "type": "suspend_expression",
          "named": true
        },
        {
          "type": "switch_expression",
          "named": true
        },
        {
          "type": "test_expression",
          "named": true
        },
        {
          "type": "try_expression",
          "named": true
        },
        {
          "type": "type_identifier",
          "named": true
        },
        {
          "type": "unary_expression",
          "named": true
        },
        {
          "type": "undefined_literal",
          "named": true
        },
        {
          "type": "union_expression",
          "named": true
        },
        {
          "type": "union_modifier",
          "named": true
        },
        {
          "type": "unreachable_expression",
          "named": true
        },
        {
          "type": "usingnamespace_expression",
          "named": true
        },
        {
          "type": "while_expression",
          "named": true
        }
      ]
    }
  },
  {
    "type": "union_field_variant",
    "named": true,
    "fields": {
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "union_identifier",
            "named": true
          }
        ]
      },
      "type": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "inference_type",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "usingnamespace_expression",
    "named": true,
    "fields": {
      "import": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      }
    },
    "children": {
      "multiple": false,
      "required": false,
      "types": [
        {
          "type": "visibility_modifier",
          "named": true
        }
      ]
    }
  },
  {
    "type": "variadic_parameter",
    "named": true,
    "fields": {}
  },
  {
    "type": "variant_declaration",
    "named": true,
    "fields": {
      "default": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "name": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "enum_identifier",
            "named": true
          }
        ]
      }
    }
  },
  {
    "type": "visibility_modifier",
    "named": true,
    "fields": {}
  },
  {
    "type": "while_expression",
    "named": true,
    "fields": {
      "alternative": {
        "multiple": false,
        "required": false,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "body": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "block",
            "named": true
          }
        ]
      },
      "condition": {
        "multiple": false,
        "required": true,
        "types": [
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          }
        ]
      },
      "continue": {
        "multiple": true,
        "required": false,
        "types": [
          {
            "type": ";",
            "named": false
          },
          {
            "type": "anonymous_array_expr",
            "named": true
          },
          {
            "type": "anonymous_struct_enum",
            "named": true
          },
          {
            "type": "array_expression",
            "named": true
          },
          {
            "type": "array_type",
            "named": true
          },
          {
            "type": "assignment_expression",
            "named": true
          },
          {
            "type": "await_expression",
            "named": true
          },
          {
            "type": "binary_expression",
            "named": true
          },
          {
            "type": "block",
            "named": true
          },
          {
            "type": "boolean_literal",
            "named": true
          },
          {
            "type": "break_expression",
            "named": true
          },
          {
            "type": "build_in_call_expr",
            "named": true
          },
          {
            "type": "call_expression",
            "named": true
          },
          {
            "type": "char_literal",
            "named": true
          },
          {
            "type": "compound_assignment_expr",
            "named": true
          },
          {
            "type": "comptime_block",
            "named": true
          },
          {
            "type": "continue_expression",
            "named": true
          },
          {
            "type": "custom_number_type",
            "named": true
          },
          {
            "type": "defer_block",
            "named": true
          },
          {
            "type": "defer_expression",
            "named": true
          },
          {
            "type": "dereference_expression",
            "named": true
          },
          {
            "type": "enum_expression",
            "named": true
          },
          {
            "type": "enum_literal",
            "named": true
          },
          {
            "type": "error_expression",
            "named": true
          },
          {
            "type": "error_type",
            "named": true
          },
          {
            "type": "field_expression",
            "named": true
          },
          {
            "type": "float_literal",
            "named": true
          },
          {
            "type": "for_expression",
            "named": true
          },
          {
            "type": "identifier",
            "named": true
          },
          {
            "type": "if_expression",
            "named": true
          },
          {
            "type": "index_expression",
            "named": true
          },
          {
            "type": "integer_literal",
            "named": true
          },
          {
            "type": "multiline_string_literal",
            "named": true
          },
          {
            "type": "null_literal",
            "named": true
          },
          {
            "type": "optional_type",
            "named": true
          },
          {
            "type": "orelse_postfix_expression",
            "named": true
          },
          {
            "type": "payload_expression",
            "named": true
          },
          {
            "type": "pointer_type",
            "named": true
          },
          {
            "type": "primitive_type",
            "named": true
          },
          {
            "type": "range_pattern",
            "named": true
          },
          {
            "type": "reference_expression",
            "named": true
          },
          {
            "type": "resume_block",
            "named": true
          },
          {
            "type": "resume_expression",
            "named": true
          },
          {
            "type": "return_expression",
            "named": true
          },
          {
            "type": "string_literal",
            "named": true
          },
          {
            "type": "struct_construction",
            "named": true
          },
          {
            "type": "struct_expression",
            "named": true
          },
          {
            "type": "suspend_block",
            "named": true
          },
          {
            "type": "suspend_expression",
            "named": true
          },
          {
            "type": "switch_expression",
            "named": true
          },
          {
            "type": "test_expression",
            "named": true
          },
          {
            "type": "try_expression",
            "named": true
          },
          {
            "type": "type_identifier",
            "named": true
          },
          {
            "type": "unary_expression",
            "named": true
          },
          {
            "type": "undefined_literal",
            "named": true
          },
          {
            "type": "union_expression",
            "named": true
          },
          {
            "type": "unreachable_expression",
            "named": true
          },
          {
            "type": "usingnamespace_expression",
            "named": true
          },
          {
            "type": "while_expression",
            "named": true
          },
          {
            "type": "{",
            "named": false
          },
          {
            "type": "}",
            "named": false
          }
        ]
      }
    },
    "children": {
      "multiple": true,
      "required": false,
      "types": [
        {
          "type": "loop_label",
          "named": true
        },
        {
          "type": "loop_modifier",
          "named": true
        },
        {
          "type": "payload",
          "named": true
        }
      ]
    }
  },
  {
    "type": "!",
    "named": false
  },
  {
    "type": "\"",
    "named": false
  },
  {
    "type": "%=",
    "named": false
  },
  {
    "type": "&",
    "named": false
  },
  {
    "type": "&=",
    "named": false
  },
  {
    "type": "'",
    "named": false
  },
  {
    "type": "(",
    "named": false
  },
  {
    "type": ")",
    "named": false
  },
  {
    "type": "*",
    "named": false
  },
  {
    "type": "*%=",
    "named": false
  },
  {
    "type": "*=",
    "named": false
  },
  {
    "type": "+%=",
    "named": false
  },
  {
    "type": "+=",
    "named": false
  },
  {
    "type": ",",
    "named": false
  },
  {
    "type": "-",
    "named": false
  },
  {
    "type": "-%",
    "named": false
  },
  {
    "type": "-%=",
    "named": false
  },
  {
    "type": "-=",
    "named": false
  },
  {
    "type": ".",
    "named": false
  },
  {
    "type": ".*",
    "named": false
  },
  {
    "type": "..",
    "named": false
  },
  {
    "type": "...",
    "named": false
  },
  {
    "type": ".?",
    "named": false
  },
  {
    "type": ".{",
    "named": false
  },
  {
    "type": "/=",
    "named": false
  },
  {
    "type": ":",
    "named": false
  },
  {
    "type": ";",
    "named": false
  },
  {
    "type": "<<=",
    "named": false
  },
  {
    "type": "=",
    "named": false
  },
  {
    "type": "=>",
    "named": false
  },
  {
    "type": ">>=",
    "named": false
  },
  {
    "type": "?",
    "named": false
  },
  {
    "type": "@",
    "named": false
  },
  {
    "type": "[",
    "named": false
  },
  {
    "type": "\\\\",
    "named": false
  },
  {
    "type": "]",
    "named": false
  },
  {
    "type": "^=",
    "named": false
  },
  {
    "type": "align",
    "named": false
  },
  {
    "type": "allowzero",
    "named": false
  },
  {
    "type": "anyerror",
    "named": false
  },
  {
    "type": "assignment_modifier",
    "named": true
  },
  {
    "type": "await",
    "named": false
  },
  {
    "type": "binary_operator",
    "named": true
  },
  {
    "type": "bool",
    "named": false
  },
  {
    "type": "break",
    "named": false
  },
  {
    "type": "c\"",
    "named": false
  },
  {
    "type": "c\\\\",
    "named": false
  },
  {
    "type": "c_int",
    "named": false
  },
  {
    "type": "c_long",
    "named": false
  },
  {
    "type": "c_longdouble",
    "named": false
  },
  {
    "type": "c_longlong",
    "named": false
  },
  {
    "type": "c_short",
    "named": false
  },
  {
    "type": "c_uint",
    "named": false
  },
  {
    "type": "c_ulong",
    "named": false
  },
  {
    "type": "c_ulonglong",
    "named": false
  },
  {
    "type": "c_ushort",
    "named": false
  },
  {
    "type": "c_void",
    "named": false
  },
  {
    "type": "call_modifier",
    "named": true
  },
  {
    "type": "comptime",
    "named": false
  },
  {
    "type": "comptime_float",
    "named": false
  },
  {
    "type": "comptime_int",
    "named": false
  },
  {
    "type": "const",
    "named": false
  },
  {
    "type": "continue",
    "named": false
  },
  {
    "type": "custom_number_type",
    "named": true
  },
  {
    "type": "defer",
    "named": false
  },
  {
    "type": "else",
    "named": false
  },
  {
    "type": "else_switch",
    "named": true
  },
  {
    "type": "enum",
    "named": false
  },
  {
    "type": "enum_identifier",
    "named": true
  },
  {
    "type": "enum_modifier",
    "named": true
  },
  {
    "type": "errdefer",
    "named": false
  },
  {
    "type": "error",
    "named": false
  },
  {
    "type": "error_identifier",
    "named": true
  },
  {
    "type": "escape_sequence",
    "named": true
  },
  {
    "type": "export",
    "named": false
  },
  {
    "type": "extern",
    "named": false
  },
  {
    "type": "f128",
    "named": false
  },
  {
    "type": "f16",
    "named": false
  },
  {
    "type": "f32",
    "named": false
  },
  {
    "type": "f64",
    "named": false
  },
  {
    "type": "false",
    "named": false
  },
  {
    "type": "field_identifier",
    "named": true
  },
  {
    "type": "float_literal",
    "named": true
  },
  {
    "type": "fn",
    "named": false
  },
  {
    "type": "for",
    "named": false
  },
  {
    "type": "i128",
    "named": false
  },
  {
    "type": "i16",
    "named": false
  },
  {
    "type": "i32",
    "named": false
  },
  {
    "type": "i64",
    "named": false
  },
  {
    "type": "i8",
    "named": false
  },
  {
    "type": "identifier",
    "named": true
  },
  {
    "type": "if",
    "named": false
  },
  {
    "type": "inference_type",
    "named": true
  },
  {
    "type": "inline",
    "named": false
  },
  {
    "type": "integer_literal",
    "named": true
  },
  {
    "type": "isize",
    "named": false
  },
  {
    "type": "label_identifier",
    "named": true
  },
  {
    "type": "loop_modifier",
    "named": true
  },
  {
    "type": "nakedcc",
    "named": false
  },
  {
    "type": "noreturn",
    "named": false
  },
  {
    "type": "null",
    "named": false
  },
  {
    "type": "payload_identifier",
    "named": true
  },
  {
    "type": "pointer",
    "named": true
  },
  {
    "type": "promise",
    "named": false
  },
  {
    "type": "pub",
    "named": false
  },
  {
    "type": "resume",
    "named": false
  },
  {
    "type": "return",
    "named": false
  },
  {
    "type": "stdcallcc",
    "named": false
  },
  {
    "type": "struct",
    "named": false
  },
  {
    "type": "struct_modifier",
    "named": true
  },
  {
    "type": "suspend",
    "named": false
  },
  {
    "type": "switch",
    "named": false
  },
  {
    "type": "test",
    "named": false
  },
  {
    "type": "true",
    "named": false
  },
  {
    "type": "try",
    "named": false
  },
  {
    "type": "type",
    "named": false
  },
  {
    "type": "type_identifier",
    "named": true
  },
  {
    "type": "u128",
    "named": false
  },
  {
    "type": "u16",
    "named": false
  },
  {
    "type": "u32",
    "named": false
  },
  {
    "type": "u64",
    "named": false
  },
  {
    "type": "u8",
    "named": false
  },
  {
    "type": "undefined_literal",
    "named": true
  },
  {
    "type": "union",
    "named": false
  },
  {
    "type": "union_identifier",
    "named": true
  },
  {
    "type": "union_modifier",
    "named": true
  },
  {
    "type": "unreachable_expression",
    "named": true
  },
  {
    "type": "usingnamespace",
    "named": false
  },
  {
    "type": "usize",
    "named": false
  },
  {
    "type": "var",
    "named": false
  },
  {
    "type": "void",
    "named": false
  },
  {
    "type": "volatile",
    "named": false
  },
  {
    "type": "while",
    "named": false
  },
  {
    "type": "{",
    "named": false
  },
  {
    "type": "|",
    "named": false
  },
  {
    "type": "|=",
    "named": false
  },
  {
    "type": "}",
    "named": false
  },
  {
    "type": "~",
    "named": false
  }
]