<"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 } )> ] } )>