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.

6596 lines
293 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,
{
}
]],
["FunctionDecl" , [
{
"pointer" : 7,
"source_range" : [
{
"file" : "tests/lambda.cpp",
"line" : 7,
"column" : 1
},
{
"line" : 17,
"column" : 1
}
]
},
{
"name" : "main",
"qual_name" : [
"main"
]
},
{
"type_ptr" : 8
},
{
"is_cpp" : true,
"decl_ptr_with_body" : 7,
"body" : ["CompoundStmt" , [
{
"pointer" : 9,
"source_range" : [
{
"line" : 7,
"column" : 12
},
{
"line" : 17,
"column" : 1
}
]
},
[
["DeclStmt" , [
{
"pointer" : 10,
"source_range" : [
{
"line" : 8,
"column" : 3
},
{
"column" : 11
}
]
},
[
],
[
["VarDecl" , [
{
"pointer" : 11,
"source_range" : [
{
"column" : 3
},
{
"column" : 7
}
],
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "m",
"qual_name" : [
"m"
]
},
{
"type_ptr" : 12
},
{
}
]],
["VarDecl" , [
{
"pointer" : 13,
"source_range" : [
{
"column" : 3
},
{
"column" : 10
}
],
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "n",
"qual_name" : [
"n"
]
},
{
"type_ptr" : 12
},
{
}
]]
]
]],
["DeclStmt" , [
{
"pointer" : 14,
"source_range" : [
{
"line" : 10,
"column" : 3
},
{
"column" : 30
}
]
},
[
["ExprWithCleanups" , [
{
"pointer" : 15,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
]
},
[
["CXXConstructExpr" , [
{
"pointer" : 16,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
]
},
[
["MaterializeTemporaryExpr" , [
{
"pointer" : 17,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
]
},
[
["LambdaExpr" , [
{
"pointer" : 18,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
]
},
[
["CompoundStmt" , [
{
"pointer" : 19,
"source_range" : [
{
"column" : 17
},
{
"column" : 29
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 20,
"source_range" : [
{
"column" : 19
},
{
"column" : 26
}
]
},
[
["IntegerLiteral" , [
{
"pointer" : 21,
"source_range" : [
{
"column" : 26
},
{
"column" : 26
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "1"
}
]]
]
]]
]
]]
],
{
"qual_type" : {
"type_ptr" : 22
}
},
{
"lambda_decl" : ["CXXRecordDecl" , [
{
"pointer" : 23,
"parent_pointer" : 7,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
],
"is_implicit" : true
},
{
"name" : "",
"qual_name" : [
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
22,
[
["CXXMethodDecl" , [
{
"pointer" : 24,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 15
},
{
"column" : 29
}
],
"access" : "Public"
},
{
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 25
},
{
"mangled_name" : "8700561857799965393",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 24,
"body" : ["CompoundStmt" , [
{
"pointer" : 19,
"source_range" : [
{
"column" : 17
},
{
"column" : 29
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 20,
"source_range" : [
{
"column" : 19
},
{
"column" : 26
}
]
},
[
["IntegerLiteral" , [
{
"pointer" : 21,
"source_range" : [
{
"column" : 26
},
{
"column" : 26
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "1"
}
]]
]
]]
]
]]
},
{
}
]],
["CXXConversionDecl" , [
{
"pointer" : 26,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
],
"is_implicit" : true,
"access" : "Public"
},
{
"name" : "operator int (*)()",
"qual_name" : [
"operator int (*)()",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 27
},
{
"mangled_name" : "13435645424728763319",
"is_cpp" : true,
"is_inline" : true
},
{
}
]],
["CXXMethodDecl" , [
{
"pointer" : 28,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
],
"is_implicit" : true,
"access" : "Private"
},
{
"name" : "__invoke",
"qual_name" : [
"__invoke",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 29
},
{
"mangled_name" : "17605822925966688033",
"is_cpp" : true,
"is_inline" : true,
"is_static" : true
},
{
"is_static" : true
}
]],
["CXXDestructorDecl" , [
{
"pointer" : 30,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 31
},
{
"mangled_name" : "13286141613727650365",
"is_cpp" : true,
"is_inline" : true
},
{
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 32,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
],
"is_implicit" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 33
},
{
"mangled_name" : "10693628329110131385",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 34,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
]
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 35
},
{
"parm_index_in_function" : 0
}
]]
]
},
{
"is_constexpr" : true
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 36,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
],
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 37
},
{
"mangled_name" : "18362977156530360911",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 38,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
]
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 39
},
{
"parm_index_in_function" : 0
}
]]
],
"decl_ptr_with_body" : 36,
"body" : ["CompoundStmt" , [
{
"pointer" : 40,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
]
},
[
]
]]
},
{
"is_constexpr" : true
}
]]
],
{
},
"TTK_Class",
{
"definition_ptr" : 23,
"is_complete_definition" : true
},
{
"destructor" : {
"kind" : "CXXDestructor",
"decl_pointer" : 30,
"name" : {
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
"qual_type" : {
"type_ptr" : 31
}
},
"lambda_call_operator" : {
"kind" : "CXXMethod",
"decl_pointer" : 24,
"name" : {
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
"qual_type" : {
"type_ptr" : 25
}
}
}
]]
}
]]
],
{
"qual_type" : {
"type_ptr" : 22
},
"value_kind" : "XValue"
},
{
}
]]
],
{
"qual_type" : {
"type_ptr" : 41
}
},
{
"decl_ref" : {
"kind" : "CXXConstructor",
"decl_pointer" : 36,
"name" : {
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
"qual_type" : {
"type_ptr" : 37
}
},
"is_elidable" : true
}
]]
],
{
"qual_type" : {
"type_ptr" : 41
}
},
{
}
]]
],
[
["VarDecl" , [
{
"pointer" : 42,
"source_range" : [
{
"column" : 3
},
{
"column" : 29
}
]
},
{
"name" : "f",
"qual_name" : [
"f"
]
},
{
"type_ptr" : 41
},
{
"init_expr" : ["ExprWithCleanups" , [
{
"pointer" : 15,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
]
},
[
["CXXConstructExpr" , [
{
"pointer" : 16,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
]
},
[
["MaterializeTemporaryExpr" , [
{
"pointer" : 17,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
]
},
[
["LambdaExpr" , [
{
"pointer" : 18,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
]
},
[
["CompoundStmt" , [
{
"pointer" : 19,
"source_range" : [
{
"column" : 17
},
{
"column" : 29
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 20,
"source_range" : [
{
"column" : 19
},
{
"column" : 26
}
]
},
[
["IntegerLiteral" , [
{
"pointer" : 21,
"source_range" : [
{
"column" : 26
},
{
"column" : 26
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "1"
}
]]
]
]]
]
]]
],
{
"qual_type" : {
"type_ptr" : 22
}
},
{
"lambda_decl" : ["CXXRecordDecl" , [
{
"pointer" : 23,
"parent_pointer" : 7,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
],
"is_implicit" : true
},
{
"name" : "",
"qual_name" : [
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
22,
[
["CXXMethodDecl" , [
{
"pointer" : 24,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 15
},
{
"column" : 29
}
],
"access" : "Public"
},
{
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 25
},
{
"mangled_name" : "8700561857799965393",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 24,
"body" : ["CompoundStmt" , [
{
"pointer" : 19,
"source_range" : [
{
"column" : 17
},
{
"column" : 29
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 20,
"source_range" : [
{
"column" : 19
},
{
"column" : 26
}
]
},
[
["IntegerLiteral" , [
{
"pointer" : 21,
"source_range" : [
{
"column" : 26
},
{
"column" : 26
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "1"
}
]]
]
]]
]
]]
},
{
}
]],
["CXXConversionDecl" , [
{
"pointer" : 26,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
],
"is_implicit" : true,
"access" : "Public"
},
{
"name" : "operator int (*)()",
"qual_name" : [
"operator int (*)()",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 27
},
{
"mangled_name" : "13435645424728763319",
"is_cpp" : true,
"is_inline" : true
},
{
}
]],
["CXXMethodDecl" , [
{
"pointer" : 28,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 29
}
],
"is_implicit" : true,
"access" : "Private"
},
{
"name" : "__invoke",
"qual_name" : [
"__invoke",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 29
},
{
"mangled_name" : "17605822925966688033",
"is_cpp" : true,
"is_inline" : true,
"is_static" : true
},
{
"is_static" : true
}
]],
["CXXDestructorDecl" , [
{
"pointer" : 30,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 31
},
{
"mangled_name" : "13286141613727650365",
"is_cpp" : true,
"is_inline" : true
},
{
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 32,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
],
"is_implicit" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 33
},
{
"mangled_name" : "10693628329110131385",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 34,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
]
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 35
},
{
"parm_index_in_function" : 0
}
]]
]
},
{
"is_constexpr" : true
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 36,
"parent_pointer" : 23,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
],
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
{
"type_ptr" : 37
},
{
"mangled_name" : "18362977156530360911",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 38,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
]
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 39
},
{
"parm_index_in_function" : 0
}
]]
],
"decl_ptr_with_body" : 36,
"body" : ["CompoundStmt" , [
{
"pointer" : 40,
"source_range" : [
{
"column" : 12
},
{
"column" : 12
}
]
},
[
]
]]
},
{
"is_constexpr" : true
}
]]
],
{
},
"TTK_Class",
{
"definition_ptr" : 23,
"is_complete_definition" : true
},
{
"destructor" : {
"kind" : "CXXDestructor",
"decl_pointer" : 30,
"name" : {
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
"qual_type" : {
"type_ptr" : 31
}
},
"lambda_call_operator" : {
"kind" : "CXXMethod",
"decl_pointer" : 24,
"name" : {
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
"qual_type" : {
"type_ptr" : 25
}
}
}
]]
}
]]
],
{
"qual_type" : {
"type_ptr" : 22
},
"value_kind" : "XValue"
},
{
}
]]
],
{
"qual_type" : {
"type_ptr" : 41
}
},
{
"decl_ref" : {
"kind" : "CXXConstructor",
"decl_pointer" : 36,
"name" : {
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:10:12",
"main"
]
},
"qual_type" : {
"type_ptr" : 37
}
},
"is_elidable" : true
}
]]
],
{
"qual_type" : {
"type_ptr" : 41
}
},
{
}
]]
}
]]
]
]],
["DeclStmt" , [
{
"pointer" : 43,
"source_range" : [
{
"line" : 12,
"column" : 3
},
{
"column" : 42
}
]
},
[
["ExprWithCleanups" , [
{
"pointer" : 44,
"source_range" : [
{
"column" : 14
},
{
"column" : 41
}
]
},
[
["CXXConstructExpr" , [
{
"pointer" : 45,
"source_range" : [
{
"column" : 14
},
{
"column" : 41
}
]
},
[
["MaterializeTemporaryExpr" , [
{
"pointer" : 46,
"source_range" : [
{
"column" : 14
},
{
"column" : 41
}
]
},
[
["LambdaExpr" , [
{
"pointer" : 47,
"source_range" : [
{
"column" : 14
},
{
"column" : 41
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 48,
"source_range" : [
{
"column" : 16
},
{
"column" : 16
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 11,
"name" : {
"name" : "m",
"qual_name" : [
"m"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]],
["ImplicitCastExpr" , [
{
"pointer" : 49,
"source_range" : [
{
"column" : 19
},
{
"column" : 19
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 50,
"source_range" : [
{
"column" : 19
},
{
"column" : 19
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 13,
"name" : {
"name" : "n",
"qual_name" : [
"n"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]],
["CompoundStmt" , [
{
"pointer" : 51,
"source_range" : [
{
"column" : 29
},
{
"column" : 41
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 52,
"source_range" : [
{
"column" : 31
},
{
"column" : 38
}
]
},
[
["ImplicitCastExpr" , [
{
"pointer" : 53,
"source_range" : [
{
"column" : 38
},
{
"column" : 38
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 54,
"source_range" : [
{
"column" : 38
},
{
"column" : 38
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 11,
"name" : {
"name" : "m",
"qual_name" : [
"m"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
]
]]
]
]]
],
{
"qual_type" : {
"type_ptr" : 55
}
},
{
"lambda_decl" : ["CXXRecordDecl" , [
{
"pointer" : 56,
"parent_pointer" : 7,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_implicit" : true
},
{
"name" : "",
"qual_name" : [
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
55,
[
["CXXMethodDecl" , [
{
"pointer" : 57,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 27
},
{
"column" : 41
}
],
"access" : "Public"
},
{
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 58
},
{
"mangled_name" : "19264279795607331",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 59,
"source_range" : [
{
"column" : 22
},
{
"column" : 26
}
]
},
{
"name" : "a",
"qual_name" : [
"a"
]
},
{
"type_ptr" : 12
},
{
"parm_index_in_function" : 0
}
]]
],
"decl_ptr_with_body" : 57,
"body" : ["CompoundStmt" , [
{
"pointer" : 51,
"source_range" : [
{
"column" : 29
},
{
"column" : 41
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 52,
"source_range" : [
{
"column" : 31
},
{
"column" : 38
}
]
},
[
["ImplicitCastExpr" , [
{
"pointer" : 53,
"source_range" : [
{
"column" : 38
},
{
"column" : 38
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 54,
"source_range" : [
{
"column" : 38
},
{
"column" : 38
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 11,
"name" : {
"name" : "m",
"qual_name" : [
"m"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
]
]]
]
]]
},
{
}
]],
["FieldDecl" , [
{
"pointer" : 60,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 16
},
{
"column" : 16
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Private"
},
{
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 61
},
{
}
]],
["FieldDecl" , [
{
"pointer" : 62,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 19
},
{
"column" : 19
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Private"
},
{
"name" : "__anon_field_1",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 12
},
{
}
]],
["CXXDestructorDecl" , [
{
"pointer" : 63,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 31
},
{
"mangled_name" : "17450839874206147646",
"is_cpp" : true,
"is_inline" : true
},
{
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 64,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_implicit" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 65
},
{
"mangled_name" : "34143097794571044",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 66,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 67
},
{
"parm_index_in_function" : 0
}
]]
]
},
{
"is_constexpr" : true
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 68,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 69
},
{
"mangled_name" : "4775778177696808400",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 70,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 71
},
{
"parm_index_in_function" : 0
}
]]
],
"decl_ptr_with_body" : 68,
"body" : ["CompoundStmt" , [
{
"pointer" : 72,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
]
]]
},
{
"is_constexpr" : true,
"cxx_ctor_initializers" : [
{
"subject" : ["Member" , {
"kind" : "Field",
"decl_pointer" : 60,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 61
}
}],
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"init_expr" : ["MemberExpr" , [
{
"pointer" : 73,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["CXXStaticCastExpr" , [
{
"pointer" : 74,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 75,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "ParmVar",
"decl_pointer" : 70,
"name" : {
"name" : "",
"qual_name" : [
""
]
},
"qual_type" : {
"type_ptr" : 71
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "XValue"
},
{
"cast_kind" : "NoOp",
"base_path" : [
]
},
{
"type_ptr" : 71
},
"static_cast"
]]
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"performs_virtual_dispatch" : true,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"decl_ref" : {
"kind" : "Field",
"decl_pointer" : 60,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 61
}
}
}
]]
},
{
"subject" : ["Member" , {
"kind" : "Field",
"decl_pointer" : 62,
"name" : {
"name" : "__anon_field_1",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 12
}
}],
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"init_expr" : ["ImplicitCastExpr" , [
{
"pointer" : 76,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["MemberExpr" , [
{
"pointer" : 77,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["CXXStaticCastExpr" , [
{
"pointer" : 78,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 79,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "ParmVar",
"decl_pointer" : 70,
"name" : {
"name" : "",
"qual_name" : [
""
]
},
"qual_type" : {
"type_ptr" : 71
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "XValue"
},
{
"cast_kind" : "NoOp",
"base_path" : [
]
},
{
"type_ptr" : 71
},
"static_cast"
]]
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "XValue"
},
{
"performs_virtual_dispatch" : true,
"name" : {
"name" : "__anon_field_1",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"decl_ref" : {
"kind" : "Field",
"decl_pointer" : 62,
"name" : {
"name" : "__anon_field_1",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
}
]
}
]]
],
{
},
"TTK_Class",
{
"definition_ptr" : 56,
"is_complete_definition" : true
},
{
"destructor" : {
"kind" : "CXXDestructor",
"decl_pointer" : 63,
"name" : {
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 31
}
},
"lambda_call_operator" : {
"kind" : "CXXMethod",
"decl_pointer" : 57,
"name" : {
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 58
}
},
"lambda_captures" : [
{
"capture_kind" : "LCK_ByRef",
"capture_variable" : true,
"captured_var" : {
"kind" : "Var",
"decl_pointer" : 11,
"name" : {
"name" : "m",
"qual_name" : [
"m"
]
},
"qual_type" : {
"type_ptr" : 12
}
},
"location" : [
{
"column" : 16
},
{
"column" : 16
}
]
},
{
"capture_kind" : "LCK_ByCopy",
"capture_variable" : true,
"captured_var" : {
"kind" : "Var",
"decl_pointer" : 13,
"name" : {
"name" : "n",
"qual_name" : [
"n"
]
},
"qual_type" : {
"type_ptr" : 12
}
},
"location" : [
{
"column" : 19
},
{
"column" : 19
}
]
}
]
}
]]
}
]]
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "XValue"
},
{
}
]]
],
{
"qual_type" : {
"type_ptr" : 80
}
},
{
"decl_ref" : {
"kind" : "CXXConstructor",
"decl_pointer" : 68,
"name" : {
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 69
}
},
"is_elidable" : true
}
]]
],
{
"qual_type" : {
"type_ptr" : 80
}
},
{
}
]]
],
[
["VarDecl" , [
{
"pointer" : 81,
"source_range" : [
{
"column" : 3
},
{
"column" : 41
}
]
},
{
"name" : "bar",
"qual_name" : [
"bar"
]
},
{
"type_ptr" : 80
},
{
"init_expr" : ["ExprWithCleanups" , [
{
"pointer" : 44,
"source_range" : [
{
"column" : 14
},
{
"column" : 41
}
]
},
[
["CXXConstructExpr" , [
{
"pointer" : 45,
"source_range" : [
{
"column" : 14
},
{
"column" : 41
}
]
},
[
["MaterializeTemporaryExpr" , [
{
"pointer" : 46,
"source_range" : [
{
"column" : 14
},
{
"column" : 41
}
]
},
[
["LambdaExpr" , [
{
"pointer" : 47,
"source_range" : [
{
"column" : 14
},
{
"column" : 41
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 48,
"source_range" : [
{
"column" : 16
},
{
"column" : 16
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 11,
"name" : {
"name" : "m",
"qual_name" : [
"m"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]],
["ImplicitCastExpr" , [
{
"pointer" : 49,
"source_range" : [
{
"column" : 19
},
{
"column" : 19
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 50,
"source_range" : [
{
"column" : 19
},
{
"column" : 19
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 13,
"name" : {
"name" : "n",
"qual_name" : [
"n"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]],
["CompoundStmt" , [
{
"pointer" : 51,
"source_range" : [
{
"column" : 29
},
{
"column" : 41
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 52,
"source_range" : [
{
"column" : 31
},
{
"column" : 38
}
]
},
[
["ImplicitCastExpr" , [
{
"pointer" : 53,
"source_range" : [
{
"column" : 38
},
{
"column" : 38
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 54,
"source_range" : [
{
"column" : 38
},
{
"column" : 38
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 11,
"name" : {
"name" : "m",
"qual_name" : [
"m"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
]
]]
]
]]
],
{
"qual_type" : {
"type_ptr" : 55
}
},
{
"lambda_decl" : ["CXXRecordDecl" , [
{
"pointer" : 56,
"parent_pointer" : 7,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_implicit" : true
},
{
"name" : "",
"qual_name" : [
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
55,
[
["CXXMethodDecl" , [
{
"pointer" : 57,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 27
},
{
"column" : 41
}
],
"access" : "Public"
},
{
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 58
},
{
"mangled_name" : "19264279795607331",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 59,
"source_range" : [
{
"column" : 22
},
{
"column" : 26
}
]
},
{
"name" : "a",
"qual_name" : [
"a"
]
},
{
"type_ptr" : 12
},
{
"parm_index_in_function" : 0
}
]]
],
"decl_ptr_with_body" : 57,
"body" : ["CompoundStmt" , [
{
"pointer" : 51,
"source_range" : [
{
"column" : 29
},
{
"column" : 41
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 52,
"source_range" : [
{
"column" : 31
},
{
"column" : 38
}
]
},
[
["ImplicitCastExpr" , [
{
"pointer" : 53,
"source_range" : [
{
"column" : 38
},
{
"column" : 38
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 54,
"source_range" : [
{
"column" : 38
},
{
"column" : 38
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 11,
"name" : {
"name" : "m",
"qual_name" : [
"m"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
]
]]
]
]]
},
{
}
]],
["FieldDecl" , [
{
"pointer" : 60,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 16
},
{
"column" : 16
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Private"
},
{
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 61
},
{
}
]],
["FieldDecl" , [
{
"pointer" : 62,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 19
},
{
"column" : 19
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Private"
},
{
"name" : "__anon_field_1",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 12
},
{
}
]],
["CXXDestructorDecl" , [
{
"pointer" : 63,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 31
},
{
"mangled_name" : "17450839874206147646",
"is_cpp" : true,
"is_inline" : true
},
{
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 64,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_implicit" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 65
},
{
"mangled_name" : "34143097794571044",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 66,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 67
},
{
"parm_index_in_function" : 0
}
]]
]
},
{
"is_constexpr" : true
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 68,
"parent_pointer" : 56,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
{
"type_ptr" : 69
},
{
"mangled_name" : "4775778177696808400",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 70,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 71
},
{
"parm_index_in_function" : 0
}
]]
],
"decl_ptr_with_body" : 68,
"body" : ["CompoundStmt" , [
{
"pointer" : 72,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
]
]]
},
{
"is_constexpr" : true,
"cxx_ctor_initializers" : [
{
"subject" : ["Member" , {
"kind" : "Field",
"decl_pointer" : 60,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 61
}
}],
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"init_expr" : ["MemberExpr" , [
{
"pointer" : 73,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["CXXStaticCastExpr" , [
{
"pointer" : 74,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 75,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "ParmVar",
"decl_pointer" : 70,
"name" : {
"name" : "",
"qual_name" : [
""
]
},
"qual_type" : {
"type_ptr" : 71
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "XValue"
},
{
"cast_kind" : "NoOp",
"base_path" : [
]
},
{
"type_ptr" : 71
},
"static_cast"
]]
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "LValue"
},
{
"performs_virtual_dispatch" : true,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"decl_ref" : {
"kind" : "Field",
"decl_pointer" : 60,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 61
}
}
}
]]
},
{
"subject" : ["Member" , {
"kind" : "Field",
"decl_pointer" : 62,
"name" : {
"name" : "__anon_field_1",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 12
}
}],
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
],
"init_expr" : ["ImplicitCastExpr" , [
{
"pointer" : 76,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["MemberExpr" , [
{
"pointer" : 77,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["CXXStaticCastExpr" , [
{
"pointer" : 78,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 79,
"source_range" : [
{
"column" : 14
},
{
"column" : 14
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "ParmVar",
"decl_pointer" : 70,
"name" : {
"name" : "",
"qual_name" : [
""
]
},
"qual_type" : {
"type_ptr" : 71
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "XValue"
},
{
"cast_kind" : "NoOp",
"base_path" : [
]
},
{
"type_ptr" : 71
},
"static_cast"
]]
],
{
"qual_type" : {
"type_ptr" : 12
},
"value_kind" : "XValue"
},
{
"performs_virtual_dispatch" : true,
"name" : {
"name" : "__anon_field_1",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"decl_ref" : {
"kind" : "Field",
"decl_pointer" : 62,
"name" : {
"name" : "__anon_field_1",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 12
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
}
]
}
]]
],
{
},
"TTK_Class",
{
"definition_ptr" : 56,
"is_complete_definition" : true
},
{
"destructor" : {
"kind" : "CXXDestructor",
"decl_pointer" : 63,
"name" : {
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 31
}
},
"lambda_call_operator" : {
"kind" : "CXXMethod",
"decl_pointer" : 57,
"name" : {
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 58
}
},
"lambda_captures" : [
{
"capture_kind" : "LCK_ByRef",
"capture_variable" : true,
"captured_var" : {
"kind" : "Var",
"decl_pointer" : 11,
"name" : {
"name" : "m",
"qual_name" : [
"m"
]
},
"qual_type" : {
"type_ptr" : 12
}
},
"location" : [
{
"column" : 16
},
{
"column" : 16
}
]
},
{
"capture_kind" : "LCK_ByCopy",
"capture_variable" : true,
"captured_var" : {
"kind" : "Var",
"decl_pointer" : 13,
"name" : {
"name" : "n",
"qual_name" : [
"n"
]
},
"qual_type" : {
"type_ptr" : 12
}
},
"location" : [
{
"column" : 19
},
{
"column" : 19
}
]
}
]
}
]]
}
]]
],
{
"qual_type" : {
"type_ptr" : 55
},
"value_kind" : "XValue"
},
{
}
]]
],
{
"qual_type" : {
"type_ptr" : 80
}
},
{
"decl_ref" : {
"kind" : "CXXConstructor",
"decl_pointer" : 68,
"name" : {
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:12:14",
"main"
]
},
"qual_type" : {
"type_ptr" : 69
}
},
"is_elidable" : true
}
]]
],
{
"qual_type" : {
"type_ptr" : 80
}
},
{
}
]]
}
]]
]
]],
["DeclStmt" , [
{
"pointer" : 82,
"source_range" : [
{
"line" : 14,
"column" : 3
},
{
"column" : 46
}
]
},
[
["ExprWithCleanups" , [
{
"pointer" : 83,
"source_range" : [
{
"column" : 23
},
{
"column" : 45
}
]
},
[
["CXXConstructExpr" , [
{
"pointer" : 84,
"source_range" : [
{
"column" : 23
},
{
"column" : 45
}
]
},
[
["MaterializeTemporaryExpr" , [
{
"pointer" : 85,
"source_range" : [
{
"column" : 23
},
{
"column" : 45
}
]
},
[
["LambdaExpr" , [
{
"pointer" : 86,
"source_range" : [
{
"column" : 23
},
{
"column" : 45
}
]
},
[
["IntegerLiteral" , [
{
"pointer" : 87,
"source_range" : [
{
"column" : 28
},
{
"column" : 28
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "0"
}
]],
["CompoundStmt" , [
{
"pointer" : 88,
"source_range" : [
{
"column" : 33
},
{
"column" : 45
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 89,
"source_range" : [
{
"column" : 35
},
{
"column" : 42
}
]
},
[
["ImplicitCastExpr" , [
{
"pointer" : 90,
"source_range" : [
{
"column" : 42
},
{
"column" : 42
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 91,
"source_range" : [
{
"column" : 42
},
{
"column" : 42
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 92,
"is_const" : true
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 93,
"name" : {
"name" : "i",
"qual_name" : [
"i"
]
},
"qual_type" : {
"type_ptr" : 92
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 92
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
]
]]
]
]]
],
{
"qual_type" : {
"type_ptr" : 94
}
},
{
"lambda_decl" : ["CXXRecordDecl" , [
{
"pointer" : 95,
"parent_pointer" : 7,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_implicit" : true
},
{
"name" : "",
"qual_name" : [
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
94,
[
["CXXMethodDecl" , [
{
"pointer" : 96,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 31
},
{
"column" : 45
}
],
"access" : "Public"
},
{
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 25
},
{
"mangled_name" : "8151698240653651715",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 96,
"body" : ["CompoundStmt" , [
{
"pointer" : 88,
"source_range" : [
{
"column" : 33
},
{
"column" : 45
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 89,
"source_range" : [
{
"column" : 35
},
{
"column" : 42
}
]
},
[
["ImplicitCastExpr" , [
{
"pointer" : 90,
"source_range" : [
{
"column" : 42
},
{
"column" : 42
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 91,
"source_range" : [
{
"column" : 42
},
{
"column" : 42
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 92,
"is_const" : true
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 93,
"name" : {
"name" : "i",
"qual_name" : [
"i"
]
},
"qual_type" : {
"type_ptr" : 92
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 92
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
]
]]
]
]]
},
{
}
]],
["FieldDecl" , [
{
"pointer" : 97,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 24
},
{
"column" : 24
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Private"
},
{
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 92
},
{
}
]],
["CXXDestructorDecl" , [
{
"pointer" : 98,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 31
},
{
"mangled_name" : "15857901981355611363",
"is_cpp" : true,
"is_inline" : true
},
{
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 99,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_implicit" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 100
},
{
"mangled_name" : "7938324828555278899",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 101,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 102
},
{
"parm_index_in_function" : 0
}
]]
]
},
{
"is_constexpr" : true
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 103,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 104
},
{
"mangled_name" : "4960955440766632321",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 105,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 106
},
{
"parm_index_in_function" : 0
}
]]
],
"decl_ptr_with_body" : 103,
"body" : ["CompoundStmt" , [
{
"pointer" : 107,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
]
]]
},
{
"is_constexpr" : true,
"cxx_ctor_initializers" : [
{
"subject" : ["Member" , {
"kind" : "Field",
"decl_pointer" : 97,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 92
}
}],
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"init_expr" : ["ImplicitCastExpr" , [
{
"pointer" : 108,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
["MemberExpr" , [
{
"pointer" : 109,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
["CXXStaticCastExpr" , [
{
"pointer" : 110,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 111,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 94
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "ParmVar",
"decl_pointer" : 105,
"name" : {
"name" : "",
"qual_name" : [
""
]
},
"qual_type" : {
"type_ptr" : 106
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 94
},
"value_kind" : "XValue"
},
{
"cast_kind" : "NoOp",
"base_path" : [
]
},
{
"type_ptr" : 106
},
"static_cast"
]]
],
{
"qual_type" : {
"type_ptr" : 92
},
"value_kind" : "XValue"
},
{
"performs_virtual_dispatch" : true,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"decl_ref" : {
"kind" : "Field",
"decl_pointer" : 97,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 92
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 92
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
}
]
}
]]
],
{
},
"TTK_Class",
{
"definition_ptr" : 95,
"is_complete_definition" : true
},
{
"destructor" : {
"kind" : "CXXDestructor",
"decl_pointer" : 98,
"name" : {
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 31
}
},
"lambda_call_operator" : {
"kind" : "CXXMethod",
"decl_pointer" : 96,
"name" : {
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 25
}
},
"lambda_captures" : [
{
"capture_kind" : "LCK_ByCopy",
"capture_variable" : true,
"init_captured_vardecl" : ["VarDecl" , [
{
"pointer" : 93,
"source_range" : [
{
"column" : 24
},
{
"column" : 28
}
],
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "i",
"qual_name" : [
"i"
]
},
{
"type_ptr" : 92
},
{
"init_expr" : ["IntegerLiteral" , [
{
"pointer" : 87,
"source_range" : [
{
"column" : 28
},
{
"column" : 28
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "0"
}
]]
}
]],
"captured_var" : {
"kind" : "Var",
"decl_pointer" : 93,
"name" : {
"name" : "i",
"qual_name" : [
"i"
]
},
"qual_type" : {
"type_ptr" : 92
}
},
"location" : [
{
"column" : 24
},
{
"column" : 24
}
]
}
]
}
]]
}
]]
],
{
"qual_type" : {
"type_ptr" : 94
},
"value_kind" : "XValue"
},
{
}
]]
],
{
"qual_type" : {
"type_ptr" : 112
}
},
{
"decl_ref" : {
"kind" : "CXXConstructor",
"decl_pointer" : 103,
"name" : {
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 104
}
},
"is_elidable" : true
}
]]
],
{
"qual_type" : {
"type_ptr" : 112
}
},
{
}
]]
],
[
["VarDecl" , [
{
"pointer" : 113,
"source_range" : [
{
"column" : 3
},
{
"column" : 45
}
]
},
{
"name" : "init_capture",
"qual_name" : [
"init_capture"
]
},
{
"type_ptr" : 112
},
{
"init_expr" : ["ExprWithCleanups" , [
{
"pointer" : 83,
"source_range" : [
{
"column" : 23
},
{
"column" : 45
}
]
},
[
["CXXConstructExpr" , [
{
"pointer" : 84,
"source_range" : [
{
"column" : 23
},
{
"column" : 45
}
]
},
[
["MaterializeTemporaryExpr" , [
{
"pointer" : 85,
"source_range" : [
{
"column" : 23
},
{
"column" : 45
}
]
},
[
["LambdaExpr" , [
{
"pointer" : 86,
"source_range" : [
{
"column" : 23
},
{
"column" : 45
}
]
},
[
["IntegerLiteral" , [
{
"pointer" : 87,
"source_range" : [
{
"column" : 28
},
{
"column" : 28
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "0"
}
]],
["CompoundStmt" , [
{
"pointer" : 88,
"source_range" : [
{
"column" : 33
},
{
"column" : 45
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 89,
"source_range" : [
{
"column" : 35
},
{
"column" : 42
}
]
},
[
["ImplicitCastExpr" , [
{
"pointer" : 90,
"source_range" : [
{
"column" : 42
},
{
"column" : 42
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 91,
"source_range" : [
{
"column" : 42
},
{
"column" : 42
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 92,
"is_const" : true
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 93,
"name" : {
"name" : "i",
"qual_name" : [
"i"
]
},
"qual_type" : {
"type_ptr" : 92
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 92
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
]
]]
]
]]
],
{
"qual_type" : {
"type_ptr" : 94
}
},
{
"lambda_decl" : ["CXXRecordDecl" , [
{
"pointer" : 95,
"parent_pointer" : 7,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_implicit" : true
},
{
"name" : "",
"qual_name" : [
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
94,
[
["CXXMethodDecl" , [
{
"pointer" : 96,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 31
},
{
"column" : 45
}
],
"access" : "Public"
},
{
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 25
},
{
"mangled_name" : "8151698240653651715",
"is_cpp" : true,
"is_inline" : true,
"decl_ptr_with_body" : 96,
"body" : ["CompoundStmt" , [
{
"pointer" : 88,
"source_range" : [
{
"column" : 33
},
{
"column" : 45
}
]
},
[
["ReturnStmt" , [
{
"pointer" : 89,
"source_range" : [
{
"column" : 35
},
{
"column" : 42
}
]
},
[
["ImplicitCastExpr" , [
{
"pointer" : 90,
"source_range" : [
{
"column" : 42
},
{
"column" : 42
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 91,
"source_range" : [
{
"column" : 42
},
{
"column" : 42
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 92,
"is_const" : true
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "Var",
"decl_pointer" : 93,
"name" : {
"name" : "i",
"qual_name" : [
"i"
]
},
"qual_type" : {
"type_ptr" : 92
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 92
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
]
]]
]
]]
},
{
}
]],
["FieldDecl" , [
{
"pointer" : 97,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 24
},
{
"column" : 24
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Private"
},
{
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 92
},
{
}
]],
["CXXDestructorDecl" , [
{
"pointer" : 98,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_implicit" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 31
},
{
"mangled_name" : "15857901981355611363",
"is_cpp" : true,
"is_inline" : true
},
{
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 99,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_implicit" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 100
},
{
"mangled_name" : "7938324828555278899",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 101,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 102
},
{
"parm_index_in_function" : 0
}
]]
]
},
{
"is_constexpr" : true
}
]],
["CXXConstructorDecl" , [
{
"pointer" : 103,
"parent_pointer" : 95,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_implicit" : true,
"is_used" : true,
"is_this_declaration_referenced" : true,
"access" : "Public"
},
{
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
{
"type_ptr" : 104
},
{
"mangled_name" : "4960955440766632321",
"is_cpp" : true,
"is_inline" : true,
"parameters" : [
["ParmVarDecl" , [
{
"pointer" : 105,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "",
"qual_name" : [
""
]
},
{
"type_ptr" : 106
},
{
"parm_index_in_function" : 0
}
]]
],
"decl_ptr_with_body" : 103,
"body" : ["CompoundStmt" , [
{
"pointer" : 107,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
]
]]
},
{
"is_constexpr" : true,
"cxx_ctor_initializers" : [
{
"subject" : ["Member" , {
"kind" : "Field",
"decl_pointer" : 97,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 92
}
}],
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
],
"init_expr" : ["ImplicitCastExpr" , [
{
"pointer" : 108,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
["MemberExpr" , [
{
"pointer" : 109,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
["CXXStaticCastExpr" , [
{
"pointer" : 110,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
["DeclRefExpr" , [
{
"pointer" : 111,
"source_range" : [
{
"column" : 23
},
{
"column" : 23
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 94
},
"value_kind" : "LValue"
},
{
"decl_ref" : {
"kind" : "ParmVar",
"decl_pointer" : 105,
"name" : {
"name" : "",
"qual_name" : [
""
]
},
"qual_type" : {
"type_ptr" : 106
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 94
},
"value_kind" : "XValue"
},
{
"cast_kind" : "NoOp",
"base_path" : [
]
},
{
"type_ptr" : 106
},
"static_cast"
]]
],
{
"qual_type" : {
"type_ptr" : 92
},
"value_kind" : "XValue"
},
{
"performs_virtual_dispatch" : true,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"decl_ref" : {
"kind" : "Field",
"decl_pointer" : 97,
"name" : {
"name" : "__anon_field_0",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 92
}
}
}
]]
],
{
"qual_type" : {
"type_ptr" : 92
}
},
{
"cast_kind" : "LValueToRValue",
"base_path" : [
]
}
]]
}
]
}
]]
],
{
},
"TTK_Class",
{
"definition_ptr" : 95,
"is_complete_definition" : true
},
{
"destructor" : {
"kind" : "CXXDestructor",
"decl_pointer" : 98,
"name" : {
"name" : "~",
"qual_name" : [
"~",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 31
}
},
"lambda_call_operator" : {
"kind" : "CXXMethod",
"decl_pointer" : 96,
"name" : {
"name" : "operator()",
"qual_name" : [
"operator()",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 25
}
},
"lambda_captures" : [
{
"capture_kind" : "LCK_ByCopy",
"capture_variable" : true,
"init_captured_vardecl" : ["VarDecl" , [
{
"pointer" : 93,
"source_range" : [
{
"column" : 24
},
{
"column" : 28
}
],
"is_used" : true,
"is_this_declaration_referenced" : true
},
{
"name" : "i",
"qual_name" : [
"i"
]
},
{
"type_ptr" : 92
},
{
"init_expr" : ["IntegerLiteral" , [
{
"pointer" : 87,
"source_range" : [
{
"column" : 28
},
{
"column" : 28
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "0"
}
]]
}
]],
"captured_var" : {
"kind" : "Var",
"decl_pointer" : 93,
"name" : {
"name" : "i",
"qual_name" : [
"i"
]
},
"qual_type" : {
"type_ptr" : 92
}
},
"location" : [
{
"column" : 24
},
{
"column" : 24
}
]
}
]
}
]]
}
]]
],
{
"qual_type" : {
"type_ptr" : 94
},
"value_kind" : "XValue"
},
{
}
]]
],
{
"qual_type" : {
"type_ptr" : 112
}
},
{
"decl_ref" : {
"kind" : "CXXConstructor",
"decl_pointer" : 103,
"name" : {
"name" : "",
"qual_name" : [
"",
"lambda_tests/lambda.cpp:14:23",
"main"
]
},
"qual_type" : {
"type_ptr" : 104
}
},
"is_elidable" : true
}
]]
],
{
"qual_type" : {
"type_ptr" : 112
}
},
{
}
]]
}
]]
]
]],
["ReturnStmt" , [
{
"pointer" : 114,
"source_range" : [
{
"line" : 16,
"column" : 3
},
{
"column" : 10
}
]
},
[
["IntegerLiteral" , [
{
"pointer" : 115,
"source_range" : [
{
"column" : 10
},
{
"column" : 10
}
]
},
[
],
{
"qual_type" : {
"type_ptr" : 12
}
},
{
"is_signed" : true,
"bitwidth" : 32,
"value" : "0"
}
]]
]
]]
]
]]
}
]],
["TypedefDecl" , [
{
"pointer" : 116,
"source_range" : [
{
},
{
}
],
"is_implicit" : true
},
{
"name" : "instancetype",
"qual_name" : [
"instancetype"
]
},
117,
{
}
]]
],
{
},
{
"input_path" : "tests/lambda.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" : 118
},
"Void"
]],
["BuiltinType" , [
{
"pointer" : 119
},
"Bool"
]],
["BuiltinType" , [
{
"pointer" : 120
},
"Char_S"
]],
["BuiltinType" , [
{
"pointer" : 121
},
"SChar"
]],
["BuiltinType" , [
{
"pointer" : 122
},
"Short"
]],
["BuiltinType" , [
{
"pointer" : 12
},
"Int"
]],
["BuiltinType" , [
{
"pointer" : 123
},
"Long"
]],
["BuiltinType" , [
{
"pointer" : 124
},
"LongLong"
]],
["BuiltinType" , [
{
"pointer" : 125
},
"UChar"
]],
["BuiltinType" , [
{
"pointer" : 126
},
"UShort"
]],
["BuiltinType" , [
{
"pointer" : 127
},
"UInt"
]],
["BuiltinType" , [
{
"pointer" : 128
},
"ULong"
]],
["BuiltinType" , [
{
"pointer" : 129
},
"ULongLong"
]],
["BuiltinType" , [
{
"pointer" : 130
},
"Float"
]],
["BuiltinType" , [
{
"pointer" : 131
},
"Double"
]],
["BuiltinType" , [
{
"pointer" : 132
},
"LongDouble"
]],
["BuiltinType" , [
{
"pointer" : 133
},
"Float128"
]],
["BuiltinType" , [
{
"pointer" : 134
},
"Float16"
]],
["BuiltinType" , [
{
"pointer" : 135
},
"ShortAccum"
]],
["BuiltinType" , [
{
"pointer" : 136
},
"Accum"
]],
["BuiltinType" , [
{
"pointer" : 137
},
"LongAccum"
]],
["BuiltinType" , [
{
"pointer" : 138
},
"UShortAccum"
]],
["BuiltinType" , [
{
"pointer" : 139
},
"UAccum"
]],
["BuiltinType" , [
{
"pointer" : 140
},
"ULongAccum"
]],
["BuiltinType" , [
{
"pointer" : 141
},
"ShortFract"
]],
["BuiltinType" , [
{
"pointer" : 142
},
"Fract"
]],
["BuiltinType" , [
{
"pointer" : 143
},
"LongFract"
]],
["BuiltinType" , [
{
"pointer" : 144
},
"UShortFract"
]],
["BuiltinType" , [
{
"pointer" : 145
},
"UFract"
]],
["BuiltinType" , [
{
"pointer" : 146
},
"ULongFract"
]],
["BuiltinType" , [
{
"pointer" : 147
},
"SatShortAccum"
]],
["BuiltinType" , [
{
"pointer" : 148
},
"SatAccum"
]],
["BuiltinType" , [
{
"pointer" : 149
},
"SatLongAccum"
]],
["BuiltinType" , [
{
"pointer" : 150
},
"SatUShortAccum"
]],
["BuiltinType" , [
{
"pointer" : 151
},
"SatUAccum"
]],
["BuiltinType" , [
{
"pointer" : 152
},
"SatULongAccum"
]],
["BuiltinType" , [
{
"pointer" : 153
},
"SatShortFract"
]],
["BuiltinType" , [
{
"pointer" : 154
},
"SatFract"
]],
["BuiltinType" , [
{
"pointer" : 155
},
"SatLongFract"
]],
["BuiltinType" , [
{
"pointer" : 156
},
"SatUShortFract"
]],
["BuiltinType" , [
{
"pointer" : 157
},
"SatUFract"
]],
["BuiltinType" , [
{
"pointer" : 158
},
"SatULongFract"
]],
["BuiltinType" , [
{
"pointer" : 159
},
"Int128"
]],
["BuiltinType" , [
{
"pointer" : 160
},
"UInt128"
]],
["BuiltinType" , [
{
"pointer" : 161
},
"WChar_S"
]],
["BuiltinType" , [
{
"pointer" : 162
},
"Char8"
]],
["BuiltinType" , [
{
"pointer" : 163
},
"Char16"
]],
["BuiltinType" , [
{
"pointer" : 164
},
"Char32"
]],
["BuiltinType" , [
{
"pointer" : 165
},
"Dependent"
]],
["BuiltinType" , [
{
"pointer" : 166
},
"Overload"
]],
["BuiltinType" , [
{
"pointer" : 167
},
"BoundMember"
]],
["BuiltinType" , [
{
"pointer" : 168
},
"PseudoObject"
]],
["BuiltinType" , [
{
"pointer" : 169
},
"UnknownAny"
]],
["BuiltinType" , [
{
"pointer" : 170
},
"ARCUnbridgedCast"
]],
["BuiltinType" , [
{
"pointer" : 171
},
"BuiltinFn"
]],
["ComplexType" , [
{
"pointer" : 172
}
]],
["ComplexType" , [
{
"pointer" : 173
}
]],
["ComplexType" , [
{
"pointer" : 174
}
]],
["ComplexType" , [
{
"pointer" : 175
}
]],
["BuiltinType" , [
{
"pointer" : 176
},
"ObjCId"
]],
["BuiltinType" , [
{
"pointer" : 177
},
"ObjCClass"
]],
["BuiltinType" , [
{
"pointer" : 178
},
"ObjCSel"
]],
["PointerType" , [
{
"pointer" : 179
},
{
"type_ptr" : 118
}
]],
["BuiltinType" , [
{
"pointer" : 180
},
"NullPtr"
]],
["BuiltinType" , [
{
"pointer" : 181
},
"Half"
]],
["BuiltinType" , [
{
"pointer" : 182
},
"BFloat16"
]],
["RecordType" , [
{
"pointer" : 183
},
184
]],
["PointerType" , [
{
"pointer" : 185
},
{
"type_ptr" : 12,
"is_const" : true
}
]],
["PointerType" , [
{
"pointer" : 186
},
{
"type_ptr" : 120,
"is_const" : true
}
]],
["PointerType" , [
{
"pointer" : 187
},
{
"type_ptr" : 120
}
]],
["RecordType" , [
{
"pointer" : 188
},
189
]],
["ConstantArrayType" , [
{
"pointer" : 190
},
{
"element_type" : {
"type_ptr" : 188
},
"stride" : 24
},
1
]],
["FunctionProtoType" , [
{
"pointer" : 8
},
{
"return_type" : {
"type_ptr" : 12
}
},
{
}
]],
["PointerType" , [
{
"pointer" : 191
},
{
"type_ptr" : 187
}
]],
["FunctionProtoType" , [
{
"pointer" : 192
},
{
"return_type" : {
"type_ptr" : 193
}
},
{
}
]],
["RecordType" , [
{
"pointer" : 22
},
23
]],
["TemplateTypeParmType" , [
{
"pointer" : 194
}
]],
["TemplateTypeParmType" , [
{
"pointer" : 195
}
]],
["AutoType" , [
{
"pointer" : 92,
"desugared_type" : 12
}
]],
["FunctionProtoType" , [
{
"pointer" : 196
},
{
"return_type" : {
"type_ptr" : 12
}
},
{
}
]],
["FunctionProtoType" , [
{
"pointer" : 25
},
{
"return_type" : {
"type_ptr" : 92
}
},
{
}
]],
["FunctionProtoType" , [
{
"pointer" : 29
},
{
"return_type" : {
"type_ptr" : 92
}
},
{
}
]],
["PointerType" , [
{
"pointer" : 197
},
{
"type_ptr" : 8
}
]],
["PointerType" , [
{
"pointer" : 198
},
{
"type_ptr" : 29
}
]],
["FunctionProtoType" , [
{
"pointer" : 199
},
{
"return_type" : {
"type_ptr" : 197
}
},
{
}
]],
["FunctionProtoType" , [
{
"pointer" : 27
},
{
"return_type" : {
"type_ptr" : 198
}
},
{
}
]],
["FunctionProtoType" , [
{
"pointer" : 200
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
}
]],
["FunctionProtoType" , [
{
"pointer" : 201
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
}
]],
["FunctionProtoType" , [
{
"pointer" : 31
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
}
]],
["TemplateTypeParmType" , [
{
"pointer" : 202
}
]],
["AutoType" , [
{
"pointer" : 41,
"desugared_type" : 22
}
]],
["LValueReferenceType" , [
{
"pointer" : 35
},
{
"type_ptr" : 22,
"is_const" : true
}
]],
["FunctionProtoType" , [
{
"pointer" : 203
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 35
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 33
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 35
}
]
}
]],
["RValueReferenceType" , [
{
"pointer" : 39
},
{
"type_ptr" : 22
}
]],
["FunctionProtoType" , [
{
"pointer" : 204
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 39
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 205
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 39
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 37
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 39
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 206
},
{
"return_type" : {
"type_ptr" : 193
}
},
{
"params_type" : [
{
"type_ptr" : 12
}
]
}
]],
["RecordType" , [
{
"pointer" : 55
},
56
]],
["LValueReferenceType" , [
{
"pointer" : 61
},
{
"type_ptr" : 12
}
]],
["TemplateTypeParmType" , [
{
"pointer" : 207
}
]],
["FunctionProtoType" , [
{
"pointer" : 208
},
{
"return_type" : {
"type_ptr" : 12
}
},
{
"params_type" : [
{
"type_ptr" : 12
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 58
},
{
"return_type" : {
"type_ptr" : 92
}
},
{
"params_type" : [
{
"type_ptr" : 12
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 209
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
}
]],
["TemplateTypeParmType" , [
{
"pointer" : 210
}
]],
["AutoType" , [
{
"pointer" : 80,
"desugared_type" : 55
}
]],
["LValueReferenceType" , [
{
"pointer" : 67
},
{
"type_ptr" : 55,
"is_const" : true
}
]],
["FunctionProtoType" , [
{
"pointer" : 211
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 67
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 65
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 67
}
]
}
]],
["RValueReferenceType" , [
{
"pointer" : 71
},
{
"type_ptr" : 55
}
]],
["FunctionProtoType" , [
{
"pointer" : 212
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 71
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 213
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 71
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 69
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 71
}
]
}
]],
["TemplateTypeParmType" , [
{
"pointer" : 214
}
]],
["RecordType" , [
{
"pointer" : 94
},
95
]],
["TemplateTypeParmType" , [
{
"pointer" : 215
}
]],
["FunctionProtoType" , [
{
"pointer" : 216
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
}
]],
["TemplateTypeParmType" , [
{
"pointer" : 217
}
]],
["AutoType" , [
{
"pointer" : 112,
"desugared_type" : 94
}
]],
["LValueReferenceType" , [
{
"pointer" : 102
},
{
"type_ptr" : 94,
"is_const" : true
}
]],
["FunctionProtoType" , [
{
"pointer" : 218
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 102
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 100
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 102
}
]
}
]],
["RValueReferenceType" , [
{
"pointer" : 106
},
{
"type_ptr" : 94
}
]],
["FunctionProtoType" , [
{
"pointer" : 219
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 106
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 220
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 106
}
]
}
]],
["FunctionProtoType" , [
{
"pointer" : 104
},
{
"return_type" : {
"type_ptr" : 118
}
},
{
"params_type" : [
{
"type_ptr" : 106
}
]
}
]],
["ObjCObjectType" , [
{
"pointer" : 221
},
{
"base_type" : 176
}
]],
["ObjCObjectPointerType" , [
{
"pointer" : 222
},
{
"type_ptr" : 221
}
]],
["TypedefType" , [
{
"pointer" : 223,
"desugared_type" : 222
},
{
"child_type" : {
"type_ptr" : 222
},
"decl_ptr" : 224
}
]],
["TypedefType" , [
{
"pointer" : 117,
"desugared_type" : 222
},
{
"child_type" : {
"type_ptr" : 223
},
"decl_ptr" : 116
}
]],
["NoneType" , [
{
"pointer" : 0
}
]]
]
}
]]