You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

5558 lines
121 KiB

<"TranslationUnitDecl" : (
{
"pointer" : 1,
"source_range" : (
{
},
{
}
)
},
[
<"TypedefDecl" : (
{
"pointer" : 2,
"source_range" : (
{
},
{
}
),
"is_implicit" : true
},
{
"name" : "__int128_t",
"qual_name" : [
"__int128_t"
]
},
0,
{
}
)>,
<"TypedefDecl" : (
{
"pointer" : 3,
"source_range" : (
{
},
{
}
),
"is_implicit" : true
},
{
"name" : "__uint128_t",
"qual_name" : [
"__uint128_t"
]
},
0,
{
}
)>,
<"TypedefDecl" : (
{
"pointer" : 4,
"source_range" : (
{
},
{
}
),
"is_implicit" : true
},
{
"name" : "__NSConstantString",
"qual_name" : [
"__NSConstantString"
]
},
0,
{
}
)>,
<"TypedefDecl" : (
{
"pointer" : 5,
"source_range" : (
{
},
{
}
),
"is_implicit" : true
},
{
"name" : "__builtin_ms_va_list",
"qual_name" : [
"__builtin_ms_va_list"
]
},
0,
{
}
)>,
<"TypedefDecl" : (
{
"pointer" : 6,
"source_range" : (
{
},
{
}
),
"is_implicit" : true
},
{
"name" : "__builtin_va_list",
"qual_name" : [
"__builtin_va_list"
]
},
0,
{
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 7,
"source_range" : (
{
"file" : "tests/template_instantiations.cpp",
"line" : 7,
"column" : 1
},
{
"line" : 8,
"column" : 15
}
)
},
{
"name" : "Tuple",
"qual_name" : [
"Tuple"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 8,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 7,
"column" : 1
},
{
"line" : 8,
"column" : 15
}
)
},
{
"name" : "Tuple",
"qual_name" : [
"Tuple<int>"
]
},
9,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 0
},
{
},
"2296961816144140105",
{
"template_decl" : 7,
"specialization_args" : [
<"Pack" : [
<"Type" : {
"type_ptr" : 10
}>
]>
]
}
)>,
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 11,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 7,
"column" : 1
},
{
"line" : 8,
"column" : 15
}
)
},
{
"name" : "Tuple",
"qual_name" : [
"Tuple<Tuple<int> >"
]
},
12,
[
<"CXXRecordDecl" : (
{
"pointer" : 13,
"parent_pointer" : 11,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Tuple",
"qual_name" : [
"Tuple",
"Tuple<Tuple<int> >"
]
},
12,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 11
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 14,
"parent_pointer" : 11,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "Tuple",
"qual_name" : [
"Tuple",
"Tuple<Tuple<int> >"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "16263929779680628849",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 14,
"body" : <"CompoundStmt" : (
{
"pointer" : 16,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 17,
"parent_pointer" : 11,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Tuple",
"qual_name" : [
"Tuple",
"Tuple<Tuple<int> >"
]
},
{
"type_ptr" : 18
},
{
"mangled_name" : "11014497521477142187",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 19,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 20
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 21,
"parent_pointer" : 11,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Tuple",
"qual_name" : [
"Tuple",
"Tuple<Tuple<int> >"
]
},
{
"type_ptr" : 22
},
{
"mangled_name" : "15031955784438883279",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 23,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 24
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 11,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"8342447397680512296",
{
"template_decl" : 7,
"specialization_args" : [
<"Pack" : [
<"Type" : {
"type_ptr" : 9
}>
]>
]
}
)>
]
}
)>,
<"VarDecl" : (
{
"pointer" : 25,
"source_range" : (
{
"line" : 10,
"column" : 1
},
{
"column" : 19
}
)
},
{
"name" : "x",
"qual_name" : [
"x"
]
},
{
"type_ptr" : 26
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 27,
"source_range" : (
{
"column" : 19
},
{
"column" : 19
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 26
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 14,
"name" : {
"name" : "Tuple",
"qual_name" : [
"Tuple",
"Tuple<Tuple<int> >"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"TypedefDecl" : (
{
"pointer" : 28,
"source_range" : (
{
"line" : 12,
"column" : 1
},
{
"column" : 27
}
),
"is_this_declaration_referenced" : true
},
{
"name" : "nullptr_t",
"qual_name" : [
"nullptr_t"
]
},
29,
{
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 30,
"source_range" : (
{
"line" : 13,
"column" : 1
},
{
"line" : 14,
"column" : 25
}
)
},
{
"name" : "NullPtrTemplate",
"qual_name" : [
"NullPtrTemplate"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 31,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 13,
"column" : 1
},
{
"line" : 14,
"column" : 25
}
)
},
{
"name" : "NullPtrTemplate",
"qual_name" : [
"NullPtrTemplate<nullptr>"
]
},
32,
[
<"CXXRecordDecl" : (
{
"pointer" : 33,
"parent_pointer" : 31,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "NullPtrTemplate",
"qual_name" : [
"NullPtrTemplate",
"NullPtrTemplate<nullptr>"
]
},
32,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 31
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 34,
"parent_pointer" : 31,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "NullPtrTemplate",
"qual_name" : [
"NullPtrTemplate",
"NullPtrTemplate<nullptr>"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "10023818314310534501",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 34,
"body" : <"CompoundStmt" : (
{
"pointer" : 35,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 36,
"parent_pointer" : 31,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "NullPtrTemplate",
"qual_name" : [
"NullPtrTemplate",
"NullPtrTemplate<nullptr>"
]
},
{
"type_ptr" : 37
},
{
"mangled_name" : "11471169980769644070",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 38,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 39
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 40,
"parent_pointer" : 31,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "NullPtrTemplate",
"qual_name" : [
"NullPtrTemplate",
"NullPtrTemplate<nullptr>"
]
},
{
"type_ptr" : 41
},
{
"mangled_name" : "11154857410366551354",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 42,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 43
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 31,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"11141543725649308068",
{
"template_decl" : 30,
"specialization_args" : [
<"NullPtr">
]
}
)>
]
}
)>,
<"VarDecl" : (
{
"pointer" : 44,
"source_range" : (
{
"line" : 16,
"column" : 1
},
{
"column" : 26
}
)
},
{
"name" : "x1",
"qual_name" : [
"x1"
]
},
{
"type_ptr" : 45
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 46,
"source_range" : (
{
"column" : 26
},
{
"column" : 26
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 45
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 34,
"name" : {
"name" : "NullPtrTemplate",
"qual_name" : [
"NullPtrTemplate",
"NullPtrTemplate<nullptr>"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 47,
"source_range" : (
{
"line" : 18,
"column" : 1
},
{
"line" : 19,
"column" : 21
}
)
},
{
"name" : "IntTemplate",
"qual_name" : [
"IntTemplate"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 48,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 18,
"column" : 1
},
{
"line" : 19,
"column" : 21
}
)
},
{
"name" : "IntTemplate",
"qual_name" : [
"IntTemplate<0>"
]
},
49,
[
<"CXXRecordDecl" : (
{
"pointer" : 50,
"parent_pointer" : 48,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "IntTemplate",
"qual_name" : [
"IntTemplate",
"IntTemplate<0>"
]
},
49,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 48
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 51,
"parent_pointer" : 48,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "IntTemplate",
"qual_name" : [
"IntTemplate",
"IntTemplate<0>"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "1478228132453016226",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 51,
"body" : <"CompoundStmt" : (
{
"pointer" : 52,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 53,
"parent_pointer" : 48,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "IntTemplate",
"qual_name" : [
"IntTemplate",
"IntTemplate<0>"
]
},
{
"type_ptr" : 54
},
{
"mangled_name" : "11043804702208708385",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 55,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 56
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 57,
"parent_pointer" : 48,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "IntTemplate",
"qual_name" : [
"IntTemplate",
"IntTemplate<0>"
]
},
{
"type_ptr" : 58
},
{
"mangled_name" : "5185260157533638819",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 59,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 60
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 48,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"18441911275316219119",
{
"template_decl" : 47,
"specialization_args" : [
<"Integral" : "0">
]
}
)>
]
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 61,
"source_range" : (
{
"line" : 21,
"column" : 1
},
{
"line" : 22,
"column" : 22
}
)
},
{
"name" : "CharTemplate",
"qual_name" : [
"CharTemplate"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 62,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 21,
"column" : 1
},
{
"line" : 22,
"column" : 22
}
)
},
{
"name" : "CharTemplate",
"qual_name" : [
"CharTemplate<'c'>"
]
},
63,
[
<"CXXRecordDecl" : (
{
"pointer" : 64,
"parent_pointer" : 62,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "CharTemplate",
"qual_name" : [
"CharTemplate",
"CharTemplate<'c'>"
]
},
63,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 62
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 65,
"parent_pointer" : 62,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "CharTemplate",
"qual_name" : [
"CharTemplate",
"CharTemplate<'c'>"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "16225353893069217924",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 65,
"body" : <"CompoundStmt" : (
{
"pointer" : 66,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 67,
"parent_pointer" : 62,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "CharTemplate",
"qual_name" : [
"CharTemplate",
"CharTemplate<'c'>"
]
},
{
"type_ptr" : 68
},
{
"mangled_name" : "16636418989297388895",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 69,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 70
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 71,
"parent_pointer" : 62,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "CharTemplate",
"qual_name" : [
"CharTemplate",
"CharTemplate<'c'>"
]
},
{
"type_ptr" : 72
},
{
"mangled_name" : "2774670671732909065",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 73,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 74
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 62,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"7893038887469539829",
{
"template_decl" : 61,
"specialization_args" : [
<"Integral" : "99">
]
}
)>
]
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 75,
"source_range" : (
{
"line" : 23,
"column" : 1
},
{
"line" : 24,
"column" : 22
}
)
},
{
"name" : "LongTemplate",
"qual_name" : [
"LongTemplate"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 76,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 23,
"column" : 1
},
{
"line" : 24,
"column" : 22
}
)
},
{
"name" : "LongTemplate",
"qual_name" : [
"LongTemplate<78187493520>"
]
},
77,
[
<"CXXRecordDecl" : (
{
"pointer" : 78,
"parent_pointer" : 76,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "LongTemplate",
"qual_name" : [
"LongTemplate",
"LongTemplate<78187493520>"
]
},
77,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 76
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 79,
"parent_pointer" : 76,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "LongTemplate",
"qual_name" : [
"LongTemplate",
"LongTemplate<78187493520>"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "16125716847522929195",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 79,
"body" : <"CompoundStmt" : (
{
"pointer" : 80,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 81,
"parent_pointer" : 76,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "LongTemplate",
"qual_name" : [
"LongTemplate",
"LongTemplate<78187493520>"
]
},
{
"type_ptr" : 82
},
{
"mangled_name" : "5156418638880841616",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 83,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 84
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 85,
"parent_pointer" : 76,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "LongTemplate",
"qual_name" : [
"LongTemplate",
"LongTemplate<78187493520>"
]
},
{
"type_ptr" : 86
},
{
"mangled_name" : "18073023600850944380",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 87,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 88
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 76,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"6282617124311682814",
{
"template_decl" : 75,
"specialization_args" : [
<"Integral" : "78187493520">
]
}
)>
]
}
)>,
<"VarDecl" : (
{
"pointer" : 89,
"source_range" : (
{
"line" : 26,
"column" : 1
},
{
"column" : 16
}
)
},
{
"name" : "x2",
"qual_name" : [
"x2"
]
},
{
"type_ptr" : 90
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 91,
"source_range" : (
{
"column" : 16
},
{
"column" : 16
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 90
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 51,
"name" : {
"name" : "IntTemplate",
"qual_name" : [
"IntTemplate",
"IntTemplate<0>"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"VarDecl" : (
{
"pointer" : 92,
"source_range" : (
{
"line" : 27,
"column" : 1
},
{
"column" : 19
}
)
},
{
"name" : "x3",
"qual_name" : [
"x3"
]
},
{
"type_ptr" : 93
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 94,
"source_range" : (
{
"column" : 19
},
{
"column" : 19
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 93
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 65,
"name" : {
"name" : "CharTemplate",
"qual_name" : [
"CharTemplate",
"CharTemplate<'c'>"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"VarDecl" : (
{
"pointer" : 95,
"source_range" : (
{
"line" : 28,
"column" : 1
},
{
"column" : 29
}
)
},
{
"name" : "x4",
"qual_name" : [
"x4"
]
},
{
"type_ptr" : 96
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 97,
"source_range" : (
{
"column" : 29
},
{
"column" : 29
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 96
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 79,
"name" : {
"name" : "LongTemplate",
"qual_name" : [
"LongTemplate",
"LongTemplate<78187493520>"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 98,
"source_range" : (
{
"line" : 30,
"column" : 1
},
{
"line" : 31,
"column" : 11
}
)
},
{
"name" : "X",
"qual_name" : [
"X"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 99,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 30,
"column" : 1
},
{
"line" : 31,
"column" : 11
}
)
},
{
"name" : "X",
"qual_name" : [
"X<&x5>"
]
},
100,
[
<"CXXRecordDecl" : (
{
"pointer" : 101,
"parent_pointer" : 99,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "X",
"qual_name" : [
"X",
"X<&x5>"
]
},
100,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 99
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 102,
"parent_pointer" : 99,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "X",
"qual_name" : [
"X",
"X<&x5>"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "8438636393447290261",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 102,
"body" : <"CompoundStmt" : (
{
"pointer" : 103,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 104,
"parent_pointer" : 99,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "X",
"qual_name" : [
"X",
"X<&x5>"
]
},
{
"type_ptr" : 105
},
{
"mangled_name" : "304459608885830774",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 106,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 107
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 108,
"parent_pointer" : 99,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "X",
"qual_name" : [
"X",
"X<&x5>"
]
},
{
"type_ptr" : 109
},
{
"mangled_name" : "5555169503117312650",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 110,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 111
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 99,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"92945586264616176",
{
"template_decl" : 98,
"specialization_args" : [
<"Declaration" : 112>
]
}
)>
]
}
)>,
<"VarDecl" : (
{
"pointer" : 112,
"source_range" : (
{
"line" : 32,
"column" : 1
},
{
"column" : 10
}
),
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "x5",
"qual_name" : [
"x5"
]
},
{
"type_ptr" : 113
},
{
"is_global" : true
}
)>,
<"CXXRecordDecl" : (
{
"pointer" : 114,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 34,
"column" : 1
},
{
"column" : 11
}
),
"is_this_declaration_referenced" : true
},
{
"name" : "Y",
"qual_name" : [
"Y"
]
},
115,
[
<"CXXRecordDecl" : (
{
"pointer" : 116,
"parent_pointer" : 114,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Y",
"qual_name" : [
"Y",
"Y"
]
},
115,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 0
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 117,
"parent_pointer" : 114,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "Y",
"qual_name" : [
"Y",
"Y"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "14898916407379161639",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 117,
"body" : <"CompoundStmt" : (
{
"pointer" : 118,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 119,
"parent_pointer" : 114,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Y",
"qual_name" : [
"Y",
"Y"
]
},
{
"type_ptr" : 120
},
{
"mangled_name" : "7125450473324676530",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 121,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 122
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 123,
"parent_pointer" : 114,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Y",
"qual_name" : [
"Y",
"Y"
]
},
{
"type_ptr" : 124
},
{
"mangled_name" : "3069361207223136310",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 125,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 126
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 114,
"is_complete_definition" : true
},
{
"is_pod" : true
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 127,
"source_range" : (
{
"line" : 35,
"column" : 1
},
{
"line" : 36,
"column" : 11
}
)
},
{
"name" : "Z",
"qual_name" : [
"Z"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 128,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 35,
"column" : 1
},
{
"line" : 36,
"column" : 11
}
)
},
{
"name" : "Z",
"qual_name" : [
"Z<&y>"
]
},
129,
[
<"CXXRecordDecl" : (
{
"pointer" : 130,
"parent_pointer" : 128,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Z",
"qual_name" : [
"Z",
"Z<&y>"
]
},
129,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 128
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 131,
"parent_pointer" : 128,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "Z",
"qual_name" : [
"Z",
"Z<&y>"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "2247315131692507250",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 131,
"body" : <"CompoundStmt" : (
{
"pointer" : 132,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 133,
"parent_pointer" : 128,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Z",
"qual_name" : [
"Z",
"Z<&y>"
]
},
{
"type_ptr" : 134
},
{
"mangled_name" : "7738251501016099665",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 135,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 136
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 137,
"parent_pointer" : 128,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "Z",
"qual_name" : [
"Z",
"Z<&y>"
]
},
{
"type_ptr" : 138
},
{
"mangled_name" : "15832834678910379731",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 139,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 140
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 128,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"4282980438553401163",
{
"template_decl" : 127,
"specialization_args" : [
<"Declaration" : 141>
]
}
)>
]
}
)>,
<"VarDecl" : (
{
"pointer" : 141,
"source_range" : (
{
"line" : 37,
"column" : 1
},
{
"column" : 3
}
),
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "y",
"qual_name" : [
"y"
]
},
{
"type_ptr" : 115
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 142,
"source_range" : (
{
"column" : 3
},
{
"column" : 3
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 115
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 117,
"name" : {
"name" : "Y",
"qual_name" : [
"Y",
"Y"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 143,
"source_range" : (
{
"line" : 39,
"column" : 1
},
{
"line" : 40,
"column" : 11
}
)
},
{
"name" : "W",
"qual_name" : [
"W"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 144,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 39,
"column" : 1
},
{
"line" : 40,
"column" : 11
}
)
},
{
"name" : "W",
"qual_name" : [
"W<&b>"
]
},
145,
[
<"CXXRecordDecl" : (
{
"pointer" : 146,
"parent_pointer" : 144,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "W",
"qual_name" : [
"W",
"W<&b>"
]
},
145,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 144
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 147,
"parent_pointer" : 144,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "W",
"qual_name" : [
"W",
"W<&b>"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "7772438286950717212",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 147,
"body" : <"CompoundStmt" : (
{
"pointer" : 148,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 149,
"parent_pointer" : 144,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "W",
"qual_name" : [
"W",
"W<&b>"
]
},
{
"type_ptr" : 150
},
{
"mangled_name" : "10597356402107300951",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 151,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 152
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 153,
"parent_pointer" : 144,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "W",
"qual_name" : [
"W",
"W<&b>"
]
},
{
"type_ptr" : 154
},
{
"mangled_name" : "9048930144420503889",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 155,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 156
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 144,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"632323835311287041",
{
"template_decl" : 143,
"specialization_args" : [
<"Declaration" : 157>
]
}
)>
]
}
)>,
<"VarDecl" : (
{
"pointer" : 157,
"source_range" : (
{
"line" : 41,
"column" : 1
},
{
"column" : 8
}
),
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "b",
"qual_name" : [
"b"
]
},
{
"type_ptr" : 158
},
{
"is_global" : true
}
)>,
<"FunctionDecl" : (
{
"pointer" : 159,
"source_range" : (
{
"line" : 43,
"column" : 1
},
{
"column" : 11
}
),
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "f",
"qual_name" : [
"f"
]
},
{
"type_ptr" : 160
},
{
"mangled_name" : "4928047469659938654",
"is_cpp" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 161,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 10
},
{
"parm_index_in_function" : 0
}
)>
]
}
)>,
<"ClassTemplateDecl" : (
{
"pointer" : 162,
"source_range" : (
{
"line" : 44,
"column" : 1
},
{
"line" : 45,
"column" : 11
}
)
},
{
"name" : "A",
"qual_name" : [
"A"
]
},
{
"specializations" : [
<"ClassTemplateSpecializationDecl" : (
{
"pointer" : 163,
"parent_pointer" : 1,
"source_range" : (
{
"line" : 44,
"column" : 1
},
{
"line" : 45,
"column" : 11
}
)
},
{
"name" : "A",
"qual_name" : [
"A<&f>"
]
},
164,
[
<"CXXRecordDecl" : (
{
"pointer" : 165,
"parent_pointer" : 163,
"source_range" : (
{
"column" : 1
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "A",
"qual_name" : [
"A",
"A<&f>"
]
},
164,
[
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 163
},
{
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 166,
"parent_pointer" : 163,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : <"Public">
},
{
"name" : "A",
"qual_name" : [
"A",
"A<&f>"
]
},
{
"type_ptr" : 15
},
{
"mangled_name" : "3658993291457928989",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 166,
"body" : <"CompoundStmt" : (
{
"pointer" : 167,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
[
]
)>
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 168,
"parent_pointer" : 163,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "A",
"qual_name" : [
"A",
"A<&f>"
]
},
{
"type_ptr" : 169
},
{
"mangled_name" : "18252192508176638302",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 170,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 171
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>,
<"CXXConstructorDecl" : (
{
"pointer" : 172,
"parent_pointer" : 163,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
),
"is_implicit" : true,
"access" : <"Public">
},
{
"name" : "A",
"qual_name" : [
"A",
"A<&f>"
]
},
{
"type_ptr" : 173
},
{
"mangled_name" : "9481628931273708930",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
<"ParmVarDecl" : (
{
"pointer" : 174,
"source_range" : (
{
"column" : 8
},
{
"column" : 8
}
)
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 175
},
{
"parm_index_in_function" : 0
}
)>
]
},
{
"is_constexpr" : true
}
)>
],
{
},
<"TTK_Struct">,
{
"definition_ptr" : 163,
"is_complete_definition" : true
},
{
"is_pod" : true
},
"6648620333758562824",
{
"template_decl" : 162,
"specialization_args" : [
<"Declaration" : 159>
]
}
)>
]
}
)>,
<"VarDecl" : (
{
"pointer" : 176,
"source_range" : (
{
"line" : 47,
"column" : 1
},
{
"column" : 7
}
)
},
{
"name" : "xi",
"qual_name" : [
"xi"
]
},
{
"type_ptr" : 177
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 178,
"source_range" : (
{
"column" : 7
},
{
"column" : 7
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 177
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 102,
"name" : {
"name" : "X",
"qual_name" : [
"X",
"X<&x5>"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"VarDecl" : (
{
"pointer" : 179,
"source_range" : (
{
"line" : 48,
"column" : 1
},
{
"column" : 6
}
)
},
{
"name" : "z",
"qual_name" : [
"z"
]
},
{
"type_ptr" : 180
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 181,
"source_range" : (
{
"column" : 6
},
{
"column" : 6
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 180
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 131,
"name" : {
"name" : "Z",
"qual_name" : [
"Z",
"Z<&y>"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"VarDecl" : (
{
"pointer" : 182,
"source_range" : (
{
"line" : 49,
"column" : 1
},
{
"column" : 6
}
)
},
{
"name" : "w",
"qual_name" : [
"w"
]
},
{
"type_ptr" : 183
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 184,
"source_range" : (
{
"column" : 6
},
{
"column" : 6
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 183
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 147,
"name" : {
"name" : "W",
"qual_name" : [
"W",
"W<&b>"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"VarDecl" : (
{
"pointer" : 185,
"source_range" : (
{
"line" : 50,
"column" : 1
},
{
"column" : 7
}
)
},
{
"name" : "a",
"qual_name" : [
"a"
]
},
{
"type_ptr" : 186
},
{
"is_global" : true,
"init_expr" : <"CXXConstructExpr" : (
{
"pointer" : 187,
"source_range" : (
{
"column" : 7
},
{
"column" : 7
}
)
},
[
],
{
"qual_type" : {
"type_ptr" : 186
}
},
{
"decl_ref" : {
"kind" : <"CXXConstructor">,
"decl_pointer" : 166,
"name" : {
"name" : "A",
"qual_name" : [
"A",
"A<&f>"
]
},
"qual_type" : {
"type_ptr" : 15
}
}
}
)>
}
)>,
<"TypedefDecl" : (
{
"pointer" : 188,
"source_range" : (
{
},
{
}
),
"is_implicit" : true
},
{
"name" : "instancetype",
"qual_name" : [
"instancetype"
]
},
189,
{
}
)>
],
{
},
{
"input_path" : "tests/template_instantiations.cpp",
"input_kind" : <"IK_CXX">,
"integer_type_widths" : {
"char_type" : 8,
"short_type" : 16,
"int_type" : 32,
"long_type" : 64,
"longlong_type" : 64
},
"types" : [
<"BuiltinType" : (
{
"pointer" : 190
},
<"Void">
)>,
<"BuiltinType" : (
{
"pointer" : 191
},
<"Bool">
)>,
<"BuiltinType" : (
{
"pointer" : 192
},
<"Char_S">
)>,
<"BuiltinType" : (
{
"pointer" : 193
},
<"SChar">
)>,
<"BuiltinType" : (
{
"pointer" : 194
},
<"Short">
)>,
<"BuiltinType" : (
{
"pointer" : 10
},
<"Int">
)>,
<"BuiltinType" : (
{
"pointer" : 195
},
<"Long">
)>,
<"BuiltinType" : (
{
"pointer" : 196
},
<"LongLong">
)>,
<"BuiltinType" : (
{
"pointer" : 197
},
<"UChar">
)>,
<"BuiltinType" : (
{
"pointer" : 198
},
<"UShort">
)>,
<"BuiltinType" : (
{
"pointer" : 199
},
<"UInt">
)>,
<"BuiltinType" : (
{
"pointer" : 200
},
<"ULong">
)>,
<"BuiltinType" : (
{
"pointer" : 201
},
<"ULongLong">
)>,
<"BuiltinType" : (
{
"pointer" : 202
},
<"Float">
)>,
<"BuiltinType" : (
{
"pointer" : 203
},
<"Double">
)>,
<"BuiltinType" : (
{
"pointer" : 204
},
<"LongDouble">
)>,
<"BuiltinType" : (
{
"pointer" : 205
},
<"Float128">
)>,
<"BuiltinType" : (
{
"pointer" : 206
},
<"Float16">
)>,
<"BuiltinType" : (
{
"pointer" : 207
},
<"ShortAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 208
},
<"Accum">
)>,
<"BuiltinType" : (
{
"pointer" : 209
},
<"LongAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 210
},
<"UShortAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 211
},
<"UAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 212
},
<"ULongAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 213
},
<"ShortFract">
)>,
<"BuiltinType" : (
{
"pointer" : 214
},
<"Fract">
)>,
<"BuiltinType" : (
{
"pointer" : 215
},
<"LongFract">
)>,
<"BuiltinType" : (
{
"pointer" : 216
},
<"UShortFract">
)>,
<"BuiltinType" : (
{
"pointer" : 217
},
<"UFract">
)>,
<"BuiltinType" : (
{
"pointer" : 218
},
<"ULongFract">
)>,
<"BuiltinType" : (
{
"pointer" : 219
},
<"SatShortAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 220
},
<"SatAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 221
},
<"SatLongAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 222
},
<"SatUShortAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 223
},
<"SatUAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 224
},
<"SatULongAccum">
)>,
<"BuiltinType" : (
{
"pointer" : 225
},
<"SatShortFract">
)>,
<"BuiltinType" : (
{
"pointer" : 226
},
<"SatFract">
)>,
<"BuiltinType" : (
{
"pointer" : 227
},
<"SatLongFract">
)>,
<"BuiltinType" : (
{
"pointer" : 228
},
<"SatUShortFract">
)>,
<"BuiltinType" : (
{
"pointer" : 229
},
<"SatUFract">
)>,
<"BuiltinType" : (
{
"pointer" : 230
},
<"SatULongFract">
)>,
<"BuiltinType" : (
{
"pointer" : 231
},
<"Int128">
)>,
<"BuiltinType" : (
{
"pointer" : 232
},
<"UInt128">
)>,
<"BuiltinType" : (
{
"pointer" : 233
},
<"WChar_S">
)>,
<"BuiltinType" : (
{
"pointer" : 234
},
<"Char8">
)>,
<"BuiltinType" : (
{
"pointer" : 235
},
<"Char16">
)>,
<"BuiltinType" : (
{
"pointer" : 236
},
<"Char32">
)>,
<"BuiltinType" : (
{
"pointer" : 237
},
<"Dependent">
)>,
<"BuiltinType" : (
{
"pointer" : 238
},
<"Overload">
)>,
<"BuiltinType" : (
{
"pointer" : 239
},
<"BoundMember">
)>,
<"BuiltinType" : (
{
"pointer" : 240
},
<"PseudoObject">
)>,
<"BuiltinType" : (
{
"pointer" : 241
},
<"UnknownAny">
)>,
<"BuiltinType" : (
{
"pointer" : 242
},
<"ARCUnbridgedCast">
)>,
<"BuiltinType" : (
{
"pointer" : 243
},
<"BuiltinFn">
)>,
<"ComplexType" : (
{
"pointer" : 244
}
)>,
<"ComplexType" : (
{
"pointer" : 245
}
)>,
<"ComplexType" : (
{
"pointer" : 246
}
)>,
<"ComplexType" : (
{
"pointer" : 247
}
)>,
<"BuiltinType" : (
{
"pointer" : 248
},
<"ObjCId">
)>,
<"BuiltinType" : (
{
"pointer" : 249
},
<"ObjCClass">
)>,
<"BuiltinType" : (
{
"pointer" : 250
},
<"ObjCSel">
)>,
<"PointerType" : (
{
"pointer" : 251
},
{
"type_ptr" : 190
}
)>,
<"BuiltinType" : (
{
"pointer" : 252
},
<"NullPtr">
)>,
<"BuiltinType" : (
{
"pointer" : 253
},
<"Half">
)>,
<"RecordType" : (
{
"pointer" : 254
},
255
)>,
<"PointerType" : (
{
"pointer" : 256
},
{
"type_ptr" : 10,
"is_const" : true
}
)>,
<"PointerType" : (
{
"pointer" : 257
},
{
"type_ptr" : 192,
"is_const" : true
}
)>,
<"PointerType" : (
{
"pointer" : 258
},
{
"type_ptr" : 192
}
)>,
<"RecordType" : (
{
"pointer" : 259
},
260
)>,
<"ConstantArrayType" : (
{
"pointer" : 261
},
{
"element_type" : {
"type_ptr" : 259
},
"stride" : 24
},
1
)>,
<"TemplateTypeParmType" : (
{
"pointer" : 262
}
)>,
<"TemplateTypeParmType" : (
{
"pointer" : 263
}
)>,
<"PackExpansionType" : (
{
"pointer" : 264
}
)>,
<"PackExpansionType" : (
{
"pointer" : 265
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 266
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 267
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 268
}
)>,
<"RecordType" : (
{
"pointer" : 9
},
8
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 269,
"desugared_type" : 9
}
)>,
<"RecordType" : (
{
"pointer" : 12
},
11
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 26,
"desugared_type" : 12
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 270
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 271
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 20
},
{
"type_ptr" : 12,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 272
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 20
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 18
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 20
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 24
},
{
"type_ptr" : 12
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 273
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 24
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 22
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 24
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 15
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"DecltypeType" : (
{
"pointer" : 274,
"desugared_type" : 252
},
{
"type_ptr" : 252
}
)>,
<"TypedefType" : (
{
"pointer" : 29,
"desugared_type" : 252
},
{
"child_type" : {
"type_ptr" : 274
},
"decl_ptr" : 28
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 275
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 276
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 277
}
)>,
<"RecordType" : (
{
"pointer" : 32
},
31
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 45,
"desugared_type" : 32
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 278
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 39
},
{
"type_ptr" : 32,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 279
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 39
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 37
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 39
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 43
},
{
"type_ptr" : 32
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 280
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 43
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 41
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 43
}
]
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 281
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 282
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 283
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 284
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 285
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 286
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 287
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 288
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 289
}
)>,
<"RecordType" : (
{
"pointer" : 49
},
48
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 90,
"desugared_type" : 49
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 290
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 56
},
{
"type_ptr" : 49,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 291
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 56
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 54
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 56
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 60
},
{
"type_ptr" : 49
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 292
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 60
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 58
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 60
}
]
}
)>,
<"RecordType" : (
{
"pointer" : 63
},
62
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 93,
"desugared_type" : 63
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 293
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 70
},
{
"type_ptr" : 63,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 294
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 70
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 68
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 70
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 74
},
{
"type_ptr" : 63
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 295
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 74
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 72
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 74
}
]
}
)>,
<"RecordType" : (
{
"pointer" : 77
},
76
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 96,
"desugared_type" : 77
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 296
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 84
},
{
"type_ptr" : 77,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 297
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 84
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 82
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 84
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 88
},
{
"type_ptr" : 77
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 298
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 88
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 86
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 88
}
]
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 299
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 300
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 301
}
)>,
<"ConstantArrayType" : (
{
"pointer" : 113
},
{
"element_type" : {
"type_ptr" : 10
},
"stride" : 4
},
42
)>,
<"RecordType" : (
{
"pointer" : 115
},
114
)>,
<"LValueReferenceType" : (
{
"pointer" : 122
},
{
"type_ptr" : 115,
"is_const" : true
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 302
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 303
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 304
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 305
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 306
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 122
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 120
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 122
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 126
},
{
"type_ptr" : 115
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 307
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 126
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 124
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 126
}
]
}
)>,
<"ConstantArrayType" : (
{
"pointer" : 158
},
{
"element_type" : {
"type_ptr" : 10
},
"stride" : 4
},
5
)>,
<"ParenType" : (
{
"pointer" : 308,
"desugared_type" : 158
},
{
"type_ptr" : 158
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 309
},
{
"type_ptr" : 158
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 310
},
{
"type_ptr" : 308
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 311
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 312
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 313
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 160
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 10
}
]
}
)>,
<"ParenType" : (
{
"pointer" : 314,
"desugared_type" : 160
},
{
"type_ptr" : 160
}
)>,
<"PointerType" : (
{
"pointer" : 315
},
{
"type_ptr" : 160
}
)>,
<"PointerType" : (
{
"pointer" : 316
},
{
"type_ptr" : 314
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 317
}
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 318
}
)>,
<"InjectedClassNameType" : (
{
"pointer" : 319
}
)>,
<"PointerType" : (
{
"pointer" : 320
},
{
"type_ptr" : 10
}
)>,
<"RecordType" : (
{
"pointer" : 100
},
99
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 177,
"desugared_type" : 100
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 321
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 107
},
{
"type_ptr" : 100,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 322
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 107
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 105
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 107
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 111
},
{
"type_ptr" : 100
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 323
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 111
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 109
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 111
}
]
}
)>,
<"RecordType" : (
{
"pointer" : 129
},
128
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 180,
"desugared_type" : 129
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 324
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 136
},
{
"type_ptr" : 129,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 325
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 136
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 134
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 136
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 140
},
{
"type_ptr" : 129
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 326
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 140
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 138
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 140
}
]
}
)>,
<"RecordType" : (
{
"pointer" : 145
},
144
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 183,
"desugared_type" : 145
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 327
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 152
},
{
"type_ptr" : 145,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 328
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 152
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 150
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 152
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 156
},
{
"type_ptr" : 145
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 329
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 156
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 154
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 156
}
]
}
)>,
<"RecordType" : (
{
"pointer" : 164
},
163
)>,
<"TemplateSpecializationType" : (
{
"pointer" : 186,
"desugared_type" : 164
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 330
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
}
)>,
<"LValueReferenceType" : (
{
"pointer" : 171
},
{
"type_ptr" : 164,
"is_const" : true
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 331
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 171
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 169
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 171
}
]
}
)>,
<"RValueReferenceType" : (
{
"pointer" : 175
},
{
"type_ptr" : 164
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 332
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 175
}
]
}
)>,
<"FunctionProtoType" : (
{
"pointer" : 173
},
{
"return_type" : {
"type_ptr" : 190
}
},
{
"params_type" : [
{
"type_ptr" : 175
}
]
}
)>,
<"ObjCObjectType" : (
{
"pointer" : 333
},
{
"base_type" : 248
}
)>,
<"ObjCObjectPointerType" : (
{
"pointer" : 334
},
{
"type_ptr" : 333
}
)>,
<"TypedefType" : (
{
"pointer" : 335,
"desugared_type" : 334
},
{
"child_type" : {
"type_ptr" : 334
},
"decl_ptr" : 336
}
)>,
<"TypedefType" : (
{
"pointer" : 189,
"desugared_type" : 334
},
{
"child_type" : {
"type_ptr" : 335
},
"decl_ptr" : 188
}
)>,
<"NoneType" : (
{
"pointer" : 0
}
)>
]
}
)>