[ { "type": "_abstract_declarator", "named": true, "subtypes": [ { "type": "abstract_array_declarator", "named": true }, { "type": "abstract_function_declarator", "named": true }, { "type": "abstract_parenthesized_declarator", "named": true }, { "type": "abstract_pointer_declarator", "named": true }, { "type": "abstract_reference_declarator", "named": true } ] }, { "type": "_declarator", "named": true, "subtypes": [ { "type": "array_declarator", "named": true }, { "type": "attributed_declarator", "named": true }, { "type": "destructor_name", "named": true }, { "type": "function_declarator", "named": true }, { "type": "identifier", "named": true }, { "type": "operator_name", "named": true }, { "type": "parenthesized_declarator", "named": true }, { "type": "pointer_declarator", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "reference_declarator", "named": true }, { "type": "structured_binding_declarator", "named": true }, { "type": "template_function", "named": true } ] }, { "type": "_field_declarator", "named": true, "subtypes": [ { "type": "array_declarator", "named": true }, { "type": "attributed_declarator", "named": true }, { "type": "field_identifier", "named": true }, { "type": "function_declarator", "named": true }, { "type": "operator_name", "named": true }, { "type": "parenthesized_declarator", "named": true }, { "type": "pointer_declarator", "named": true }, { "type": "reference_declarator", "named": true }, { "type": "template_method", "named": true } ] }, { "type": "_type_declarator", "named": true, "subtypes": [ { "type": "array_declarator", "named": true }, { "type": "attributed_declarator", "named": true }, { "type": "function_declarator", "named": true }, { "type": "parenthesized_declarator", "named": true }, { "type": "pointer_declarator", "named": true }, { "type": "primitive_type", "named": true }, { "type": "reference_declarator", "named": true }, { "type": "type_identifier", "named": true } ] }, { "type": "expression", "named": true, "subtypes": [ { "type": "alignof_expression", "named": true }, { "type": "assignment_expression", "named": true }, { "type": "binary_expression", "named": true }, { "type": "call_expression", "named": true }, { "type": "cast_expression", "named": true }, { "type": "char_literal", "named": true }, { "type": "co_await_expression", "named": true }, { "type": "compound_literal_expression", "named": true }, { "type": "concatenated_string", "named": true }, { "type": "conditional_expression", "named": true }, { "type": "delete_expression", "named": true }, { "type": "false", "named": true }, { "type": "field_expression", "named": true }, { "type": "fold_expression", "named": true }, { "type": "generic_expression", "named": true }, { "type": "gnu_asm_expression", "named": true }, { "type": "identifier", "named": true }, { "type": "lambda_expression", "named": true }, { "type": "new_expression", "named": true }, { "type": "null", "named": true }, { "type": "number_literal", "named": true }, { "type": "offsetof_expression", "named": true }, { "type": "parameter_pack_expansion", "named": true }, { "type": "parenthesized_expression", "named": true }, { "type": "pointer_expression", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "raw_string_literal", "named": true }, { "type": "requires_clause", "named": true }, { "type": "requires_expression", "named": true }, { "type": "sizeof_expression", "named": true }, { "type": "string_literal", "named": true }, { "type": "subscript_expression", "named": true }, { "type": "template_function", "named": true }, { "type": "this", "named": true }, { "type": "true", "named": true }, { "type": "unary_expression", "named": true }, { "type": "update_expression", "named": true }, { "type": "user_defined_literal", "named": true } ] }, { "type": "statement", "named": true, "subtypes": [ { "type": "attributed_statement", "named": true }, { "type": "break_statement", "named": true }, { "type": "case_statement", "named": true }, { "type": "co_return_statement", "named": true }, { "type": "co_yield_statement", "named": true }, { "type": "compound_statement", "named": true }, { "type": "continue_statement", "named": true }, { "type": "do_statement", "named": true }, { "type": "expression_statement", "named": true }, { "type": "for_range_loop", "named": true }, { "type": "for_statement", "named": true }, { "type": "goto_statement", "named": true }, { "type": "if_statement", "named": true }, { "type": "labeled_statement", "named": true }, { "type": "return_statement", "named": true }, { "type": "seh_leave_statement", "named": true }, { "type": "seh_try_statement", "named": true }, { "type": "switch_statement", "named": true }, { "type": "throw_statement", "named": true }, { "type": "try_statement", "named": true }, { "type": "while_statement", "named": true } ] }, { "type": "type_specifier", "named": true, "subtypes": [ { "type": "class_specifier", "named": true }, { "type": "decltype", "named": true }, { "type": "dependent_type", "named": true }, { "type": "enum_specifier", "named": true }, { "type": "placeholder_type_specifier", "named": true }, { "type": "primitive_type", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "sized_type_specifier", "named": true }, { "type": "struct_specifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true }, { "type": "union_specifier", "named": true } ] }, { "type": "abstract_array_declarator", "named": true, "fields": { "declarator": { "multiple": false, "required": false, "types": [ { "type": "_abstract_declarator", "named": true } ] }, "size": { "multiple": false, "required": false, "types": [ { "type": "*", "named": false }, { "type": "expression", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "type_qualifier", "named": true } ] } }, { "type": "abstract_function_declarator", "named": true, "fields": { "declarator": { "multiple": false, "required": false, "types": [ { "type": "_abstract_declarator", "named": true } ] }, "parameters": { "multiple": false, "required": true, "types": [ { "type": "parameter_list", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "gnu_asm_expression", "named": true }, { "type": "noexcept", "named": true }, { "type": "ref_qualifier", "named": true }, { "type": "requires_clause", "named": true }, { "type": "throw_specifier", "named": true }, { "type": "trailing_return_type", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual_specifier", "named": true } ] } }, { "type": "abstract_parenthesized_declarator", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_abstract_declarator", "named": true }, { "type": "ms_call_modifier", "named": true } ] } }, { "type": "abstract_pointer_declarator", "named": true, "fields": { "declarator": { "multiple": false, "required": false, "types": [ { "type": "_abstract_declarator", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "ms_pointer_modifier", "named": true }, { "type": "type_qualifier", "named": true } ] } }, { "type": "abstract_reference_declarator", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "_abstract_declarator", "named": true } ] } }, { "type": "access_specifier", "named": true, "fields": {} }, { "type": "alias_declaration", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "type_identifier", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_descriptor", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true } ] } }, { "type": "alignas_qualifier", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "type_descriptor", "named": true } ] } }, { "type": "alignof_expression", "named": true, "fields": { "type": { "multiple": false, "required": true, "types": [ { "type": "type_descriptor", "named": true } ] } } }, { "type": "argument_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "compound_statement", "named": true }, { "type": "expression", "named": true }, { "type": "initializer_list", "named": true }, { "type": "preproc_defined", "named": true } ] } }, { "type": "array_declarator", "named": true, "fields": { "declarator": { "multiple": false, "required": true, "types": [ { "type": "_declarator", "named": true }, { "type": "_field_declarator", "named": true }, { "type": "_type_declarator", "named": true } ] }, "size": { "multiple": false, "required": false, "types": [ { "type": "*", "named": false }, { "type": "expression", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "type_qualifier", "named": true } ] } }, { "type": "assignment_expression", "named": true, "fields": { "left": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "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": "and_eq", "named": false }, { "type": "or_eq", "named": false }, { "type": "xor_eq", "named": false }, { "type": "|=", "named": false } ] }, "right": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "initializer_list", "named": true } ] } } }, { "type": "attribute", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "prefix": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "argument_list", "named": true } ] } }, { "type": "attribute_declaration", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "attribute", "named": true } ] } }, { "type": "attribute_specifier", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "argument_list", "named": true } ] } }, { "type": "attributed_declarator", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_declarator", "named": true }, { "type": "_field_declarator", "named": true }, { "type": "_type_declarator", "named": true }, { "type": "attribute_declaration", "named": true } ] } }, { "type": "attributed_statement", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "statement", "named": true } ] } }, { "type": "base_class_clause", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "access_specifier", "named": true }, { "type": "attribute_declaration", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "binary_expression", "named": true, "fields": { "left": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "preproc_defined", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "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": "and", "named": false }, { "type": "bitand", "named": false }, { "type": "bitor", "named": false }, { "type": "not_eq", "named": false }, { "type": "or", "named": false }, { "type": "xor", "named": false }, { "type": "|", "named": false }, { "type": "||", "named": false } ] }, "right": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "preproc_defined", "named": true } ] } } }, { "type": "bitfield_clause", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "break_statement", "named": true, "fields": {} }, { "type": "call_expression", "named": true, "fields": { "arguments": { "multiple": false, "required": true, "types": [ { "type": "argument_list", "named": true } ] }, "function": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "primitive_type", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "kernel_call_syntax", "named": true } ] } }, { "type": "case_statement", "named": true, "fields": { "value": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attributed_statement", "named": true }, { "type": "break_statement", "named": true }, { "type": "co_return_statement", "named": true }, { "type": "co_yield_statement", "named": true }, { "type": "compound_statement", "named": true }, { "type": "continue_statement", "named": true }, { "type": "declaration", "named": true }, { "type": "do_statement", "named": true }, { "type": "expression_statement", "named": true }, { "type": "for_range_loop", "named": true }, { "type": "for_statement", "named": true }, { "type": "goto_statement", "named": true }, { "type": "if_statement", "named": true }, { "type": "labeled_statement", "named": true }, { "type": "return_statement", "named": true }, { "type": "seh_leave_statement", "named": true }, { "type": "seh_try_statement", "named": true }, { "type": "switch_statement", "named": true }, { "type": "throw_statement", "named": true }, { "type": "try_statement", "named": true }, { "type": "type_definition", "named": true }, { "type": "while_statement", "named": true } ] } }, { "type": "cast_expression", "named": true, "fields": { "type": { "multiple": false, "required": true, "types": [ { "type": "type_descriptor", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "catch_clause", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "compound_statement", "named": true } ] }, "parameters": { "multiple": false, "required": true, "types": [ { "type": "parameter_list", "named": true } ] } } }, { "type": "char_literal", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "character", "named": true }, { "type": "escape_sequence", "named": true } ] } }, { "type": "class_specifier", "named": true, "fields": { "body": { "multiple": false, "required": false, "types": [ { "type": "field_declaration_list", "named": true } ] }, "name": { "multiple": false, "required": false, "types": [ { "type": "qualified_identifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "alignas_qualifier", "named": true }, { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "base_class_clause", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "virtual_specifier", "named": true } ] } }, { "type": "co_await_expression", "named": true, "fields": { "argument": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "co_await", "named": false } ] } } }, { "type": "co_return_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } }, { "type": "co_yield_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "comma_expression", "named": true, "fields": { "left": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "right": { "multiple": false, "required": true, "types": [ { "type": "comma_expression", "named": true }, { "type": "expression", "named": true } ] } } }, { "type": "compound_literal_expression", "named": true, "fields": { "type": { "multiple": false, "required": true, "types": [ { "type": "primitive_type", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_descriptor", "named": true }, { "type": "type_identifier", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "initializer_list", "named": true } ] } } }, { "type": "compound_requirement", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "trailing_return_type", "named": true } ] } }, { "type": "compound_statement", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "alias_declaration", "named": true }, { "type": "concept_definition", "named": true }, { "type": "declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "linkage_specification", "named": true }, { "type": "namespace_alias_definition", "named": true }, { "type": "namespace_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "preproc_include", "named": true }, { "type": "statement", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "template_declaration", "named": true }, { "type": "template_instantiation", "named": true }, { "type": "type_definition", "named": true }, { "type": "type_specifier", "named": true }, { "type": "using_declaration", "named": true } ] } }, { "type": "concatenated_string", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "raw_string_literal", "named": true }, { "type": "string_literal", "named": true } ] } }, { "type": "concept_definition", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "condition_clause", "named": true, "fields": { "initializer": { "multiple": false, "required": false, "types": [ { "type": "init_statement", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "comma_expression", "named": true }, { "type": "declaration", "named": true }, { "type": "expression", "named": true } ] } } }, { "type": "conditional_expression", "named": true, "fields": { "alternative": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "condition": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "consequence": { "multiple": false, "required": false, "types": [ { "type": "comma_expression", "named": true }, { "type": "expression", "named": true } ] } } }, { "type": "constraint_conjunction", "named": true, "fields": { "left": { "multiple": true, "required": true, "types": [ { "type": "(", "named": false }, { "type": ")", "named": false }, { "type": "constraint_conjunction", "named": true }, { "type": "constraint_disjunction", "named": true }, { "type": "expression", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "&&", "named": false }, { "type": "and", "named": false } ] }, "right": { "multiple": true, "required": true, "types": [ { "type": "(", "named": false }, { "type": ")", "named": false }, { "type": "constraint_conjunction", "named": true }, { "type": "constraint_disjunction", "named": true }, { "type": "expression", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } } }, { "type": "constraint_disjunction", "named": true, "fields": { "left": { "multiple": true, "required": true, "types": [ { "type": "(", "named": false }, { "type": ")", "named": false }, { "type": "constraint_conjunction", "named": true }, { "type": "constraint_disjunction", "named": true }, { "type": "expression", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "or", "named": false }, { "type": "||", "named": false } ] }, "right": { "multiple": true, "required": true, "types": [ { "type": "(", "named": false }, { "type": ")", "named": false }, { "type": "constraint_conjunction", "named": true }, { "type": "constraint_disjunction", "named": true }, { "type": "expression", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } } }, { "type": "continue_statement", "named": true, "fields": {} }, { "type": "declaration", "named": true, "fields": { "declarator": { "multiple": true, "required": true, "types": [ { "type": "_declarator", "named": true }, { "type": "gnu_asm_expression", "named": true }, { "type": "init_declarator", "named": true }, { "type": "operator_cast", "named": true } ] }, "default_value": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] }, "type": { "multiple": false, "required": false, "types": [ { "type": "type_specifier", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true }, { "type": "initializer_list", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "explicit_function_specifier", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "declaration_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "alias_declaration", "named": true }, { "type": "concept_definition", "named": true }, { "type": "declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "linkage_specification", "named": true }, { "type": "namespace_alias_definition", "named": true }, { "type": "namespace_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "preproc_include", "named": true }, { "type": "statement", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "template_declaration", "named": true }, { "type": "template_instantiation", "named": true }, { "type": "type_definition", "named": true }, { "type": "type_specifier", "named": true }, { "type": "using_declaration", "named": true } ] } }, { "type": "decltype", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "auto", "named": true }, { "type": "expression", "named": true } ] } }, { "type": "default_method_clause", "named": true, "fields": {} }, { "type": "delete_expression", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "delete_method_clause", "named": true, "fields": {} }, { "type": "dependent_name", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "template_function", "named": true }, { "type": "template_method", "named": true }, { "type": "template_type", "named": true } ] } }, { "type": "dependent_type", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, { "type": "destructor_name", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "do_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] }, "condition": { "multiple": false, "required": true, "types": [ { "type": "parenthesized_expression", "named": true } ] } } }, { "type": "else_clause", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] } }, { "type": "enum_specifier", "named": true, "fields": { "base": { "multiple": false, "required": false, "types": [ { "type": "primitive_type", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "sized_type_specifier", "named": true }, { "type": "type_identifier", "named": true } ] }, "body": { "multiple": false, "required": false, "types": [ { "type": "enumerator_list", "named": true } ] }, "name": { "multiple": false, "required": false, "types": [ { "type": "qualified_identifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "attribute_specifier", "named": true } ] } }, { "type": "enumerator", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "enumerator_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "enumerator", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true } ] } }, { "type": "explicit_function_specifier", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } }, { "type": "expression_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "comma_expression", "named": true }, { "type": "expression", "named": true } ] } }, { "type": "field_declaration", "named": true, "fields": { "declarator": { "multiple": true, "required": false, "types": [ { "type": "_field_declarator", "named": true } ] }, "default_value": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true }, { "type": "initializer_list", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "bitfield_clause", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "field_declaration_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "access_specifier", "named": true }, { "type": "alias_declaration", "named": true }, { "type": "declaration", "named": true }, { "type": "field_declaration", "named": true }, { "type": "friend_declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "template_declaration", "named": true }, { "type": "type_definition", "named": true }, { "type": "using_declaration", "named": true } ] } }, { "type": "field_designator", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "field_identifier", "named": true } ] } }, { "type": "field_expression", "named": true, "fields": { "argument": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "field": { "multiple": false, "required": true, "types": [ { "type": "dependent_name", "named": true }, { "type": "destructor_name", "named": true }, { "type": "field_identifier", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "template_method", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "->", "named": false }, { "type": ".", "named": false }, { "type": ".*", "named": false } ] } } }, { "type": "field_initializer", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "argument_list", "named": true }, { "type": "field_identifier", "named": true }, { "type": "initializer_list", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "template_method", "named": true } ] } }, { "type": "field_initializer_list", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "field_initializer", "named": true } ] } }, { "type": "fold_expression", "named": true, "fields": { "left": { "multiple": false, "required": true, "types": [ { "type": "...", "named": false }, { "type": "expression", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "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": "and", "named": false }, { "type": "bitand", "named": false }, { "type": "bitor", "named": false }, { "type": "not_eq", "named": false }, { "type": "or", "named": false }, { "type": "xor", "named": false }, { "type": "|", "named": false }, { "type": "|=", "named": false }, { "type": "||", "named": false } ] }, "right": { "multiple": false, "required": true, "types": [ { "type": "...", "named": false }, { "type": "expression", "named": true } ] } } }, { "type": "for_range_loop", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] }, "declarator": { "multiple": false, "required": true, "types": [ { "type": "_declarator", "named": true } ] }, "initializer": { "multiple": false, "required": false, "types": [ { "type": "init_statement", "named": true } ] }, "right": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "initializer_list", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "for_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] }, "condition": { "multiple": false, "required": false, "types": [ { "type": "comma_expression", "named": true }, { "type": "expression", "named": true } ] }, "initializer": { "multiple": false, "required": false, "types": [ { "type": "comma_expression", "named": true }, { "type": "declaration", "named": true }, { "type": "expression", "named": true } ] }, "update": { "multiple": false, "required": false, "types": [ { "type": "comma_expression", "named": true }, { "type": "expression", "named": true } ] } } }, { "type": "friend_declaration", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } }, { "type": "function_declarator", "named": true, "fields": { "declarator": { "multiple": false, "required": true, "types": [ { "type": "_declarator", "named": true }, { "type": "_field_declarator", "named": true }, { "type": "_type_declarator", "named": true } ] }, "parameters": { "multiple": false, "required": true, "types": [ { "type": "parameter_list", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "gnu_asm_expression", "named": true }, { "type": "noexcept", "named": true }, { "type": "ref_qualifier", "named": true }, { "type": "requires_clause", "named": true }, { "type": "throw_specifier", "named": true }, { "type": "trailing_return_type", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual_specifier", "named": true } ] } }, { "type": "function_definition", "named": true, "fields": { "body": { "multiple": false, "required": false, "types": [ { "type": "compound_statement", "named": true }, { "type": "try_statement", "named": true } ] }, "declarator": { "multiple": false, "required": true, "types": [ { "type": "_declarator", "named": true }, { "type": "_field_declarator", "named": true }, { "type": "operator_cast", "named": true } ] }, "type": { "multiple": false, "required": false, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "default_method_clause", "named": true }, { "type": "delete_method_clause", "named": true }, { "type": "explicit_function_specifier", "named": true }, { "type": "field_initializer_list", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_call_modifier", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "pure_virtual_clause", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "try_statement", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "generic_expression", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "type_descriptor", "named": true } ] } }, { "type": "gnu_asm_clobber_list", "named": true, "fields": { "register": { "multiple": true, "required": false, "types": [ { "type": "concatenated_string", "named": true }, { "type": "string_literal", "named": true } ] } } }, { "type": "gnu_asm_expression", "named": true, "fields": { "assembly_code": { "multiple": false, "required": true, "types": [ { "type": "concatenated_string", "named": true }, { "type": "string_literal", "named": true } ] }, "clobbers": { "multiple": false, "required": false, "types": [ { "type": "gnu_asm_clobber_list", "named": true } ] }, "goto_labels": { "multiple": false, "required": false, "types": [ { "type": "gnu_asm_goto_list", "named": true } ] }, "input_operands": { "multiple": false, "required": false, "types": [ { "type": "gnu_asm_input_operand_list", "named": true } ] }, "output_operands": { "multiple": false, "required": false, "types": [ { "type": "gnu_asm_output_operand_list", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "gnu_asm_qualifier", "named": true } ] } }, { "type": "gnu_asm_goto_list", "named": true, "fields": { "label": { "multiple": true, "required": false, "types": [ { "type": "identifier", "named": true } ] } } }, { "type": "gnu_asm_input_operand", "named": true, "fields": { "constraint": { "multiple": false, "required": true, "types": [ { "type": "string_literal", "named": true } ] }, "symbol": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "gnu_asm_input_operand_list", "named": true, "fields": { "operand": { "multiple": true, "required": false, "types": [ { "type": "gnu_asm_input_operand", "named": true } ] } } }, { "type": "gnu_asm_output_operand", "named": true, "fields": { "constraint": { "multiple": false, "required": true, "types": [ { "type": "string_literal", "named": true } ] }, "symbol": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } } }, { "type": "gnu_asm_output_operand_list", "named": true, "fields": { "operand": { "multiple": true, "required": false, "types": [ { "type": "gnu_asm_output_operand", "named": true } ] } } }, { "type": "gnu_asm_qualifier", "named": true, "fields": {} }, { "type": "goto_statement", "named": true, "fields": { "label": { "multiple": false, "required": true, "types": [ { "type": "statement_identifier", "named": true } ] } } }, { "type": "if_statement", "named": true, "fields": { "alternative": { "multiple": false, "required": false, "types": [ { "type": "else_clause", "named": true } ] }, "condition": { "multiple": false, "required": true, "types": [ { "type": "condition_clause", "named": true } ] }, "consequence": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] } } }, { "type": "init_declarator", "named": true, "fields": { "declarator": { "multiple": false, "required": true, "types": [ { "type": "_declarator", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "argument_list", "named": true }, { "type": "expression", "named": true }, { "type": "initializer_list", "named": true } ] } } }, { "type": "init_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "alias_declaration", "named": true }, { "type": "declaration", "named": true }, { "type": "expression_statement", "named": true }, { "type": "type_definition", "named": true } ] } }, { "type": "initializer_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true }, { "type": "initializer_list", "named": true }, { "type": "initializer_pair", "named": true } ] } }, { "type": "initializer_pair", "named": true, "fields": { "designator": { "multiple": true, "required": true, "types": [ { "type": "field_designator", "named": true }, { "type": "field_identifier", "named": true }, { "type": "subscript_designator", "named": true }, { "type": "subscript_range_designator", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "initializer_list", "named": true } ] } } }, { "type": "kernel_call_syntax", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "labeled_statement", "named": true, "fields": { "label": { "multiple": false, "required": true, "types": [ { "type": "statement_identifier", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] } }, { "type": "lambda_capture_specifier", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true }, { "type": "lambda_default_capture", "named": true } ] } }, { "type": "lambda_default_capture", "named": true, "fields": {} }, { "type": "lambda_expression", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "compound_statement", "named": true } ] }, "captures": { "multiple": false, "required": true, "types": [ { "type": "lambda_capture_specifier", "named": true } ] }, "constraint": { "multiple": false, "required": false, "types": [ { "type": "requires_clause", "named": true } ] }, "declarator": { "multiple": false, "required": false, "types": [ { "type": "abstract_function_declarator", "named": true } ] }, "template_parameters": { "multiple": false, "required": false, "types": [ { "type": "template_parameter_list", "named": true } ] } } }, { "type": "launch_bounds", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "linkage_specification", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "declaration", "named": true }, { "type": "declaration_list", "named": true }, { "type": "function_definition", "named": true } ] }, "value": { "multiple": false, "required": true, "types": [ { "type": "string_literal", "named": true } ] } } }, { "type": "ms_based_modifier", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "argument_list", "named": true } ] } }, { "type": "ms_call_modifier", "named": true, "fields": {} }, { "type": "ms_declspec_modifier", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "ms_pointer_modifier", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "ms_restrict_modifier", "named": true }, { "type": "ms_signed_ptr_modifier", "named": true }, { "type": "ms_unaligned_ptr_modifier", "named": true }, { "type": "ms_unsigned_ptr_modifier", "named": true } ] } }, { "type": "ms_unaligned_ptr_modifier", "named": true, "fields": {} }, { "type": "namespace_alias_definition", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "namespace_identifier", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "namespace_identifier", "named": true }, { "type": "nested_namespace_specifier", "named": true } ] } }, { "type": "namespace_definition", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "declaration_list", "named": true } ] }, "name": { "multiple": false, "required": false, "types": [ { "type": "namespace_identifier", "named": true }, { "type": "nested_namespace_specifier", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "attribute_declaration", "named": true } ] } }, { "type": "nested_namespace_specifier", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "namespace_identifier", "named": true }, { "type": "nested_namespace_specifier", "named": true } ] } }, { "type": "new_declarator", "named": true, "fields": { "length": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, "children": { "multiple": false, "required": false, "types": [ { "type": "new_declarator", "named": true } ] } }, { "type": "new_expression", "named": true, "fields": { "arguments": { "multiple": false, "required": false, "types": [ { "type": "argument_list", "named": true }, { "type": "initializer_list", "named": true } ] }, "declarator": { "multiple": false, "required": false, "types": [ { "type": "new_declarator", "named": true } ] }, "placement": { "multiple": false, "required": false, "types": [ { "type": "argument_list", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } } }, { "type": "noexcept", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } }, { "type": "null", "named": true, "fields": {} }, { "type": "offsetof_expression", "named": true, "fields": { "member": { "multiple": false, "required": true, "types": [ { "type": "field_identifier", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_descriptor", "named": true } ] } } }, { "type": "operator_cast", "named": true, "fields": { "declarator": { "multiple": false, "required": true, "types": [ { "type": "_abstract_declarator", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "operator_name", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "optional_parameter_declaration", "named": true, "fields": { "declarator": { "multiple": false, "required": false, "types": [ { "type": "_declarator", "named": true }, { "type": "abstract_reference_declarator", "named": true } ] }, "default_value": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "optional_type_parameter_declaration", "named": true, "fields": { "default_type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] }, "name": { "multiple": false, "required": false, "types": [ { "type": "type_identifier", "named": true } ] } } }, { "type": "parameter_declaration", "named": true, "fields": { "declarator": { "multiple": false, "required": false, "types": [ { "type": "_abstract_declarator", "named": true }, { "type": "_declarator", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "parameter_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "identifier", "named": true }, { "type": "optional_parameter_declaration", "named": true }, { "type": "parameter_declaration", "named": true }, { "type": "variadic_parameter", "named": true }, { "type": "variadic_parameter_declaration", "named": true } ] } }, { "type": "parameter_pack_expansion", "named": true, "fields": { "pattern": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "type_descriptor", "named": true } ] } } }, { "type": "parenthesized_declarator", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "_declarator", "named": true }, { "type": "_field_declarator", "named": true }, { "type": "_type_declarator", "named": true }, { "type": "ms_call_modifier", "named": true } ] } }, { "type": "parenthesized_expression", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "comma_expression", "named": true }, { "type": "expression", "named": true }, { "type": "preproc_defined", "named": true } ] } }, { "type": "placeholder_type_specifier", "named": true, "fields": { "constraint": { "multiple": false, "required": false, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "auto", "named": true }, { "type": "decltype", "named": true } ] } }, { "type": "pointer_declarator", "named": true, "fields": { "declarator": { "multiple": false, "required": true, "types": [ { "type": "_declarator", "named": true }, { "type": "_field_declarator", "named": true }, { "type": "_type_declarator", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "ms_based_modifier", "named": true }, { "type": "ms_pointer_modifier", "named": true }, { "type": "type_qualifier", "named": true } ] } }, { "type": "pointer_expression", "named": true, "fields": { "argument": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "&", "named": false }, { "type": "*", "named": false } ] } } }, { "type": "pointer_type_declarator", "named": true, "fields": { "declarator": { "multiple": false, "required": true, "types": [ { "type": "_type_declarator", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "ms_based_modifier", "named": true }, { "type": "ms_pointer_modifier", "named": true }, { "type": "type_qualifier", "named": true } ] } }, { "type": "preproc_call", "named": true, "fields": { "argument": { "multiple": false, "required": false, "types": [ { "type": "preproc_arg", "named": true } ] }, "directive": { "multiple": false, "required": true, "types": [ { "type": "preproc_directive", "named": true } ] } } }, { "type": "preproc_def", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "preproc_arg", "named": true } ] } } }, { "type": "preproc_defined", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "preproc_elif", "named": true, "fields": { "alternative": { "multiple": false, "required": false, "types": [ { "type": "preproc_elif", "named": true }, { "type": "preproc_elifdef", "named": true }, { "type": "preproc_else", "named": true } ] }, "condition": { "multiple": false, "required": true, "types": [ { "type": "binary_expression", "named": true }, { "type": "call_expression", "named": true }, { "type": "char_literal", "named": true }, { "type": "identifier", "named": true }, { "type": "number_literal", "named": true }, { "type": "parenthesized_expression", "named": true }, { "type": "preproc_defined", "named": true }, { "type": "unary_expression", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "access_specifier", "named": true }, { "type": "alias_declaration", "named": true }, { "type": "concept_definition", "named": true }, { "type": "declaration", "named": true }, { "type": "enumerator", "named": true }, { "type": "field_declaration", "named": true }, { "type": "friend_declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "linkage_specification", "named": true }, { "type": "namespace_alias_definition", "named": true }, { "type": "namespace_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "preproc_include", "named": true }, { "type": "statement", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "template_declaration", "named": true }, { "type": "template_instantiation", "named": true }, { "type": "type_definition", "named": true }, { "type": "type_specifier", "named": true }, { "type": "using_declaration", "named": true } ] } }, { "type": "preproc_elifdef", "named": true, "fields": { "alternative": { "multiple": false, "required": false, "types": [ { "type": "preproc_elif", "named": true }, { "type": "preproc_elifdef", "named": true }, { "type": "preproc_else", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "access_specifier", "named": true }, { "type": "alias_declaration", "named": true }, { "type": "concept_definition", "named": true }, { "type": "declaration", "named": true }, { "type": "enumerator", "named": true }, { "type": "field_declaration", "named": true }, { "type": "friend_declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "linkage_specification", "named": true }, { "type": "namespace_alias_definition", "named": true }, { "type": "namespace_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "preproc_include", "named": true }, { "type": "statement", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "template_declaration", "named": true }, { "type": "template_instantiation", "named": true }, { "type": "type_definition", "named": true }, { "type": "type_specifier", "named": true }, { "type": "using_declaration", "named": true } ] } }, { "type": "preproc_else", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "access_specifier", "named": true }, { "type": "alias_declaration", "named": true }, { "type": "concept_definition", "named": true }, { "type": "declaration", "named": true }, { "type": "enumerator", "named": true }, { "type": "field_declaration", "named": true }, { "type": "friend_declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "linkage_specification", "named": true }, { "type": "namespace_alias_definition", "named": true }, { "type": "namespace_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "preproc_include", "named": true }, { "type": "statement", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "template_declaration", "named": true }, { "type": "template_instantiation", "named": true }, { "type": "type_definition", "named": true }, { "type": "type_specifier", "named": true }, { "type": "using_declaration", "named": true } ] } }, { "type": "preproc_function_def", "named": true, "fields": { "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] }, "parameters": { "multiple": false, "required": true, "types": [ { "type": "preproc_params", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "preproc_arg", "named": true } ] } } }, { "type": "preproc_if", "named": true, "fields": { "alternative": { "multiple": false, "required": false, "types": [ { "type": "preproc_elif", "named": true }, { "type": "preproc_elifdef", "named": true }, { "type": "preproc_else", "named": true } ] }, "condition": { "multiple": false, "required": true, "types": [ { "type": "binary_expression", "named": true }, { "type": "call_expression", "named": true }, { "type": "char_literal", "named": true }, { "type": "identifier", "named": true }, { "type": "number_literal", "named": true }, { "type": "parenthesized_expression", "named": true }, { "type": "preproc_defined", "named": true }, { "type": "unary_expression", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "access_specifier", "named": true }, { "type": "alias_declaration", "named": true }, { "type": "concept_definition", "named": true }, { "type": "declaration", "named": true }, { "type": "enumerator", "named": true }, { "type": "field_declaration", "named": true }, { "type": "friend_declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "linkage_specification", "named": true }, { "type": "namespace_alias_definition", "named": true }, { "type": "namespace_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "preproc_include", "named": true }, { "type": "statement", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "template_declaration", "named": true }, { "type": "template_instantiation", "named": true }, { "type": "type_definition", "named": true }, { "type": "type_specifier", "named": true }, { "type": "using_declaration", "named": true } ] } }, { "type": "preproc_ifdef", "named": true, "fields": { "alternative": { "multiple": false, "required": false, "types": [ { "type": "preproc_elif", "named": true }, { "type": "preproc_elifdef", "named": true }, { "type": "preproc_else", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "access_specifier", "named": true }, { "type": "alias_declaration", "named": true }, { "type": "concept_definition", "named": true }, { "type": "declaration", "named": true }, { "type": "enumerator", "named": true }, { "type": "field_declaration", "named": true }, { "type": "friend_declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "linkage_specification", "named": true }, { "type": "namespace_alias_definition", "named": true }, { "type": "namespace_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "preproc_include", "named": true }, { "type": "statement", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "template_declaration", "named": true }, { "type": "template_instantiation", "named": true }, { "type": "type_definition", "named": true }, { "type": "type_specifier", "named": true }, { "type": "using_declaration", "named": true } ] } }, { "type": "preproc_include", "named": true, "fields": { "path": { "multiple": false, "required": true, "types": [ { "type": "call_expression", "named": true }, { "type": "identifier", "named": true }, { "type": "string_literal", "named": true }, { "type": "system_lib_string", "named": true } ] } } }, { "type": "preproc_params", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "pure_virtual_clause", "named": true, "fields": {} }, { "type": "qualified_identifier", "named": true, "fields": { "name": { "multiple": true, "required": true, "types": [ { "type": "dependent_name", "named": true }, { "type": "destructor_name", "named": true }, { "type": "field_identifier", "named": true }, { "type": "identifier", "named": true }, { "type": "operator_cast", "named": true }, { "type": "operator_name", "named": true }, { "type": "pointer_type_declarator", "named": true }, { "type": "qualified_identifier", "named": true }, { "type": "template", "named": false }, { "type": "template_function", "named": true }, { "type": "template_method", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] }, "scope": { "multiple": false, "required": false, "types": [ { "type": "decltype", "named": true }, { "type": "dependent_name", "named": true }, { "type": "namespace_identifier", "named": true }, { "type": "template_type", "named": true } ] } } }, { "type": "raw_string_literal", "named": true, "fields": { "delimiter": { "multiple": false, "required": false, "types": [ { "type": "raw_string_delimiter", "named": true } ] } }, "children": { "multiple": true, "required": true, "types": [ { "type": "raw_string_content", "named": true }, { "type": "raw_string_delimiter", "named": true } ] } }, { "type": "ref_qualifier", "named": true, "fields": {} }, { "type": "reference_declarator", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "_declarator", "named": true }, { "type": "_field_declarator", "named": true }, { "type": "_type_declarator", "named": true }, { "type": "variadic_declarator", "named": true } ] } }, { "type": "requirement_seq", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "compound_requirement", "named": true }, { "type": "simple_requirement", "named": true }, { "type": "type_requirement", "named": true } ] } }, { "type": "requires_clause", "named": true, "fields": { "constraint": { "multiple": true, "required": true, "types": [ { "type": "(", "named": false }, { "type": ")", "named": false }, { "type": "constraint_conjunction", "named": true }, { "type": "constraint_disjunction", "named": true }, { "type": "expression", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } } }, { "type": "requires_expression", "named": true, "fields": { "parameters": { "multiple": false, "required": false, "types": [ { "type": "parameter_list", "named": true } ] }, "requirements": { "multiple": false, "required": true, "types": [ { "type": "requirement_seq", "named": true } ] } } }, { "type": "return_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "comma_expression", "named": true }, { "type": "expression", "named": true }, { "type": "initializer_list", "named": true } ] } }, { "type": "seh_except_clause", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "compound_statement", "named": true } ] }, "filter": { "multiple": false, "required": true, "types": [ { "type": "parenthesized_expression", "named": true } ] } } }, { "type": "seh_finally_clause", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "compound_statement", "named": true } ] } } }, { "type": "seh_leave_statement", "named": true, "fields": {} }, { "type": "seh_try_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "compound_statement", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "seh_except_clause", "named": true }, { "type": "seh_finally_clause", "named": true } ] } }, { "type": "simple_requirement", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "comma_expression", "named": true }, { "type": "expression", "named": true } ] } }, { "type": "sized_type_specifier", "named": true, "fields": { "type": { "multiple": false, "required": false, "types": [ { "type": "primitive_type", "named": true }, { "type": "type_identifier", "named": true } ] } } }, { "type": "sizeof_expression", "named": true, "fields": { "type": { "multiple": false, "required": false, "types": [ { "type": "type_descriptor", "named": true } ] }, "value": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "static_assert_declaration", "named": true, "fields": { "condition": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "message": { "multiple": false, "required": false, "types": [ { "type": "concatenated_string", "named": true }, { "type": "raw_string_literal", "named": true }, { "type": "string_literal", "named": true } ] } } }, { "type": "storage_class_specifier", "named": true, "fields": {} }, { "type": "string_literal", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "escape_sequence", "named": true }, { "type": "string_content", "named": true } ] } }, { "type": "struct_specifier", "named": true, "fields": { "body": { "multiple": false, "required": false, "types": [ { "type": "field_declaration_list", "named": true } ] }, "name": { "multiple": false, "required": false, "types": [ { "type": "qualified_identifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "alignas_qualifier", "named": true }, { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "base_class_clause", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "virtual_specifier", "named": true } ] } }, { "type": "structured_binding_declarator", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "subscript_argument_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true }, { "type": "initializer_list", "named": true } ] } }, { "type": "subscript_designator", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } }, { "type": "subscript_expression", "named": true, "fields": { "argument": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "indices": { "multiple": false, "required": true, "types": [ { "type": "subscript_argument_list", "named": true } ] } } }, { "type": "subscript_range_designator", "named": true, "fields": { "end": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "start": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] } } }, { "type": "switch_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "compound_statement", "named": true } ] }, "condition": { "multiple": false, "required": true, "types": [ { "type": "condition_clause", "named": true } ] } } }, { "type": "template_argument_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "expression", "named": true }, { "type": "type_descriptor", "named": true } ] } }, { "type": "template_declaration", "named": true, "fields": { "parameters": { "multiple": false, "required": true, "types": [ { "type": "template_parameter_list", "named": true } ] } }, "children": { "multiple": true, "required": true, "types": [ { "type": "alias_declaration", "named": true }, { "type": "concept_definition", "named": true }, { "type": "declaration", "named": true }, { "type": "friend_declaration", "named": true }, { "type": "function_definition", "named": true }, { "type": "requires_clause", "named": true }, { "type": "template_declaration", "named": true }, { "type": "type_specifier", "named": true } ] } }, { "type": "template_function", "named": true, "fields": { "arguments": { "multiple": false, "required": true, "types": [ { "type": "template_argument_list", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true } ] } } }, { "type": "template_instantiation", "named": true, "fields": { "declarator": { "multiple": false, "required": true, "types": [ { "type": "_declarator", "named": true } ] }, "type": { "multiple": false, "required": false, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "template_method", "named": true, "fields": { "arguments": { "multiple": false, "required": true, "types": [ { "type": "template_argument_list", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "field_identifier", "named": true }, { "type": "operator_name", "named": true } ] } } }, { "type": "template_parameter_list", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "optional_parameter_declaration", "named": true }, { "type": "optional_type_parameter_declaration", "named": true }, { "type": "parameter_declaration", "named": true }, { "type": "template_template_parameter_declaration", "named": true }, { "type": "type_parameter_declaration", "named": true }, { "type": "variadic_parameter_declaration", "named": true }, { "type": "variadic_type_parameter_declaration", "named": true } ] } }, { "type": "template_template_parameter_declaration", "named": true, "fields": { "parameters": { "multiple": false, "required": true, "types": [ { "type": "template_parameter_list", "named": true } ] } }, "children": { "multiple": false, "required": true, "types": [ { "type": "optional_type_parameter_declaration", "named": true }, { "type": "type_parameter_declaration", "named": true }, { "type": "variadic_type_parameter_declaration", "named": true } ] } }, { "type": "template_type", "named": true, "fields": { "arguments": { "multiple": false, "required": true, "types": [ { "type": "template_argument_list", "named": true } ] }, "name": { "multiple": false, "required": true, "types": [ { "type": "type_identifier", "named": true } ] } } }, { "type": "throw_specifier", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "type_descriptor", "named": true } ] } }, { "type": "throw_statement", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "expression", "named": true } ] } }, { "type": "trailing_return_type", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "type_descriptor", "named": true } ] } }, { "type": "translation_unit", "named": true, "fields": {}, "children": { "multiple": true, "required": false, "types": [ { "type": "alias_declaration", "named": true }, { "type": "attributed_statement", "named": true }, { "type": "break_statement", "named": true }, { "type": "case_statement", "named": true }, { "type": "co_return_statement", "named": true }, { "type": "co_yield_statement", "named": true }, { "type": "compound_statement", "named": true }, { "type": "concept_definition", "named": true }, { "type": "continue_statement", "named": true }, { "type": "declaration", "named": true }, { "type": "do_statement", "named": true }, { "type": "expression_statement", "named": true }, { "type": "for_range_loop", "named": true }, { "type": "for_statement", "named": true }, { "type": "function_definition", "named": true }, { "type": "goto_statement", "named": true }, { "type": "if_statement", "named": true }, { "type": "labeled_statement", "named": true }, { "type": "linkage_specification", "named": true }, { "type": "namespace_alias_definition", "named": true }, { "type": "namespace_definition", "named": true }, { "type": "preproc_call", "named": true }, { "type": "preproc_def", "named": true }, { "type": "preproc_function_def", "named": true }, { "type": "preproc_if", "named": true }, { "type": "preproc_ifdef", "named": true }, { "type": "preproc_include", "named": true }, { "type": "return_statement", "named": true }, { "type": "static_assert_declaration", "named": true }, { "type": "switch_statement", "named": true }, { "type": "template_declaration", "named": true }, { "type": "template_instantiation", "named": true }, { "type": "throw_statement", "named": true }, { "type": "try_statement", "named": true }, { "type": "type_definition", "named": true }, { "type": "type_specifier", "named": true }, { "type": "using_declaration", "named": true }, { "type": "while_statement", "named": true } ] } }, { "type": "try_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "compound_statement", "named": true } ] } }, "children": { "multiple": true, "required": true, "types": [ { "type": "catch_clause", "named": true }, { "type": "field_initializer_list", "named": true } ] } }, { "type": "type_definition", "named": true, "fields": { "declarator": { "multiple": true, "required": true, "types": [ { "type": "_type_declarator", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_specifier", "named": true }, { "type": "type_qualifier", "named": true } ] } }, { "type": "type_descriptor", "named": true, "fields": { "declarator": { "multiple": false, "required": false, "types": [ { "type": "_abstract_declarator", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "type_qualifier", "named": true } ] } }, { "type": "type_parameter_declaration", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "type_identifier", "named": true } ] } }, { "type": "type_qualifier", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "alignas_qualifier", "named": true } ] } }, { "type": "type_requirement", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "qualified_identifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } }, { "type": "unary_expression", "named": true, "fields": { "argument": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true }, { "type": "preproc_defined", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "!", "named": false }, { "type": "+", "named": false }, { "type": "-", "named": false }, { "type": "compl", "named": false }, { "type": "not", "named": false }, { "type": "~", "named": false } ] } } }, { "type": "union_specifier", "named": true, "fields": { "body": { "multiple": false, "required": false, "types": [ { "type": "field_declaration_list", "named": true } ] }, "name": { "multiple": false, "required": false, "types": [ { "type": "qualified_identifier", "named": true }, { "type": "template_type", "named": true }, { "type": "type_identifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "alignas_qualifier", "named": true }, { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "base_class_clause", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "virtual_specifier", "named": true } ] } }, { "type": "update_expression", "named": true, "fields": { "argument": { "multiple": false, "required": true, "types": [ { "type": "expression", "named": true } ] }, "operator": { "multiple": false, "required": true, "types": [ { "type": "++", "named": false }, { "type": "--", "named": false } ] } } }, { "type": "user_defined_literal", "named": true, "fields": {}, "children": { "multiple": true, "required": true, "types": [ { "type": "char_literal", "named": true }, { "type": "concatenated_string", "named": true }, { "type": "literal_suffix", "named": true }, { "type": "number_literal", "named": true }, { "type": "raw_string_literal", "named": true }, { "type": "string_literal", "named": true } ] } }, { "type": "using_declaration", "named": true, "fields": {}, "children": { "multiple": false, "required": true, "types": [ { "type": "identifier", "named": true }, { "type": "qualified_identifier", "named": true } ] } }, { "type": "variadic_declarator", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "identifier", "named": true } ] } }, { "type": "variadic_parameter", "named": true, "fields": {} }, { "type": "variadic_parameter_declaration", "named": true, "fields": { "declarator": { "multiple": false, "required": true, "types": [ { "type": "reference_declarator", "named": true }, { "type": "variadic_declarator", "named": true } ] }, "type": { "multiple": false, "required": true, "types": [ { "type": "type_specifier", "named": true } ] } }, "children": { "multiple": true, "required": false, "types": [ { "type": "attribute_declaration", "named": true }, { "type": "attribute_specifier", "named": true }, { "type": "launch_bounds", "named": true }, { "type": "ms_declspec_modifier", "named": true }, { "type": "storage_class_specifier", "named": true }, { "type": "type_qualifier", "named": true }, { "type": "virtual", "named": true } ] } }, { "type": "variadic_type_parameter_declaration", "named": true, "fields": {}, "children": { "multiple": false, "required": false, "types": [ { "type": "type_identifier", "named": true } ] } }, { "type": "virtual_specifier", "named": true, "fields": {} }, { "type": "while_statement", "named": true, "fields": { "body": { "multiple": false, "required": true, "types": [ { "type": "statement", "named": true } ] }, "condition": { "multiple": false, "required": true, "types": [ { "type": "condition_clause", "named": true } ] } } }, { "type": "\n", "named": false }, { "type": "!", "named": false }, { "type": "!=", "named": false }, { "type": "\"", "named": false }, { "type": "\"\"", "named": false }, { "type": "#define", "named": false }, { "type": "#elif", "named": false }, { "type": "#elifdef", "named": false }, { "type": "#elifndef", "named": false }, { "type": "#else", "named": false }, { "type": "#endif", "named": false }, { "type": "#if", "named": false }, { "type": "#ifdef", "named": false }, { "type": "#ifndef", "named": false }, { "type": "#include", "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": "0", "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": "L\"", "named": false }, { "type": "L'", "named": false }, { "type": "LR\"", "named": false }, { "type": "NULL", "named": false }, { "type": "R\"", "named": false }, { "type": "U\"", "named": false }, { "type": "U'", "named": false }, { "type": "UR\"", "named": false }, { "type": "[", "named": false }, { "type": "[[", "named": false }, { "type": "[]", "named": false }, { "type": "]", "named": false }, { "type": "]]", "named": false }, { "type": "^", "named": false }, { "type": "^=", "named": false }, { "type": "_Alignas", "named": false }, { "type": "_Alignof", "named": false }, { "type": "_Atomic", "named": false }, { "type": "_Generic", "named": false }, { "type": "_Noreturn", "named": false }, { "type": "__alignof", "named": false }, { "type": "__alignof__", "named": false }, { "type": "__asm__", "named": false }, { "type": "__attribute__", "named": false }, { "type": "__based", "named": false }, { "type": "__cdecl", "named": false }, { "type": "__clrcall", "named": false }, { "type": "__constant__", "named": false }, { "type": "__declspec", "named": false }, { "type": "__device__", "named": false }, { "type": "__except", "named": false }, { "type": "__extension__", "named": false }, { "type": "__fastcall", "named": false }, { "type": "__finally", "named": false }, { "type": "__forceinline", "named": false }, { "type": "__forceinline__", "named": false }, { "type": "__global__", "named": false }, { "type": "__grid_constant__", "named": false }, { "type": "__host__", "named": false }, { "type": "__inline", "named": false }, { "type": "__inline__", "named": false }, { "type": "__launch_bounds__", "named": false }, { "type": "__leave", "named": false }, { "type": "__local__", "named": false }, { "type": "__managed__", "named": false }, { "type": "__noinline__", "named": false }, { "type": "__restrict__", "named": false }, { "type": "__shared__", "named": false }, { "type": "__stdcall", "named": false }, { "type": "__thiscall", "named": false }, { "type": "__thread", "named": false }, { "type": "__try", "named": false }, { "type": "__unaligned", "named": false }, { "type": "__vectorcall", "named": false }, { "type": "_alignof", "named": false }, { "type": "_unaligned", "named": false }, { "type": "alignas", "named": false }, { "type": "alignof", "named": false }, { "type": "and", "named": false }, { "type": "and_eq", "named": false }, { "type": "asm", "named": false }, { "type": "auto", "named": true }, { "type": "bitand", "named": false }, { "type": "bitor", "named": false }, { "type": "break", "named": false }, { "type": "case", "named": false }, { "type": "catch", "named": false }, { "type": "character", "named": true }, { "type": "class", "named": false }, { "type": "co_await", "named": false }, { "type": "co_return", "named": false }, { "type": "co_yield", "named": false }, { "type": "comment", "named": true }, { "type": "compl", "named": false }, { "type": "concept", "named": false }, { "type": "const", "named": false }, { "type": "consteval", "named": false }, { "type": "constexpr", "named": false }, { "type": "constinit", "named": false }, { "type": "continue", "named": false }, { "type": "decltype", "named": false }, { "type": "default", "named": false }, { "type": "defined", "named": false }, { "type": "delete", "named": false }, { "type": "do", "named": false }, { "type": "else", "named": false }, { "type": "enum", "named": false }, { "type": "escape_sequence", "named": true }, { "type": "explicit", "named": false }, { "type": "extern", "named": false }, { "type": "false", "named": true }, { "type": "field_identifier", "named": true }, { "type": "final", "named": false }, { "type": "for", "named": false }, { "type": "friend", "named": false }, { "type": "goto", "named": false }, { "type": "identifier", "named": true }, { "type": "if", "named": false }, { "type": "inline", "named": false }, { "type": "literal_suffix", "named": true }, { "type": "long", "named": false }, { "type": "ms_restrict_modifier", "named": true }, { "type": "ms_signed_ptr_modifier", "named": true }, { "type": "ms_unsigned_ptr_modifier", "named": true }, { "type": "mutable", "named": false }, { "type": "namespace", "named": false }, { "type": "namespace_identifier", "named": true }, { "type": "new", "named": false }, { "type": "noexcept", "named": false }, { "type": "noreturn", "named": false }, { "type": "not", "named": false }, { "type": "not_eq", "named": false }, { "type": "nullptr", "named": false }, { "type": "number_literal", "named": true }, { "type": "offsetof", "named": false }, { "type": "operator", "named": false }, { "type": "or", "named": false }, { "type": "or_eq", "named": false }, { "type": "override", "named": false }, { "type": "preproc_arg", "named": true }, { "type": "preproc_directive", "named": true }, { "type": "primitive_type", "named": true }, { "type": "private", "named": false }, { "type": "protected", "named": false }, { "type": "public", "named": false }, { "type": "raw_string_content", "named": true }, { "type": "raw_string_delimiter", "named": true }, { "type": "register", "named": false }, { "type": "requires", "named": false }, { "type": "restrict", "named": false }, { "type": "return", "named": false }, { "type": "short", "named": false }, { "type": "signed", "named": false }, { "type": "sizeof", "named": false }, { "type": "statement_identifier", "named": true }, { "type": "static", "named": false }, { "type": "static_assert", "named": false }, { "type": "string_content", "named": true }, { "type": "struct", "named": false }, { "type": "switch", "named": false }, { "type": "system_lib_string", "named": true }, { "type": "template", "named": false }, { "type": "this", "named": true }, { "type": "thread_local", "named": false }, { "type": "throw", "named": false }, { "type": "true", "named": true }, { "type": "try", "named": false }, { "type": "type_identifier", "named": true }, { "type": "typedef", "named": false }, { "type": "typename", "named": false }, { "type": "u\"", "named": false }, { "type": "u'", "named": false }, { "type": "u8\"", "named": false }, { "type": "u8'", "named": false }, { "type": "u8R\"", "named": false }, { "type": "uR\"", "named": false }, { "type": "union", "named": false }, { "type": "unsigned", "named": false }, { "type": "using", "named": false }, { "type": "virtual", "named": true }, { "type": "volatile", "named": false }, { "type": "while", "named": false }, { "type": "xor", "named": false }, { "type": "xor_eq", "named": false }, { "type": "{", "named": false }, { "type": "|", "named": false }, { "type": "|=", "named": false }, { "type": "||", "named": false }, { "type": "}", "named": false }, { "type": "~", "named": false } ]