Do not elide vector in serialization

This commit is contained in:
Jacob Dufault 2017-12-11 21:15:37 -08:00
parent 7a42f3f393
commit e535fab581
118 changed files with 1898 additions and 199 deletions

View File

@ -138,8 +138,6 @@ void ReflectMember(Writer& visitor, const char* name, T& value) {
} }
template <typename T> template <typename T>
void ReflectMember(Writer& visitor, const char* name, std::vector<T>& values) { void ReflectMember(Writer& visitor, const char* name, std::vector<T>& values) {
if (values.empty())
return;
visitor.Key(name); visitor.Key(name);
visitor.StartArray(); visitor.StartArray();
for (auto& value : values) for (auto& value : values)

View File

@ -1,4 +1,10 @@
/* /*
OUTPUT: OUTPUT:
{} {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [],
"vars": []
}
*/ */

View File

@ -6,6 +6,8 @@ class Foo;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -13,7 +15,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "3:7-3:10", "definition_spelling": "3:7-3:10",
"definition_extent": "3:1-3:13", "definition_extent": "3:1-3:13",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:7-1:10", "2:7-2:10", "3:7-3:10", "4:7-4:10"] "uses": ["1:7-1:10", "2:7-2:10", "3:7-3:10", "4:7-4:10"]
}] }],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -11,6 +11,8 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -18,7 +20,11 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-4:2", "definition_extent": "1:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [0, 1], "instances": [0, 1],
"uses": ["1:7-1:10", "3:3-3:6", "7:3-7:6", "8:3-8:6", "8:17-8:20"] "uses": ["1:7-1:10", "3:3-3:6", "7:3-7:6", "8:3-8:6", "8:17-8:20"]
}], }],
@ -28,18 +34,26 @@ OUTPUT:
"usr": "c:@S@Foo@F@Foo#", "usr": "c:@S@Foo@F@Foo#",
"short_name": "Foo", "short_name": "Foo",
"detailed_name": "void Foo::Foo()", "detailed_name": "void Foo::Foo()",
"declarations": [],
"definition_spelling": "3:3-3:6", "definition_spelling": "3:3-3:6",
"definition_extent": "3:3-3:11", "definition_extent": "3:3-3:11",
"declaring_type": 0, "declaring_type": 0,
"callers": ["~1@7:7-7:8", "1@8:17-8:20"] "derived": [],
"locals": [],
"callers": ["~1@7:7-7:8", "1@8:17-8:20"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "6:6-6:9", "definition_spelling": "6:6-6:9",
"definition_extent": "6:1-9:2", "definition_extent": "6:1-9:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["~0@7:7-7:8", "0@8:17-8:20"] "callees": ["~0@7:7-7:8", "0@8:17-8:20"]
}], }],
"vars": [{ "vars": [{

View File

@ -16,6 +16,8 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -23,7 +25,11 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-5:2", "definition_extent": "1:1-5:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0, 1], "funcs": [0, 1],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:7-1:10", "3:3-3:6", "4:4-4:7", "8:3-8:6"] "uses": ["1:7-1:10", "3:3-3:6", "4:4-4:7", "8:3-8:6"]
}], }],
@ -33,27 +39,40 @@ OUTPUT:
"usr": "c:@S@Foo@F@Foo#", "usr": "c:@S@Foo@F@Foo#",
"short_name": "Foo", "short_name": "Foo",
"detailed_name": "void Foo::Foo()", "detailed_name": "void Foo::Foo()",
"declarations": [],
"definition_spelling": "3:3-3:6", "definition_spelling": "3:3-3:6",
"definition_extent": "3:3-3:11", "definition_extent": "3:3-3:11",
"declaring_type": 0, "declaring_type": 0,
"callers": ["~2@8:7-8:8"] "derived": [],
"locals": [],
"callers": ["~2@8:7-8:8"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@S@Foo@F@~Foo#", "usr": "c:@S@Foo@F@~Foo#",
"short_name": "~Foo", "short_name": "~Foo",
"detailed_name": "void Foo::~Foo() noexcept", "detailed_name": "void Foo::~Foo() noexcept",
"declarations": [],
"definition_spelling": "4:3-4:7", "definition_spelling": "4:3-4:7",
"definition_extent": "4:3-4:12", "definition_extent": "4:3-4:12",
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "7:6-7:9", "definition_spelling": "7:6-7:9",
"definition_extent": "7:1-9:2", "definition_extent": "7:1-9:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["~0@8:7-8:8"] "callees": ["~0@8:7-8:8"]
}], }],
"vars": [{ "vars": [{

View File

@ -10,6 +10,8 @@ void Make() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Type", "usr": "c:@S@Type",
@ -17,7 +19,11 @@ OUTPUT:
"detailed_name": "Type", "detailed_name": "Type",
"definition_spelling": "1:8-1:12", "definition_spelling": "1:8-1:12",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:12", "2:3-2:7", "6:3-6:7"] "uses": ["1:8-1:12", "2:3-2:7", "6:3-6:7"]
}], }],
@ -27,18 +33,26 @@ OUTPUT:
"usr": "c:@S@Type@F@Type#", "usr": "c:@S@Type@F@Type#",
"short_name": "Type", "short_name": "Type",
"detailed_name": "void Type::Type()", "detailed_name": "void Type::Type()",
"declarations": [],
"definition_spelling": "2:3-2:7", "definition_spelling": "2:3-2:7",
"definition_extent": "2:3-2:12", "definition_extent": "2:3-2:12",
"declaring_type": 0, "declaring_type": 0,
"callers": ["~1@6:8-6:11"] "derived": [],
"locals": [],
"callers": ["~1@6:8-6:11"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@Make#", "usr": "c:@F@Make#",
"short_name": "Make", "short_name": "Make",
"detailed_name": "void Make()", "detailed_name": "void Make()",
"declarations": [],
"definition_spelling": "5:6-5:10", "definition_spelling": "5:6-5:10",
"definition_extent": "5:1-8:2", "definition_extent": "5:1-8:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["~0@6:8-6:11"] "callees": ["~0@6:8-6:11"]
}], }],
"vars": [{ "vars": [{

View File

@ -6,6 +6,8 @@ Foo::Foo() {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -13,7 +15,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:8-1:11", "definition_spelling": "1:8-1:11",
"definition_extent": "1:1-1:14", "definition_extent": "1:1-1:14",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["1:8-1:11", "4:6-4:9", "4:1-4:4"] "uses": ["1:8-1:11", "4:6-4:9", "4:1-4:4"]
}], }],
"funcs": [{ "funcs": [{
@ -22,9 +29,15 @@ OUTPUT:
"usr": "c:@S@Foo@FT@>1#TFoo#v#", "usr": "c:@S@Foo@FT@>1#TFoo#v#",
"short_name": "Foo", "short_name": "Foo",
"detailed_name": "void Foo::Foo()", "detailed_name": "void Foo::Foo()",
"declarations": [],
"definition_spelling": "4:6-4:9", "definition_spelling": "4:6-4:9",
"definition_extent": "4:1-4:11", "definition_extent": "4:1-4:11",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -26,6 +26,8 @@ void caller22() {
/* /*
OUTPUT: make_functions.h OUTPUT: make_functions.h
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Bar", "usr": "c:@S@Bar",
@ -33,6 +35,12 @@ OUTPUT: make_functions.h
"detailed_name": "Bar", "detailed_name": "Bar",
"definition_spelling": "1:8-1:11", "definition_spelling": "1:8-1:11",
"definition_extent": "1:1-1:14", "definition_extent": "1:1-1:14",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:8-1:11", "7:17-7:20", "8:15-8:18"] "uses": ["1:8-1:11", "7:17-7:20", "8:15-8:18"]
}, { }, {
"id": 1, "id": 1,
@ -41,7 +49,12 @@ OUTPUT: make_functions.h
"detailed_name": "Foobar", "detailed_name": "Foobar",
"definition_spelling": "3:7-3:13", "definition_spelling": "3:7-3:13",
"definition_extent": "3:1-9:2", "definition_extent": "3:1-9:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0, 1, 2, 3], "funcs": [0, 1, 2, 3],
"vars": [],
"instances": [],
"uses": ["3:7-3:13", "5:3-5:9", "6:3-6:9", "7:3-7:9", "8:3-8:9"] "uses": ["3:7-3:13", "5:3-5:9", "6:3-6:9", "7:3-7:9", "8:3-8:9"]
}], }],
"funcs": [{ "funcs": [{
@ -50,37 +63,58 @@ OUTPUT: make_functions.h
"usr": "c:@S@Foobar@F@Foobar#", "usr": "c:@S@Foobar@F@Foobar#",
"short_name": "Foobar", "short_name": "Foobar",
"detailed_name": "void Foobar::Foobar()", "detailed_name": "void Foobar::Foobar()",
"declarations": [],
"definition_spelling": "5:3-5:9", "definition_spelling": "5:3-5:9",
"definition_extent": "5:3-5:14", "definition_extent": "5:3-5:14",
"declaring_type": 1 "declaring_type": 1,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@S@Foobar@F@Foobar#I#", "usr": "c:@S@Foobar@F@Foobar#I#",
"short_name": "Foobar", "short_name": "Foobar",
"detailed_name": "void Foobar::Foobar(int)", "detailed_name": "void Foobar::Foobar(int)",
"declarations": [],
"definition_spelling": "6:3-6:9", "definition_spelling": "6:3-6:9",
"definition_extent": "6:3-6:17", "definition_extent": "6:3-6:17",
"declaring_type": 1 "declaring_type": 1,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@S@Foobar@F@Foobar#&&I#*$@S@Bar#*b#", "usr": "c:@S@Foobar@F@Foobar#&&I#*$@S@Bar#*b#",
"short_name": "Foobar", "short_name": "Foobar",
"detailed_name": "void Foobar::Foobar(int &&, Bar *, bool *)", "detailed_name": "void Foobar::Foobar(int &&, Bar *, bool *)",
"declarations": [],
"definition_spelling": "7:3-7:9", "definition_spelling": "7:3-7:9",
"definition_extent": "7:3-7:32", "definition_extent": "7:3-7:32",
"declaring_type": 1 "declaring_type": 1,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 3, "id": 3,
"is_operator": false, "is_operator": false,
"usr": "c:@S@Foobar@F@Foobar#I#*$@S@Bar#*b#", "usr": "c:@S@Foobar@F@Foobar#I#*$@S@Bar#*b#",
"short_name": "Foobar", "short_name": "Foobar",
"detailed_name": "void Foobar::Foobar(int, Bar *, bool *)", "detailed_name": "void Foobar::Foobar(int, Bar *, bool *)",
"declarations": [],
"definition_spelling": "8:3-8:9", "definition_spelling": "8:3-8:9",
"definition_extent": "8:3-8:30", "definition_extent": "8:3-8:30",
"declaring_type": 1 "declaring_type": 1,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
OUTPUT: make_functions.cc OUTPUT: make_functions.cc
{ {
@ -88,41 +122,78 @@ OUTPUT: make_functions.cc
"line": 1, "line": 1,
"resolved_path": "&make_functions.h" "resolved_path": "&make_functions.h"
}], }],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:make_functions.cc@41", "usr": "c:make_functions.cc@41",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["4:1-4:2"] "uses": ["4:1-4:2"]
}, { }, {
"id": 1, "id": 1,
"usr": "c:make_functions.cc@53", "usr": "c:make_functions.cc@53",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["4:15-4:19"] "uses": ["4:15-4:19"]
}, { }, {
"id": 2, "id": 2,
"usr": "c:make_functions.cc@139", "usr": "c:make_functions.cc@139",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["9:1-9:2"] "uses": ["9:1-9:2"]
}, { }, {
"id": 3, "id": 3,
"usr": "c:make_functions.cc@151", "usr": "c:make_functions.cc@151",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["9:16-9:20"] "uses": ["9:16-9:20"]
}, { }, {
"id": 4, "id": 4,
"usr": "c:@S@Foobar", "usr": "c:@S@Foobar",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["14:14-14:20", "15:14-15:20", "16:14-16:20", "17:15-17:21"] "uses": ["14:14-14:20", "15:14-15:20", "16:14-16:20", "17:15-17:21"]
}, { }, {
"id": 5, "id": 5,
"usr": "c:@S@Bar", "usr": "c:@S@Bar",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["16:29-16:32", "17:30-17:33"] "uses": ["16:29-16:32", "17:30-17:33"]
}], }],
"funcs": [{ "funcs": [{
@ -131,26 +202,38 @@ OUTPUT: make_functions.cc
"usr": "c:@FT@>2#T#pTMakeUnique#P&&t0.1#*t0.0#", "usr": "c:@FT@>2#T#pTMakeUnique#P&&t0.1#*t0.0#",
"short_name": "MakeUnique", "short_name": "MakeUnique",
"detailed_name": "T *MakeUnique(Args &&...)", "detailed_name": "T *MakeUnique(Args &&...)",
"declarations": [],
"definition_spelling": "4:4-4:14", "definition_spelling": "4:4-4:14",
"definition_extent": "4:1-6:2", "definition_extent": "4:1-6:2",
"callers": ["2@14:3-14:13", "2@15:3-15:13", "2@16:3-16:13"] "derived": [],
"locals": [],
"callers": ["2@14:3-14:13", "2@15:3-15:13", "2@16:3-16:13"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@FT@>2#T#pTmaKE_NoRefs#Pt0.1#*t0.0#", "usr": "c:@FT@>2#T#pTmaKE_NoRefs#Pt0.1#*t0.0#",
"short_name": "maKE_NoRefs", "short_name": "maKE_NoRefs",
"detailed_name": "T *maKE_NoRefs(Args...)", "detailed_name": "T *maKE_NoRefs(Args...)",
"declarations": [],
"definition_spelling": "9:4-9:15", "definition_spelling": "9:4-9:15",
"definition_extent": "9:1-11:2", "definition_extent": "9:1-11:2",
"callers": ["2@17:3-17:14"] "derived": [],
"locals": [],
"callers": ["2@17:3-17:14"],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@caller22#", "usr": "c:@F@caller22#",
"short_name": "caller22", "short_name": "caller22",
"detailed_name": "void caller22()", "detailed_name": "void caller22()",
"declarations": [],
"definition_spelling": "13:6-13:14", "definition_spelling": "13:6-13:14",
"definition_extent": "13:1-18:2", "definition_extent": "13:1-18:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@14:3-14:13", "0@15:3-15:13", "0@16:3-16:13", "1@17:3-17:14"] "callees": ["0@14:3-14:13", "0@15:3-15:13", "0@16:3-16:13", "1@17:3-17:14"]
}, { }, {
"id": 3, "id": 3,
@ -158,28 +241,44 @@ OUTPUT: make_functions.cc
"usr": "c:@S@Foobar@F@Foobar#", "usr": "c:@S@Foobar@F@Foobar#",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"callers": ["~-1@14:3-14:13"] "declarations": [],
"derived": [],
"locals": [],
"callers": ["~-1@14:3-14:13"],
"callees": []
}, { }, {
"id": 4, "id": 4,
"is_operator": false, "is_operator": false,
"usr": "c:@S@Foobar@F@Foobar#I#", "usr": "c:@S@Foobar@F@Foobar#I#",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"callers": ["~-1@15:3-15:13"] "declarations": [],
"derived": [],
"locals": [],
"callers": ["~-1@15:3-15:13"],
"callees": []
}, { }, {
"id": 5, "id": 5,
"is_operator": false, "is_operator": false,
"usr": "c:@S@Foobar@F@Foobar#&&I#*$@S@Bar#*b#", "usr": "c:@S@Foobar@F@Foobar#&&I#*$@S@Bar#*b#",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"callers": ["~-1@16:3-16:13"] "declarations": [],
"derived": [],
"locals": [],
"callers": ["~-1@16:3-16:13"],
"callees": []
}, { }, {
"id": 6, "id": 6,
"is_operator": false, "is_operator": false,
"usr": "c:@S@Foobar@F@Foobar#I#*$@S@Bar#*b#", "usr": "c:@S@Foobar@F@Foobar#I#*$@S@Bar#*b#",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"callers": ["~-1@17:3-17:14"] "declarations": [],
"derived": [],
"locals": [],
"callers": ["~-1@17:3-17:14"],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -8,6 +8,8 @@ class Foo;
// for comments. // for comments.
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -15,7 +17,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "3:7-3:10", "definition_spelling": "3:7-3:10",
"definition_extent": "3:1-3:13", "definition_extent": "3:1-3:13",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:7-1:10", "2:7-2:10", "3:7-3:10", "4:7-4:10"] "uses": ["1:7-1:10", "2:7-2:10", "3:7-3:10", "4:7-4:10"]
}] }],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -5,6 +5,8 @@ class Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -12,9 +14,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0], "vars": [0],
"instances": [],
"uses": ["1:7-1:10"] "uses": ["1:7-1:10"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo@FI@foo", "usr": "c:@S@Foo@FI@foo",

View File

@ -7,6 +7,8 @@ int Foo::foo;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -14,9 +16,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0], "vars": [0],
"instances": [],
"uses": ["1:7-1:10", "5:5-5:8"] "uses": ["1:7-1:10", "5:5-5:8"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo@foo", "usr": "c:@S@Foo@foo",

View File

@ -7,6 +7,9 @@ void foo();
// Note: we always use the latest seen ("most local") definition/declaration. // Note: we always use the latest seen ("most local") definition/declaration.
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -16,18 +19,26 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "1:6-1:9", "spelling": "1:6-1:9",
"extent": "1:1-1:11", "extent": "1:1-1:11",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}, { }, {
"spelling": "2:6-2:9", "spelling": "2:6-2:9",
"extent": "2:1-2:11", "extent": "2:1-2:11",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}, { }, {
"spelling": "4:6-4:9", "spelling": "4:6-4:9",
"extent": "4:1-4:11", "extent": "4:1-4:11",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}], }],
"definition_spelling": "3:6-3:9", "definition_spelling": "3:6-3:9",
"definition_extent": "3:1-3:14" "definition_extent": "3:1-3:14",
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -7,6 +7,9 @@ int foo(int a, int b) { return 0; }
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -30,7 +33,11 @@ OUTPUT:
"param_spellings": ["4:13-4:16", "4:22-4:25"] "param_spellings": ["4:13-4:16", "4:22-4:25"]
}], }],
"definition_spelling": "5:5-5:8", "definition_spelling": "5:5-5:8",
"definition_extent": "5:1-5:36" "definition_extent": "5:1-5:36",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -9,6 +9,8 @@ void Foo::def() {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -16,7 +18,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-5:2", "definition_extent": "1:1-5:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0, 1, 2], "funcs": [0, 1, 2],
"vars": [],
"instances": [],
"uses": ["1:7-1:10", "7:6-7:9"] "uses": ["1:7-1:10", "7:6-7:9"]
}], }],
"funcs": [{ "funcs": [{
@ -28,9 +35,14 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:8-2:16", "spelling": "2:8-2:16",
"extent": "2:3-2:18", "extent": "2:3-2:18",
"content": "void declonly()" "content": "void declonly()",
"param_spellings": []
}], }],
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
@ -40,9 +52,14 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "3:16-3:27", "spelling": "3:16-3:27",
"extent": "3:3-3:33", "extent": "3:3-3:33",
"content": "virtual void purevirtual() = 0" "content": "virtual void purevirtual() = 0",
"param_spellings": []
}], }],
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
@ -52,11 +69,17 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "4:8-4:11", "spelling": "4:8-4:11",
"extent": "4:3-4:13", "extent": "4:3-4:13",
"content": "void def()" "content": "void def()",
"param_spellings": []
}], }],
"definition_spelling": "7:11-7:14", "definition_spelling": "7:11-7:14",
"definition_extent": "7:1-7:19", "definition_extent": "7:1-7:19",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -6,6 +6,8 @@ enum class Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo", "usr": "c:@E@Foo",
@ -13,9 +15,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:12-1:15", "definition_spelling": "1:12-1:15",
"definition_extent": "1:1-4:2", "definition_extent": "1:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1], "vars": [0, 1],
"instances": [],
"uses": ["1:12-1:15"] "uses": ["1:12-1:15"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo@A", "usr": "c:@E@Foo@A",

View File

@ -6,6 +6,8 @@ enum Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo", "usr": "c:@E@Foo",
@ -13,9 +15,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:6-1:9", "definition_spelling": "1:6-1:9",
"definition_extent": "1:1-4:2", "definition_extent": "1:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1], "vars": [0, 1],
"instances": [],
"uses": ["1:6-1:9"] "uses": ["1:6-1:9"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo@A", "usr": "c:@E@Foo@A",

View File

@ -6,6 +6,8 @@ enum Foo : int {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo", "usr": "c:@E@Foo",
@ -13,9 +15,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:6-1:9", "definition_spelling": "1:6-1:9",
"definition_extent": "1:1-4:2", "definition_extent": "1:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1], "vars": [0, 1],
"instances": [],
"uses": ["1:6-1:9"] "uses": ["1:6-1:9"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo@A", "usr": "c:@E@Foo@A",

View File

@ -8,6 +8,8 @@ Foo x = Foo::A;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo", "usr": "c:@E@Foo",
@ -15,10 +17,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:12-1:15", "definition_spelling": "1:12-1:15",
"definition_extent": "1:1-4:2", "definition_extent": "1:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1], "vars": [0, 1],
"instances": [2], "instances": [2],
"uses": ["1:12-1:15", "6:1-6:4", "6:9-6:12"] "uses": ["1:12-1:15", "6:1-6:4", "6:9-6:12"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo@A", "usr": "c:@E@Foo@A",

View File

@ -11,6 +11,8 @@ Foo<B> b;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@E@A", "usr": "c:@E@A",
@ -18,6 +20,12 @@ OUTPUT:
"detailed_name": "A", "detailed_name": "A",
"definition_spelling": "1:6-1:7", "definition_spelling": "1:6-1:7",
"definition_extent": "1:1-1:10", "definition_extent": "1:1-1:10",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:6-1:7", "9:5-9:6"] "uses": ["1:6-1:7", "9:5-9:6"]
}, { }, {
"id": 1, "id": 1,
@ -26,6 +34,12 @@ OUTPUT:
"detailed_name": "B", "detailed_name": "B",
"definition_spelling": "2:6-2:7", "definition_spelling": "2:6-2:7",
"definition_extent": "2:1-2:10", "definition_extent": "2:1-2:10",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:6-2:7", "10:5-10:6"] "uses": ["2:6-2:7", "10:5-10:6"]
}, { }, {
"id": 2, "id": 2,
@ -34,6 +48,11 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "5:8-5:11", "definition_spelling": "5:8-5:11",
"definition_extent": "5:1-7:2", "definition_extent": "5:1-7:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [1], "instances": [1],
"uses": ["5:8-5:11", "9:1-9:4", "10:1-10:4"] "uses": ["5:8-5:11", "9:1-9:4", "10:1-10:4"]
}, { }, {
@ -43,9 +62,15 @@ OUTPUT:
"detailed_name": "Foo::Inner", "detailed_name": "Foo::Inner",
"definition_spelling": "6:10-6:15", "definition_spelling": "6:10-6:15",
"definition_extent": "6:3-6:18", "definition_extent": "6:3-6:18",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["6:10-6:15", "9:9-9:14"] "uses": ["6:10-6:15", "9:9-9:14"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@a", "usr": "c:@a",

View File

@ -3,6 +3,9 @@ void foo(int a, int b);
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -14,7 +17,12 @@ OUTPUT:
"extent": "1:1-1:23", "extent": "1:1-1:23",
"content": "void foo(int a, int b)", "content": "void foo(int a, int b)",
"param_spellings": ["1:14-1:15", "1:21-1:22"] "param_spellings": ["1:14-1:15", "1:21-1:22"]
}] }],
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -5,6 +5,9 @@ void foo() {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -14,10 +17,16 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "1:6-1:9", "spelling": "1:6-1:9",
"extent": "1:1-1:11", "extent": "1:1-1:11",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}], }],
"definition_spelling": "3:6-3:9", "definition_spelling": "3:6-3:9",
"definition_extent": "3:1-3:14" "definition_extent": "3:1-3:14",
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -3,14 +3,23 @@ void foo() {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "1:6-1:9", "definition_spelling": "1:6-1:9",
"definition_extent": "1:1-1:14" "definition_extent": "1:1-1:14",
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -4,6 +4,8 @@ class Derived : public Parent {};
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Parent", "usr": "c:@S@Parent",
@ -11,7 +13,12 @@ OUTPUT:
"detailed_name": "Parent", "detailed_name": "Parent",
"definition_spelling": "1:7-1:13", "definition_spelling": "1:7-1:13",
"definition_extent": "1:1-1:16", "definition_extent": "1:1-1:16",
"parents": [],
"derived": [1], "derived": [1],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:7-1:13", "2:24-2:30"] "uses": ["1:7-1:13", "2:24-2:30"]
}, { }, {
"id": 1, "id": 1,
@ -21,7 +28,14 @@ OUTPUT:
"definition_spelling": "2:7-2:14", "definition_spelling": "2:7-2:14",
"definition_extent": "2:1-2:33", "definition_extent": "2:1-2:33",
"parents": [0], "parents": [0],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:7-2:14"] "uses": ["2:7-2:14"]
}] }],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -15,6 +15,8 @@ class Derived : Base1<3>, Base2<Derived>, Derived1<4>, Derived2<Derived> {};
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#Ni@Base1", "usr": "c:@ST>1#Ni@Base1",
@ -22,7 +24,12 @@ OUTPUT:
"detailed_name": "Base1", "detailed_name": "Base1",
"definition_spelling": "2:7-2:12", "definition_spelling": "2:7-2:12",
"definition_extent": "2:1-2:15", "definition_extent": "2:1-2:15",
"parents": [],
"derived": [2, 5], "derived": [2, 5],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:7-2:12", "8:18-8:23", "13:17-13:22"] "uses": ["2:7-2:12", "8:18-8:23", "13:17-13:22"]
}, { }, {
"id": 1, "id": 1,
@ -31,7 +38,12 @@ OUTPUT:
"detailed_name": "Base2", "detailed_name": "Base2",
"definition_spelling": "5:7-5:12", "definition_spelling": "5:7-5:12",
"definition_extent": "5:1-5:15", "definition_extent": "5:1-5:15",
"parents": [],
"derived": [3, 5], "derived": [3, 5],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["5:7-5:12", "11:18-11:23", "13:27-13:32"] "uses": ["5:7-5:12", "11:18-11:23", "13:27-13:32"]
}, { }, {
"id": 2, "id": 2,
@ -42,6 +54,10 @@ OUTPUT:
"definition_extent": "8:1-8:29", "definition_extent": "8:1-8:29",
"parents": [0], "parents": [0],
"derived": [5], "derived": [5],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["8:7-8:15", "13:43-13:51"] "uses": ["8:7-8:15", "13:43-13:51"]
}, { }, {
"id": 3, "id": 3,
@ -52,12 +68,22 @@ OUTPUT:
"definition_extent": "11:1-11:29", "definition_extent": "11:1-11:29",
"parents": [1], "parents": [1],
"derived": [5], "derived": [5],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["11:7-11:15", "13:56-13:64"] "uses": ["11:7-11:15", "13:56-13:64"]
}, { }, {
"id": 4, "id": 4,
"usr": "c:class_inherit_templated_parent.cc@154", "usr": "c:class_inherit_templated_parent.cc@154",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["11:24-11:25"] "uses": ["11:24-11:25"]
}, { }, {
"id": 5, "id": 5,
@ -67,7 +93,14 @@ OUTPUT:
"definition_spelling": "13:7-13:14", "definition_spelling": "13:7-13:14",
"definition_extent": "13:1-13:76", "definition_extent": "13:1-13:76",
"parents": [0, 1, 2, 3], "parents": [0, 1, 2, 3],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["13:7-13:14", "13:33-13:40", "13:65-13:72"] "uses": ["13:7-13:14", "13:33-13:40", "13:65-13:72"]
}] }],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -6,6 +6,8 @@ class Derived : public MiddleA, public MiddleB {};
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Root", "usr": "c:@S@Root",
@ -13,7 +15,12 @@ OUTPUT:
"detailed_name": "Root", "detailed_name": "Root",
"definition_spelling": "1:7-1:11", "definition_spelling": "1:7-1:11",
"definition_extent": "1:1-1:14", "definition_extent": "1:1-1:14",
"parents": [],
"derived": [1, 2], "derived": [1, 2],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:7-1:11", "2:24-2:28", "3:24-3:28"] "uses": ["1:7-1:11", "2:24-2:28", "3:24-3:28"]
}, { }, {
"id": 1, "id": 1,
@ -24,6 +31,10 @@ OUTPUT:
"definition_extent": "2:1-2:31", "definition_extent": "2:1-2:31",
"parents": [0], "parents": [0],
"derived": [3], "derived": [3],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:7-2:14", "4:24-4:31"] "uses": ["2:7-2:14", "4:24-4:31"]
}, { }, {
"id": 2, "id": 2,
@ -34,6 +45,10 @@ OUTPUT:
"definition_extent": "3:1-3:31", "definition_extent": "3:1-3:31",
"parents": [0], "parents": [0],
"derived": [3], "derived": [3],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["3:7-3:14", "4:40-4:47"] "uses": ["3:7-3:14", "4:40-4:47"]
}, { }, {
"id": 3, "id": 3,
@ -43,7 +58,14 @@ OUTPUT:
"definition_spelling": "4:7-4:14", "definition_spelling": "4:7-4:14",
"definition_extent": "4:1-4:50", "definition_extent": "4:1-4:50",
"parents": [1, 2], "parents": [1, 2],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["4:7-4:14"] "uses": ["4:7-4:14"]
}] }],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -8,6 +8,8 @@ class Derived : public Root {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Root", "usr": "c:@S@Root",
@ -15,8 +17,12 @@ OUTPUT:
"detailed_name": "Root", "detailed_name": "Root",
"definition_spelling": "1:7-1:11", "definition_spelling": "1:7-1:11",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [1], "derived": [1],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["1:7-1:11", "4:24-4:28"] "uses": ["1:7-1:11", "4:24-4:28"]
}, { }, {
"id": 1, "id": 1,
@ -26,7 +32,11 @@ OUTPUT:
"definition_spelling": "4:7-4:14", "definition_spelling": "4:7-4:14",
"definition_extent": "4:1-6:2", "definition_extent": "4:1-6:2",
"parents": [0], "parents": [0],
"derived": [],
"types": [],
"funcs": [1], "funcs": [1],
"vars": [],
"instances": [],
"uses": ["4:7-4:14"] "uses": ["4:7-4:14"]
}], }],
"funcs": [{ "funcs": [{
@ -38,20 +48,30 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:16-2:19", "spelling": "2:16-2:19",
"extent": "2:3-2:21", "extent": "2:3-2:21",
"content": "virtual void foo()" "content": "virtual void foo()",
"param_spellings": []
}], }],
"declaring_type": 0, "declaring_type": 0,
"derived": [1] "derived": [1],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@S@Derived@F@foo#", "usr": "c:@S@Derived@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void Derived::foo()", "detailed_name": "void Derived::foo()",
"declarations": [],
"definition_spelling": "5:8-5:11", "definition_spelling": "5:8-5:11",
"definition_extent": "5:3-5:25", "definition_extent": "5:3-5:25",
"declaring_type": 1, "declaring_type": 1,
"base": 0 "base": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -5,6 +5,8 @@ class IFoo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@IFoo", "usr": "c:@S@IFoo",
@ -12,7 +14,12 @@ OUTPUT:
"detailed_name": "IFoo", "detailed_name": "IFoo",
"definition_spelling": "1:7-1:11", "definition_spelling": "1:7-1:11",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["1:7-1:11"] "uses": ["1:7-1:11"]
}], }],
"funcs": [{ "funcs": [{
@ -21,9 +28,15 @@ OUTPUT:
"usr": "c:@S@IFoo@F@foo#", "usr": "c:@S@IFoo@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void IFoo::foo()", "detailed_name": "void IFoo::foo()",
"declarations": [],
"definition_spelling": "2:16-2:19", "definition_spelling": "2:16-2:19",
"definition_extent": "2:3-2:28", "definition_extent": "2:3-2:28",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -14,12 +14,20 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:lambda.cc@47@F@foo#@Sa", "usr": "c:lambda.cc@47@F@foo#@Sa",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"instances": [1] "parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [1],
"uses": []
}], }],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
@ -27,8 +35,12 @@ OUTPUT:
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "1:6-1:9", "definition_spelling": "1:6-1:9",
"definition_extent": "1:1-12:2", "definition_extent": "1:1-12:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["1@9:14-9:15", "1@10:14-10:15", "1@11:14-11:15"] "callees": ["1@9:14-9:15", "1@10:14-10:15", "1@11:14-11:15"]
}, { }, {
"id": 1, "id": 1,
@ -36,7 +48,11 @@ OUTPUT:
"usr": "c:lambda.cc@57@F@foo#@Sa@F@operator()#I#1", "usr": "c:lambda.cc@57@F@foo#@Sa@F@operator()#I#1",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"callers": ["0@9:14-9:15", "0@10:14-10:15", "0@11:14-11:15"] "declarations": [],
"derived": [],
"locals": [],
"callers": ["0@9:14-9:15", "0@10:14-10:15", "0@11:14-11:15"],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -14,15 +14,22 @@ FOO(make1(), make2);
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@F@make1#", "usr": "c:@F@make1#",
"short_name": "make1", "short_name": "make1",
"detailed_name": "int make1()", "detailed_name": "int make1()",
"declarations": [],
"definition_spelling": "6:5-6:10", "definition_spelling": "6:5-6:10",
"definition_extent": "6:1-8:2", "definition_extent": "6:1-8:2",
"callers": ["1@12:5-12:10"] "derived": [],
"locals": [],
"callers": ["1@12:5-12:10"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
@ -32,10 +39,14 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "12:1-12:20", "spelling": "12:1-12:20",
"extent": "12:1-12:20", "extent": "12:1-12:20",
"content": "int a();\n int a() { return aaa + bbb; }\n\n\n int make1() {\n return 3;\n }\n const int make2 = 5;\n\n\n FOO(make1(), make2)" "content": "int a();\n int a() { return aaa + bbb; }\n\n\n int make1() {\n return 3;\n }\n const int make2 = 5;\n\n\n FOO(make1(), make2)",
"param_spellings": []
}], }],
"definition_spelling": "12:1-12:20", "definition_spelling": "12:1-12:20",
"definition_extent": "12:1-12:20", "definition_extent": "12:1-12:20",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@12:5-12:10"] "callees": ["0@12:5-12:10"]
}], }],
"vars": [{ "vars": [{

View File

@ -10,6 +10,8 @@ int x = A;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -17,7 +19,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "4:8-4:11", "definition_spelling": "4:8-4:11",
"definition_extent": "4:1-6:2", "definition_extent": "4:1-6:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["4:8-4:11", "5:12-5:15"] "uses": ["4:8-4:11", "5:12-5:15"]
}], }],
"funcs": [{ "funcs": [{
@ -26,9 +33,14 @@ OUTPUT:
"usr": "c:@S@Foo@F@Foo#&&$@S@Foo#", "usr": "c:@S@Foo@F@Foo#&&$@S@Foo#",
"short_name": "Foo", "short_name": "Foo",
"detailed_name": "void Foo::Foo(Foo &&)", "detailed_name": "void Foo::Foo(Foo &&)",
"declarations": [],
"definition_spelling": "5:12-5:15", "definition_spelling": "5:12-5:15",
"definition_extent": "5:12-5:16", "definition_extent": "5:12-5:16",
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -9,6 +9,8 @@ class Foo {
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -16,7 +18,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["1:7-1:10"] "uses": ["1:7-1:10"]
}], }],
"funcs": [{ "funcs": [{
@ -28,9 +35,15 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:8-2:11", "spelling": "2:8-2:11",
"extent": "2:3-2:13", "extent": "2:3-2:13",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}], }],
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -7,6 +7,8 @@ void Foo::foo() const {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -14,7 +16,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["1:7-1:10", "5:6-5:9"] "uses": ["1:7-1:10", "5:6-5:9"]
}], }],
"funcs": [{ "funcs": [{
@ -26,11 +33,17 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:8-2:11", "spelling": "2:8-2:11",
"extent": "2:3-2:19", "extent": "2:3-2:19",
"content": "void foo() const" "content": "void foo() const",
"param_spellings": []
}], }],
"definition_spelling": "5:11-5:14", "definition_spelling": "5:11-5:14",
"definition_extent": "5:1-5:25", "definition_extent": "5:1-5:25",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -5,6 +5,8 @@ class Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -12,7 +14,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["1:7-1:10"] "uses": ["1:7-1:10"]
}], }],
"funcs": [{ "funcs": [{
@ -21,9 +28,15 @@ OUTPUT:
"usr": "c:@S@Foo@F@foo#", "usr": "c:@S@Foo@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void Foo::foo()", "detailed_name": "void Foo::foo()",
"declarations": [],
"definition_spelling": "2:8-2:11", "definition_spelling": "2:8-2:11",
"definition_extent": "2:3-2:16", "definition_extent": "2:3-2:16",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -8,13 +8,22 @@ enum Foo {
OUTPUT: funky_enum.h OUTPUT: funky_enum.h
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo", "usr": "c:@E@Foo",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"vars": [0, 1, 2] "parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1, 2],
"instances": [],
"uses": []
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo@A", "usr": "c:@E@Foo@A",
@ -59,6 +68,7 @@ OUTPUT: funky_enum.cc
"line": 2, "line": 2,
"resolved_path": "&funky_enum.h" "resolved_path": "&funky_enum.h"
}], }],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@E@Foo", "usr": "c:@E@Foo",
@ -66,7 +76,15 @@ OUTPUT: funky_enum.cc
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:6-1:9", "definition_spelling": "1:6-1:9",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:6-1:9"] "uses": ["1:6-1:9"]
}] }],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -7,6 +7,8 @@ void Impl() {
/* /*
OUTPUT: header.h OUTPUT: header.h
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Base", "usr": "c:@S@Base",
@ -14,7 +16,12 @@ OUTPUT: header.h
"detailed_name": "Base", "detailed_name": "Base",
"definition_spelling": "3:8-3:12", "definition_spelling": "3:8-3:12",
"definition_extent": "3:1-3:15", "definition_extent": "3:1-3:15",
"parents": [],
"derived": [1], "derived": [1],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["3:8-3:12", "5:26-5:30"] "uses": ["3:8-3:12", "5:26-5:30"]
}, { }, {
"id": 1, "id": 1,
@ -24,6 +31,11 @@ OUTPUT: header.h
"definition_spelling": "5:8-5:23", "definition_spelling": "5:8-5:23",
"definition_extent": "5:1-5:33", "definition_extent": "5:1-5:33",
"parents": [0], "parents": [0],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["5:8-5:23", "7:14-7:29"] "uses": ["5:8-5:23", "7:14-7:29"]
}, { }, {
"id": 2, "id": 2,
@ -33,6 +45,12 @@ OUTPUT: header.h
"definition_spelling": "7:7-7:11", "definition_spelling": "7:7-7:11",
"definition_extent": "7:1-7:29", "definition_extent": "7:1-7:29",
"alias_of": 1, "alias_of": 1,
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["7:7-7:11"] "uses": ["7:7-7:11"]
}, { }, {
"id": 3, "id": 3,
@ -41,6 +59,12 @@ OUTPUT: header.h
"detailed_name": "Foo2", "detailed_name": "Foo2",
"definition_spelling": "13:8-13:12", "definition_spelling": "13:8-13:12",
"definition_extent": "13:1-13:15", "definition_extent": "13:1-13:15",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["13:8-13:12"] "uses": ["13:8-13:12"]
}, { }, {
"id": 4, "id": 4,
@ -49,7 +73,12 @@ OUTPUT: header.h
"detailed_name": "Foo3", "detailed_name": "Foo3",
"definition_spelling": "15:6-15:10", "definition_spelling": "15:6-15:10",
"definition_extent": "15:1-15:22", "definition_extent": "15:1-15:22",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1, 2], "vars": [0, 1, 2],
"instances": [],
"uses": ["15:6-15:10"] "uses": ["15:6-15:10"]
}], }],
"funcs": [{ "funcs": [{
@ -58,8 +87,13 @@ OUTPUT: header.h
"usr": "c:@FT@>1#TFoo1#v#", "usr": "c:@FT@>1#TFoo1#v#",
"short_name": "Foo1", "short_name": "Foo1",
"detailed_name": "void Foo1()", "detailed_name": "void Foo1()",
"declarations": [],
"definition_spelling": "10:6-10:10", "definition_spelling": "10:6-10:10",
"definition_extent": "10:1-10:15" "definition_extent": "10:1-10:15",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,
@ -125,14 +159,20 @@ OUTPUT: impl.cc
"line": 1, "line": 1,
"resolved_path": "&header.h" "resolved_path": "&header.h"
}], }],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@F@Impl#", "usr": "c:@F@Impl#",
"short_name": "Impl", "short_name": "Impl",
"detailed_name": "void Impl()", "detailed_name": "void Impl()",
"declarations": [],
"definition_spelling": "3:6-3:10", "definition_spelling": "3:6-3:10",
"definition_extent": "3:1-5:2", "definition_extent": "3:1-5:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["1@4:3-4:7"] "callees": ["1@4:3-4:7"]
}, { }, {
"id": 1, "id": 1,
@ -140,7 +180,12 @@ OUTPUT: impl.cc
"usr": "c:@FT@>1#TFoo1#v#", "usr": "c:@FT@>1#TFoo1#v#",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"callers": ["0@4:3-4:7"] "declarations": [],
}] "derived": [],
"locals": [],
"callers": ["0@4:3-4:7"],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -7,6 +7,9 @@ void impl() {
/* /*
OUTPUT: simple_header.h OUTPUT: simple_header.h
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -16,9 +19,15 @@ OUTPUT: simple_header.h
"declarations": [{ "declarations": [{
"spelling": "3:6-3:12", "spelling": "3:6-3:12",
"extent": "3:1-3:14", "extent": "3:1-3:14",
"content": "void header()" "content": "void header()",
}] "param_spellings": []
}] }],
"derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
OUTPUT: simple_impl.cc OUTPUT: simple_impl.cc
{ {
@ -26,14 +35,20 @@ OUTPUT: simple_impl.cc
"line": 1, "line": 1,
"resolved_path": "&simple_header.h" "resolved_path": "&simple_header.h"
}], }],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@F@impl#", "usr": "c:@F@impl#",
"short_name": "impl", "short_name": "impl",
"detailed_name": "void impl()", "detailed_name": "void impl()",
"declarations": [],
"definition_spelling": "3:6-3:10", "definition_spelling": "3:6-3:10",
"definition_extent": "3:1-5:2", "definition_extent": "3:1-5:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["1@4:3-4:9"] "callees": ["1@4:3-4:9"]
}, { }, {
"id": 1, "id": 1,
@ -41,7 +56,12 @@ OUTPUT: simple_impl.cc
"usr": "c:@F@header#", "usr": "c:@F@header#",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"callers": ["0@4:3-4:9"] "declarations": [],
}] "derived": [],
"locals": [],
"callers": ["0@4:3-4:9"],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -5,6 +5,8 @@ void Buffer::CreateSharedBuffer() {}
/* /*
OUTPUT: static.h OUTPUT: static.h
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Buffer", "usr": "c:@S@Buffer",
@ -12,7 +14,12 @@ OUTPUT: static.h
"detailed_name": "Buffer", "detailed_name": "Buffer",
"definition_spelling": "3:8-3:14", "definition_spelling": "3:8-3:14",
"definition_extent": "3:1-5:2", "definition_extent": "3:1-5:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["3:8-3:14"] "uses": ["3:8-3:14"]
}], }],
"funcs": [{ "funcs": [{
@ -24,10 +31,16 @@ OUTPUT: static.h
"declarations": [{ "declarations": [{
"spelling": "4:15-4:33", "spelling": "4:15-4:33",
"extent": "4:3-4:35", "extent": "4:3-4:35",
"content": "static void CreateSharedBuffer()" "content": "static void CreateSharedBuffer()",
"param_spellings": []
}], }],
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
OUTPUT: static.cc OUTPUT: static.cc
{ {
@ -35,12 +48,18 @@ OUTPUT: static.cc
"line": 1, "line": 1,
"resolved_path": "&static.h" "resolved_path": "&static.h"
}], }],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Buffer", "usr": "c:@S@Buffer",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["3:6-3:12"] "uses": ["3:6-3:12"]
}], }],
"funcs": [{ "funcs": [{
@ -49,9 +68,15 @@ OUTPUT: static.cc
"usr": "c:@S@Buffer@F@CreateSharedBuffer#S", "usr": "c:@S@Buffer@F@CreateSharedBuffer#S",
"short_name": "CreateSharedBuffer", "short_name": "CreateSharedBuffer",
"detailed_name": "void Buffer::CreateSharedBuffer()", "detailed_name": "void Buffer::CreateSharedBuffer()",
"declarations": [],
"definition_spelling": "3:14-3:32", "definition_spelling": "3:14-3:32",
"definition_extent": "3:1-3:37", "definition_extent": "3:1-3:37",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -5,6 +5,9 @@ void foo();
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -14,8 +17,14 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:6-2:9", "spelling": "2:6-2:9",
"extent": "2:1-2:11", "extent": "2:1-2:11",
"content": "void foo()" "content": "void foo()",
}] "param_spellings": []
}] }],
"derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -5,6 +5,9 @@ void foo(int a, int b);
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -16,7 +19,12 @@ OUTPUT:
"extent": "2:1-2:23", "extent": "2:1-2:23",
"content": "void foo(int a, int b)", "content": "void foo(int a, int b)",
"param_spellings": ["2:14-2:15", "2:21-2:22"] "param_spellings": ["2:14-2:15", "2:21-2:22"]
}] }],
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -5,14 +5,23 @@ void foo() {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@N@hello@F@foo#", "usr": "c:@N@hello@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void hello::foo()", "detailed_name": "void hello::foo()",
"declarations": [],
"definition_spelling": "2:6-2:9", "definition_spelling": "2:6-2:9",
"definition_extent": "2:1-2:14" "definition_extent": "2:1-2:14",
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -7,6 +7,8 @@ class Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@N@hello@S@Foo", "usr": "c:@N@hello@S@Foo",
@ -14,7 +16,12 @@ OUTPUT:
"detailed_name": "hello::Foo", "detailed_name": "hello::Foo",
"definition_spelling": "2:7-2:10", "definition_spelling": "2:7-2:10",
"definition_extent": "2:1-4:2", "definition_extent": "2:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["2:7-2:10"] "uses": ["2:7-2:10"]
}], }],
"funcs": [{ "funcs": [{
@ -26,9 +33,15 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "3:8-3:11", "spelling": "3:8-3:11",
"extent": "3:3-3:13", "extent": "3:3-3:13",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}], }],
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -9,6 +9,8 @@ void Foo::foo() {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@N@hello@S@Foo", "usr": "c:@N@hello@S@Foo",
@ -16,7 +18,12 @@ OUTPUT:
"detailed_name": "hello::Foo", "detailed_name": "hello::Foo",
"definition_spelling": "2:7-2:10", "definition_spelling": "2:7-2:10",
"definition_extent": "2:1-4:2", "definition_extent": "2:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["2:7-2:10", "6:6-6:9"] "uses": ["2:7-2:10", "6:6-6:9"]
}], }],
"funcs": [{ "funcs": [{
@ -28,11 +35,17 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "3:8-3:11", "spelling": "3:8-3:11",
"extent": "3:3-3:13", "extent": "3:3-3:13",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}], }],
"definition_spelling": "6:11-6:14", "definition_spelling": "6:11-6:14",
"definition_extent": "6:1-6:19", "definition_extent": "6:1-6:19",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -7,6 +7,8 @@ class Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@N@hello@S@Foo", "usr": "c:@N@hello@S@Foo",
@ -14,7 +16,12 @@ OUTPUT:
"detailed_name": "hello::Foo", "detailed_name": "hello::Foo",
"definition_spelling": "2:7-2:10", "definition_spelling": "2:7-2:10",
"definition_extent": "2:1-4:2", "definition_extent": "2:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["2:7-2:10"] "uses": ["2:7-2:10"]
}], }],
"funcs": [{ "funcs": [{
@ -23,9 +30,15 @@ OUTPUT:
"usr": "c:@N@hello@S@Foo@F@foo#", "usr": "c:@N@hello@S@Foo@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void hello::Foo::foo()", "detailed_name": "void hello::Foo::foo()",
"declarations": [],
"definition_spelling": "3:8-3:11", "definition_spelling": "3:8-3:11",
"definition_extent": "3:3-3:16", "definition_extent": "3:3-3:16",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -16,14 +16,22 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "11:6-11:9", "definition_spelling": "11:6-11:9",
"definition_extent": "11:1-14:2" "definition_extent": "11:1-14:2",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -12,23 +12,34 @@ void Runner() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@N@ns@F@Accept#I#", "usr": "c:@N@ns@F@Accept#I#",
"short_name": "Accept", "short_name": "Accept",
"detailed_name": "void ns::Accept(int)", "detailed_name": "void ns::Accept(int)",
"declarations": [],
"definition_spelling": "3:8-3:14", "definition_spelling": "3:8-3:14",
"definition_extent": "3:3-3:24", "definition_extent": "3:3-3:24",
"callers": ["1@7:7-7:13", "1@9:3-9:9"] "derived": [],
"locals": [],
"callers": ["1@7:7-7:13", "1@9:3-9:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@Runner#", "usr": "c:@F@Runner#",
"short_name": "Runner", "short_name": "Runner",
"detailed_name": "void Runner()", "detailed_name": "void Runner()",
"declarations": [],
"definition_spelling": "6:6-6:12", "definition_spelling": "6:6-6:12",
"definition_extent": "6:1-10:2", "definition_extent": "6:1-10:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@7:7-7:13", "0@9:3-9:9"] "callees": ["0@7:7-7:13", "0@9:3-9:9"]
}], }],
"vars": [{ "vars": [{

View File

@ -9,6 +9,8 @@ friend Foo &operator += (const Foo&, const Type&);
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -16,7 +18,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-5:2", "definition_extent": "1:1-5:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0, 1, 2], "funcs": [0, 1, 2],
"vars": [],
"instances": [],
"uses": ["1:7-1:10", "7:8-7:11", "7:32-7:35"] "uses": ["1:7-1:10", "7:8-7:11", "7:32-7:35"]
}], }],
"funcs": [{ "funcs": [{
@ -25,9 +32,14 @@ OUTPUT:
"usr": "c:@S@Foo@F@operator()#I#", "usr": "c:@S@Foo@F@operator()#I#",
"short_name": "operator()", "short_name": "operator()",
"detailed_name": "void Foo::operator()(int)", "detailed_name": "void Foo::operator()(int)",
"declarations": [],
"definition_spelling": "2:8-2:18", "definition_spelling": "2:8-2:18",
"definition_extent": "2:3-2:27", "definition_extent": "2:3-2:27",
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": true, "is_operator": true,
@ -40,7 +52,11 @@ OUTPUT:
"content": "void operator()(bool)", "content": "void operator()(bool)",
"param_spellings": ["3:23-3:23"] "param_spellings": ["3:23-3:23"]
}], }],
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": true, "is_operator": true,
@ -53,7 +69,11 @@ OUTPUT:
"content": "int operator()(int a, int b)", "content": "int operator()(int a, int b)",
"param_spellings": ["4:22-4:23", "4:29-4:30"] "param_spellings": ["4:22-4:23", "4:29-4:30"]
}], }],
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 3, "id": 3,
"is_operator": true, "is_operator": true,
@ -65,7 +85,12 @@ OUTPUT:
"extent": "7:1-7:50", "extent": "7:1-7:50",
"content": "friend Foo &operator += (const Foo&, const Type&)", "content": "friend Foo &operator += (const Foo&, const Type&)",
"param_spellings": ["7:36-7:36", "7:49-7:49"] "param_spellings": ["7:36-7:36", "7:49-7:49"]
}] }],
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -13,6 +13,7 @@ OUTPUT:
"line": 1, "line": 1,
"resolved_path": "&vector" "resolved_path": "&vector"
}], }],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@MergeableUpdate", "usr": "c:@S@MergeableUpdate",
@ -20,16 +21,27 @@ OUTPUT:
"detailed_name": "MergeableUpdate", "detailed_name": "MergeableUpdate",
"definition_spelling": "3:8-3:23", "definition_spelling": "3:8-3:23",
"definition_extent": "3:1-7:2", "definition_extent": "3:1-7:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1, 2], "vars": [0, 1, 2],
"instances": [],
"uses": ["3:8-3:23"] "uses": ["3:8-3:23"]
}, { }, {
"id": 1, "id": 1,
"usr": "c:@N@std@ST>2#T#T@vector", "usr": "c:@N@std@ST>2#T#T@vector",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [2], "instances": [2],
"uses": ["6:8-6:14"] "uses": ["6:8-6:14"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@S@MergeableUpdate@FI@a", "usr": "c:@S@MergeableUpdate@FI@a",

View File

@ -21,6 +21,7 @@ OUTPUT:
"line": 4, "line": 4,
"resolved_path": "&vector" "resolved_path": "&vector"
}], }],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@CompilationEntry", "usr": "c:@S@CompilationEntry",
@ -28,13 +29,23 @@ OUTPUT:
"detailed_name": "CompilationEntry", "detailed_name": "CompilationEntry",
"definition_spelling": "6:8-6:24", "definition_spelling": "6:8-6:24",
"definition_extent": "6:1-10:2", "definition_extent": "6:1-10:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1, 2], "vars": [0, 1, 2],
"instances": [],
"uses": ["6:8-6:24", "12:13-12:29"] "uses": ["6:8-6:24", "12:13-12:29"]
}, { }, {
"id": 1, "id": 1,
"usr": "c:@N@std@T@string", "usr": "c:@N@std@T@string",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0, 1], "instances": [0, 1],
"uses": ["7:8-7:14", "8:8-8:14", "9:20-9:26"] "uses": ["7:8-7:14", "8:8-8:14", "9:20-9:26"]
}, { }, {
@ -42,6 +53,11 @@ OUTPUT:
"usr": "c:@N@std@ST>2#T#T@vector", "usr": "c:@N@std@ST>2#T#T@vector",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [2], "instances": [2],
"uses": ["9:8-9:14", "12:6-12:12"] "uses": ["9:8-9:14", "12:6-12:12"]
}], }],
@ -56,7 +72,11 @@ OUTPUT:
"extent": "12:1-12:104", "extent": "12:1-12:104",
"content": "std::vector<CompilationEntry> LoadCompilationEntriesFromDirectory(const std::string& project_directory)", "content": "std::vector<CompilationEntry> LoadCompilationEntriesFromDirectory(const std::string& project_directory)",
"param_spellings": ["12:86-12:103"] "param_spellings": ["12:86-12:103"]
}] }],
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -9,11 +9,19 @@ void Foo::Register(Manager* m) {
/* /*
OUTPUT: static_function_in_type.h OUTPUT: static_function_in_type.h
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@N@ns@S@Manager", "usr": "c:@N@ns@S@Manager",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["3:7-3:14", "6:24-6:31"] "uses": ["3:7-3:14", "6:24-6:31"]
}, { }, {
"id": 1, "id": 1,
@ -22,7 +30,12 @@ OUTPUT: static_function_in_type.h
"detailed_name": "ns::Foo", "detailed_name": "ns::Foo",
"definition_spelling": "5:8-5:11", "definition_spelling": "5:8-5:11",
"definition_extent": "5:1-7:2", "definition_extent": "5:1-7:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["5:8-5:11"] "uses": ["5:8-5:11"]
}], }],
"funcs": [{ "funcs": [{
@ -37,8 +50,13 @@ OUTPUT: static_function_in_type.h
"content": "static void Register(Manager*)", "content": "static void Register(Manager*)",
"param_spellings": ["6:32-6:32"] "param_spellings": ["6:32-6:32"]
}], }],
"declaring_type": 1 "declaring_type": 1,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
OUTPUT: static_function_in_type.cc OUTPUT: static_function_in_type.cc
{ {
@ -46,18 +64,29 @@ OUTPUT: static_function_in_type.cc
"line": 1, "line": 1,
"resolved_path": "&static_function_in_type.h" "resolved_path": "&static_function_in_type.h"
}], }],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@N@ns@S@Foo", "usr": "c:@N@ns@S@Foo",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["5:6-5:9"] "uses": ["5:6-5:9"]
}, { }, {
"id": 1, "id": 1,
"usr": "c:@N@ns@S@Manager", "usr": "c:@N@ns@S@Manager",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["5:20-5:27"] "uses": ["5:20-5:27"]
}], }],
@ -67,9 +96,14 @@ OUTPUT: static_function_in_type.cc
"usr": "c:@N@ns@S@Foo@F@Register#*$@N@ns@S@Manager#S", "usr": "c:@N@ns@S@Foo@F@Register#*$@N@ns@S@Manager#S",
"short_name": "Register", "short_name": "Register",
"detailed_name": "void ns::Foo::Register(ns::Manager *)", "detailed_name": "void ns::Foo::Register(ns::Manager *)",
"declarations": [],
"definition_spelling": "5:11-5:19", "definition_spelling": "5:11-5:19",
"definition_extent": "5:1-6:2", "definition_extent": "5:1-6:2",
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -6,6 +6,10 @@
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:include_guard.cc@21@macro@FOO", "usr": "c:include_guard.cc@21@macro@FOO",

View File

@ -16,6 +16,10 @@ void hello();
/* /*
OUTPUT: OUTPUT:
{ {
"skipped_by_preprocessor": ["2:1-4:7", "6:1-10:7", "12:1-14:7"] "includes": [],
"skipped_by_preprocessor": ["2:1-4:7", "6:1-10:7", "12:1-14:7"],
"types": [],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -528,6 +528,10 @@ OUTPUT:
}, { }, {
"line": 133, "line": 133,
"resolved_path": "&filesystem" "resolved_path": "&filesystem"
}] }],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -10,6 +10,8 @@ void Foo::Bar(Template<double>&) {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@Template", "usr": "c:@ST>1#T@Template",
@ -17,6 +19,12 @@ OUTPUT:
"detailed_name": "Template", "detailed_name": "Template",
"definition_spelling": "2:7-2:15", "definition_spelling": "2:7-2:15",
"definition_extent": "2:1-2:18", "definition_extent": "2:1-2:18",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:7-2:15", "5:12-5:20", "8:15-8:23"] "uses": ["2:7-2:15", "5:12-5:20", "8:15-8:23"]
}, { }, {
"id": 1, "id": 1,
@ -25,7 +33,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "4:8-4:11", "definition_spelling": "4:8-4:11",
"definition_extent": "4:1-6:2", "definition_extent": "4:1-6:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["4:8-4:11", "8:6-8:9"] "uses": ["4:8-4:11", "8:6-8:9"]
}], }],
"funcs": [{ "funcs": [{
@ -42,7 +55,12 @@ OUTPUT:
}], }],
"definition_spelling": "8:11-8:14", "definition_spelling": "8:11-8:14",
"definition_extent": "8:1-8:36", "definition_extent": "8:1-8:36",
"declaring_type": 1 "declaring_type": 1,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -17,6 +17,8 @@ namespace ns {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@N@ns@E@VarType", "usr": "c:@N@ns@E@VarType",
@ -24,6 +26,11 @@ OUTPUT:
"detailed_name": "ns::VarType", "detailed_name": "ns::VarType",
"definition_spelling": "2:8-2:15", "definition_spelling": "2:8-2:15",
"definition_extent": "2:3-2:18", "definition_extent": "2:3-2:18",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["2:8-2:15", "6:22-6:29", "6:44-6:51", "10:18-10:25"] "uses": ["2:8-2:15", "6:22-6:29", "6:44-6:51", "10:18-10:25"]
}, { }, {
@ -33,9 +40,15 @@ OUTPUT:
"detailed_name": "ns::Holder", "detailed_name": "ns::Holder",
"definition_spelling": "5:10-5:16", "definition_spelling": "5:10-5:16",
"definition_extent": "5:3-7:4", "definition_extent": "5:3-7:4",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0], "vars": [0],
"instances": [],
"uses": ["5:10-5:16", "10:26-10:32", "13:13-13:19", "14:14-14:20"] "uses": ["5:10-5:16", "10:26-10:32", "13:13-13:19", "14:14-14:20"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@N@ns@ST>1#T@Holder@static_var", "usr": "c:@N@ns@ST>1#T@Holder@static_var",

View File

@ -14,6 +14,8 @@ namespace ns {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@N@ns@ST>1#T@Foo", "usr": "c:@N@ns@ST>1#T@Foo",
@ -21,7 +23,12 @@ OUTPUT:
"detailed_name": "ns::Foo", "detailed_name": "ns::Foo",
"definition_spelling": "3:10-3:13", "definition_spelling": "3:10-3:13",
"definition_extent": "3:3-8:4", "definition_extent": "3:3-8:4",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["3:10-3:13", "10:11-10:14", "11:11-11:14"] "uses": ["3:10-3:13", "10:11-10:14", "11:11-11:14"]
}], }],
"funcs": [{ "funcs": [{
@ -30,10 +37,14 @@ OUTPUT:
"usr": "c:@N@ns@ST>1#T@Foo@FT@>1#Tfoo#I#S", "usr": "c:@N@ns@ST>1#T@Foo@FT@>1#Tfoo#I#S",
"short_name": "foo", "short_name": "foo",
"detailed_name": "int ns::Foo::foo()", "detailed_name": "int ns::Foo::foo()",
"declarations": [],
"definition_spelling": "5:16-5:19", "definition_spelling": "5:16-5:19",
"definition_extent": "5:5-7:6", "definition_extent": "5:5-7:6",
"declaring_type": 0, "declaring_type": 0,
"callers": ["-1@10:21-10:24", "-1@11:22-11:25"] "derived": [],
"locals": [],
"callers": ["-1@10:21-10:24", "-1@11:22-11:25"],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -9,6 +9,8 @@ namespace ns {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@N@ns@ST>1#T@Foo", "usr": "c:@N@ns@ST>1#T@Foo",
@ -16,9 +18,15 @@ OUTPUT:
"detailed_name": "ns::Foo", "detailed_name": "ns::Foo",
"definition_spelling": "3:9-3:12", "definition_spelling": "3:9-3:12",
"definition_extent": "3:3-3:15", "definition_extent": "3:3-3:15",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0, 1], "instances": [0, 1],
"uses": ["3:9-3:12", "5:3-5:6", "6:3-6:6"] "uses": ["3:9-3:12", "5:3-5:6", "6:3-6:6"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@N@ns@a", "usr": "c:@N@ns@a",

View File

@ -15,6 +15,8 @@ void Template<void>::Foo() {}
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@Template", "usr": "c:@ST>1#T@Template",
@ -22,7 +24,12 @@ OUTPUT:
"detailed_name": "Template", "detailed_name": "Template",
"definition_spelling": "2:7-2:15", "definition_spelling": "2:7-2:15",
"definition_extent": "2:1-4:2", "definition_extent": "2:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["2:7-2:15", "7:6-7:14", "9:6-9:14"] "uses": ["2:7-2:15", "7:6-7:14", "9:6-9:14"]
}], }],
"funcs": [{ "funcs": [{
@ -34,15 +41,22 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "3:8-3:11", "spelling": "3:8-3:11",
"extent": "3:3-3:13", "extent": "3:3-3:13",
"content": "void Foo()" "content": "void Foo()",
"param_spellings": []
}, { }, {
"spelling": "9:22-9:25", "spelling": "9:22-9:25",
"extent": "9:1-9:30", "extent": "9:1-9:30",
"content": "void Template<void>::Foo() {}" "content": "void Template<void>::Foo() {}",
"param_spellings": []
}], }],
"definition_spelling": "7:19-7:22", "definition_spelling": "7:19-7:22",
"definition_extent": "6:1-7:24", "definition_extent": "6:1-7:24",
"declaring_type": 0 "declaring_type": 0,
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -11,6 +11,8 @@ int b = Foo<bool>::foo();
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@Foo", "usr": "c:@ST>1#T@Foo",
@ -18,7 +20,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "2:8-2:11", "definition_spelling": "2:8-2:11",
"definition_extent": "2:1-6:2", "definition_extent": "2:1-6:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["2:8-2:11", "8:9-8:12", "9:9-9:12"] "uses": ["2:8-2:11", "8:9-8:12", "9:9-9:12"]
}], }],
"funcs": [{ "funcs": [{
@ -27,10 +34,14 @@ OUTPUT:
"usr": "c:@ST>1#T@Foo@F@foo#S", "usr": "c:@ST>1#T@Foo@F@foo#S",
"short_name": "foo", "short_name": "foo",
"detailed_name": "int Foo::foo()", "detailed_name": "int Foo::foo()",
"declarations": [],
"definition_spelling": "3:14-3:17", "definition_spelling": "3:14-3:17",
"definition_extent": "3:3-5:4", "definition_extent": "3:3-5:4",
"declaring_type": 0, "declaring_type": 0,
"callers": ["-1@8:19-8:22", "-1@9:20-9:23"] "derived": [],
"locals": [],
"callers": ["-1@8:19-8:22", "-1@9:20-9:23"],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -12,6 +12,8 @@ int b = Foo<bool>::foo<double>();
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@Foo", "usr": "c:@ST>1#T@Foo",
@ -19,7 +21,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "2:8-2:11", "definition_spelling": "2:8-2:11",
"definition_extent": "2:1-7:2", "definition_extent": "2:1-7:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["2:8-2:11", "9:9-9:12", "10:9-10:12"] "uses": ["2:8-2:11", "9:9-9:12", "10:9-10:12"]
}], }],
"funcs": [{ "funcs": [{
@ -28,10 +35,14 @@ OUTPUT:
"usr": "c:@ST>1#T@Foo@FT@>1#Tfoo#I#S", "usr": "c:@ST>1#T@Foo@FT@>1#Tfoo#I#S",
"short_name": "foo", "short_name": "foo",
"detailed_name": "int Foo::foo()", "detailed_name": "int Foo::foo()",
"declarations": [],
"definition_spelling": "4:14-4:17", "definition_spelling": "4:14-4:17",
"definition_extent": "4:3-6:4", "definition_extent": "4:3-6:4",
"declaring_type": 0, "declaring_type": 0,
"callers": ["-1@9:19-9:22", "-1@10:20-10:23"] "derived": [],
"locals": [],
"callers": ["-1@9:19-9:22", "-1@10:20-10:23"],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -30,6 +30,7 @@ VarDecl b
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": ["12:1-28:7"], "skipped_by_preprocessor": ["12:1-28:7"],
"types": [{ "types": [{
"id": 0, "id": 0,
@ -38,6 +39,12 @@ OUTPUT:
"detailed_name": "A", "detailed_name": "A",
"definition_spelling": "1:6-1:7", "definition_spelling": "1:6-1:7",
"definition_extent": "1:1-1:10", "definition_extent": "1:1-1:10",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:6-1:7", "9:5-9:6"] "uses": ["1:6-1:7", "9:5-9:6"]
}, { }, {
"id": 1, "id": 1,
@ -46,6 +53,12 @@ OUTPUT:
"detailed_name": "B", "detailed_name": "B",
"definition_spelling": "2:6-2:7", "definition_spelling": "2:6-2:7",
"definition_extent": "2:1-2:10", "definition_extent": "2:1-2:10",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:6-2:7", "10:5-10:6"] "uses": ["2:6-2:7", "10:5-10:6"]
}, { }, {
"id": 2, "id": 2,
@ -54,6 +67,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "5:8-5:11", "definition_spelling": "5:8-5:11",
"definition_extent": "5:1-7:2", "definition_extent": "5:1-7:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["5:8-5:11", "9:1-9:4", "10:1-10:4"] "uses": ["5:8-5:11", "9:1-9:4", "10:1-10:4"]
}, { }, {
"id": 3, "id": 3,
@ -62,9 +81,15 @@ OUTPUT:
"detailed_name": "Foo::Inner", "detailed_name": "Foo::Inner",
"definition_spelling": "6:10-6:15", "definition_spelling": "6:10-6:15",
"definition_extent": "6:3-6:18", "definition_extent": "6:3-6:18",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0, 1], "instances": [0, 1],
"uses": ["6:10-6:15", "9:9-9:14", "10:9-10:14"] "uses": ["6:10-6:15", "9:9-9:14", "10:9-10:14"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@a", "usr": "c:@a",

View File

@ -9,6 +9,8 @@ int b = Foo<bool>::var;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@Foo", "usr": "c:@ST>1#T@Foo",
@ -16,8 +18,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "2:8-2:11", "definition_spelling": "2:8-2:11",
"definition_extent": "2:1-4:2", "definition_extent": "2:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:8-2:11", "6:9-6:12", "7:9-7:12"] "uses": ["2:8-2:11", "6:9-6:12", "7:9-7:12"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@Foo@var", "usr": "c:@ST>1#T@Foo@var",

View File

@ -12,15 +12,22 @@ int b = foo<bool>();
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:template_func_usage_folded_into_one.cc@FT@>1#Tfoo#I#", "usr": "c:template_func_usage_folded_into_one.cc@FT@>1#Tfoo#I#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "int foo()", "detailed_name": "int foo()",
"declarations": [],
"definition_spelling": "2:12-2:15", "definition_spelling": "2:12-2:15",
"definition_extent": "2:1-4:2", "definition_extent": "2:1-4:2",
"callers": ["-1@6:9-6:12", "-1@7:9-7:12"] "derived": [],
"locals": [],
"callers": ["-1@6:9-6:12", "-1@7:9-7:12"],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -7,6 +7,8 @@ Foo<bool> b;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@Foo", "usr": "c:@ST>1#T@Foo",
@ -14,9 +16,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "2:7-2:10", "definition_spelling": "2:7-2:10",
"definition_extent": "2:1-2:13", "definition_extent": "2:1-2:13",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0, 1], "instances": [0, 1],
"uses": ["2:7-2:10", "4:1-4:4", "5:1-5:4"] "uses": ["2:7-2:10", "4:1-4:4", "5:1-5:4"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@a", "usr": "c:@a",

View File

@ -30,6 +30,7 @@ UnexposedDecl var
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": ["12:1-28:7"], "skipped_by_preprocessor": ["12:1-28:7"],
"types": [{ "types": [{
"id": 0, "id": 0,
@ -38,6 +39,12 @@ OUTPUT:
"detailed_name": "A", "detailed_name": "A",
"definition_spelling": "1:6-1:7", "definition_spelling": "1:6-1:7",
"definition_extent": "1:1-1:10", "definition_extent": "1:1-1:10",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:6-1:7", "7:13-7:14"] "uses": ["1:6-1:7", "7:13-7:14"]
}, { }, {
"id": 1, "id": 1,
@ -46,14 +53,27 @@ OUTPUT:
"detailed_name": "B", "detailed_name": "B",
"definition_spelling": "2:6-2:7", "definition_spelling": "2:6-2:7",
"definition_extent": "2:1-2:10", "definition_extent": "2:1-2:10",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:6-2:7", "8:13-8:14"] "uses": ["2:6-2:7", "8:13-8:14"]
}, { }, {
"id": 2, "id": 2,
"usr": "c:template_var_usage_folded_into_one.cc@35", "usr": "c:template_var_usage_folded_into_one.cc@35",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["5:1-5:2"] "uses": ["5:1-5:2"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@VT>1#T@var", "usr": "c:@VT>1#T@var",

View File

@ -6,6 +6,8 @@ union vector3 {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@U@vector3", "usr": "c:@U@vector3",
@ -13,7 +15,12 @@ OUTPUT:
"detailed_name": "vector3", "detailed_name": "vector3",
"definition_spelling": "1:7-1:14", "definition_spelling": "1:7-1:14",
"definition_extent": "1:1-4:2", "definition_extent": "1:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [3], "vars": [3],
"instances": [],
"uses": ["1:7-1:14"] "uses": ["1:7-1:14"]
}, { }, {
"id": 1, "id": 1,
@ -22,9 +29,15 @@ OUTPUT:
"detailed_name": "vector3::<anonymous>", "detailed_name": "vector3::<anonymous>",
"definition_spelling": "2:3-2:9", "definition_spelling": "2:3-2:9",
"definition_extent": "2:3-2:28", "definition_extent": "2:3-2:28",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1, 2], "vars": [0, 1, 2],
"instances": [],
"uses": ["2:3-2:9"] "uses": ["2:3-2:9"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@U@vector3@Sa@FI@x", "usr": "c:@U@vector3@Sa@FI@x",

View File

@ -6,6 +6,8 @@ union Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@U@Foo", "usr": "c:@U@Foo",
@ -13,9 +15,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-4:2", "definition_extent": "1:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1], "vars": [0, 1],
"instances": [],
"uses": ["1:7-1:10"] "uses": ["1:7-1:10"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@U@Foo@FI@a", "usr": "c:@U@Foo@FI@a",

View File

@ -14,6 +14,8 @@ void act(Foo*) {
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@U@Foo", "usr": "c:@U@Foo",
@ -21,6 +23,10 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-4:2", "definition_extent": "1:1-4:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1], "vars": [0, 1],
"instances": [2], "instances": [2],
"uses": ["1:7-1:10", "6:1-6:4", "8:10-8:13"] "uses": ["1:7-1:10", "6:1-6:4", "8:10-8:13"]
@ -31,8 +37,13 @@ OUTPUT:
"usr": "c:@F@act#*$@U@Foo#", "usr": "c:@F@act#*$@U@Foo#",
"short_name": "act", "short_name": "act",
"detailed_name": "void act(Foo *)", "detailed_name": "void act(Foo *)",
"declarations": [],
"definition_spelling": "8:6-8:9", "definition_spelling": "8:6-8:9",
"definition_extent": "8:1-10:2" "definition_extent": "8:1-10:2",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -11,6 +11,8 @@ Foo::Foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -18,7 +20,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "3:8-3:11", "definition_spelling": "3:8-3:11",
"definition_extent": "3:1-5:2", "definition_extent": "3:1-5:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [1], "funcs": [1],
"vars": [],
"instances": [],
"uses": ["3:8-3:11", "4:3-4:6", "7:6-7:9", "7:1-7:4"] "uses": ["3:8-3:11", "4:3-4:6", "7:6-7:9", "7:1-7:4"]
}], }],
"funcs": [{ "funcs": [{
@ -27,9 +34,13 @@ OUTPUT:
"usr": "c:@F@called#", "usr": "c:@F@called#",
"short_name": "called", "short_name": "called",
"detailed_name": "void called()", "detailed_name": "void called()",
"declarations": [],
"definition_spelling": "1:6-1:12", "definition_spelling": "1:6-1:12",
"definition_extent": "1:1-1:17", "definition_extent": "1:1-1:17",
"callers": ["1@8:3-8:9"] "derived": [],
"locals": [],
"callers": ["1@8:3-8:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
@ -39,12 +50,17 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "4:3-4:6", "spelling": "4:3-4:6",
"extent": "4:3-4:8", "extent": "4:3-4:8",
"content": "Foo()" "content": "Foo()",
"param_spellings": []
}], }],
"definition_spelling": "7:6-7:9", "definition_spelling": "7:6-7:9",
"definition_extent": "7:1-9:2", "definition_extent": "7:1-9:2",
"declaring_type": 0, "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@8:3-8:9"] "callees": ["0@8:3-8:9"]
}] }],
"vars": []
} }
*/ */

View File

@ -9,6 +9,9 @@ void caller() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -21,15 +24,22 @@ OUTPUT:
"content": "bool called(bool a, bool b)", "content": "bool called(bool a, bool b)",
"param_spellings": ["3:18-3:19", "3:26-3:27"] "param_spellings": ["3:18-3:19", "3:26-3:27"]
}], }],
"callers": ["1@6:14-6:20"] "derived": [],
"locals": [],
"callers": ["1@6:14-6:20"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@caller#", "usr": "c:@F@caller#",
"short_name": "caller", "short_name": "caller",
"detailed_name": "void caller()", "detailed_name": "void caller()",
"declarations": [],
"definition_spelling": "5:6-5:12", "definition_spelling": "5:6-5:12",
"definition_extent": "5:1-7:2", "definition_extent": "5:1-7:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@6:14-6:20"] "callees": ["0@6:14-6:20"]
}], }],
"vars": [{ "vars": [{

View File

@ -14,6 +14,9 @@ void foo() {
// called() is never referenced. // called() is never referenced.
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -23,17 +26,24 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "1:6-1:12", "spelling": "1:6-1:12",
"extent": "1:1-1:14", "extent": "1:1-1:14",
"content": "void called()" "content": "void called()",
"param_spellings": []
}], }],
"callers": ["1@5:3-5:9"] "derived": [],
"locals": [],
"callers": ["1@5:3-5:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@FT@>1#Tcaller#v#", "usr": "c:@FT@>1#Tcaller#v#",
"short_name": "caller", "short_name": "caller",
"detailed_name": "void caller()", "detailed_name": "void caller()",
"declarations": [],
"definition_spelling": "4:6-4:12", "definition_spelling": "4:6-4:12",
"definition_extent": "4:1-6:2", "definition_extent": "4:1-6:2",
"derived": [],
"locals": [],
"callers": ["2@9:3-9:9"], "callers": ["2@9:3-9:9"],
"callees": ["0@5:3-5:9"] "callees": ["0@5:3-5:9"]
}, { }, {
@ -42,9 +52,14 @@ OUTPUT:
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "8:6-8:9", "definition_spelling": "8:6-8:9",
"definition_extent": "8:1-10:2", "definition_extent": "8:1-10:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["1@9:3-9:9"] "callees": ["1@9:3-9:9"]
}] }],
"vars": []
} }
*/ */

View File

@ -11,6 +11,8 @@ Wrapper caller() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Wrapper", "usr": "c:@S@Wrapper",
@ -18,7 +20,12 @@ OUTPUT:
"detailed_name": "Wrapper", "detailed_name": "Wrapper",
"definition_spelling": "1:8-1:15", "definition_spelling": "1:8-1:15",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["1:8-1:15", "2:3-2:10", "7:1-7:8"] "uses": ["1:8-1:15", "2:3-2:10", "7:1-7:8"]
}], }],
"funcs": [{ "funcs": [{
@ -34,25 +41,37 @@ OUTPUT:
"param_spellings": ["2:15-2:16"] "param_spellings": ["2:15-2:16"]
}], }],
"declaring_type": 0, "declaring_type": 0,
"callers": ["~2@8:10-8:16"] "derived": [],
"locals": [],
"callers": ["~2@8:10-8:16"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@called#", "usr": "c:@F@called#",
"short_name": "called", "short_name": "called",
"detailed_name": "int called()", "detailed_name": "int called()",
"declarations": [],
"definition_spelling": "5:5-5:11", "definition_spelling": "5:5-5:11",
"definition_extent": "5:1-5:27", "definition_extent": "5:1-5:27",
"callers": ["2@8:10-8:16"] "derived": [],
"locals": [],
"callers": ["2@8:10-8:16"],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@caller#", "usr": "c:@F@caller#",
"short_name": "caller", "short_name": "caller",
"detailed_name": "Wrapper caller()", "detailed_name": "Wrapper caller()",
"declarations": [],
"definition_spelling": "7:9-7:15", "definition_spelling": "7:9-7:15",
"definition_extent": "7:1-9:2", "definition_extent": "7:1-9:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["~0@8:10-8:16", "1@8:10-8:16"] "callees": ["~0@8:10-8:16", "1@8:10-8:16"]
}] }],
"vars": []
} }
*/ */

View File

@ -10,32 +10,47 @@ void user() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@F@consume#*v#", "usr": "c:@F@consume#*v#",
"short_name": "consume", "short_name": "consume",
"detailed_name": "void consume(void *)", "detailed_name": "void consume(void *)",
"declarations": [],
"definition_spelling": "1:6-1:13", "definition_spelling": "1:6-1:13",
"definition_extent": "1:1-1:23", "definition_extent": "1:1-1:23",
"callers": ["2@7:3-7:10"] "derived": [],
"locals": [],
"callers": ["2@7:3-7:10"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@used#", "usr": "c:@F@used#",
"short_name": "used", "short_name": "used",
"detailed_name": "void used()", "detailed_name": "void used()",
"declarations": [],
"definition_spelling": "3:6-3:10", "definition_spelling": "3:6-3:10",
"definition_extent": "3:1-3:15", "definition_extent": "3:1-3:15",
"callers": ["2@6:13-6:17", "2@7:12-7:16"] "derived": [],
"locals": [],
"callers": ["2@6:13-6:17", "2@7:12-7:16"],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@user#", "usr": "c:@F@user#",
"short_name": "user", "short_name": "user",
"detailed_name": "void user()", "detailed_name": "void user()",
"declarations": [],
"definition_spelling": "5:6-5:10", "definition_spelling": "5:6-5:10",
"definition_extent": "5:1-8:2", "definition_extent": "5:1-8:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["1@6:13-6:17", "0@7:3-7:10", "1@7:12-7:16"] "callees": ["1@6:13-6:17", "0@7:3-7:10", "1@7:12-7:16"]
}], }],
"vars": [{ "vars": [{

View File

@ -10,6 +10,8 @@ void user() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -17,7 +19,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:8-1:11", "definition_spelling": "1:8-1:11",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [],
"uses": ["1:8-1:11", "6:13-6:16"] "uses": ["1:8-1:11", "6:13-6:16"]
}], }],
"funcs": [{ "funcs": [{
@ -29,18 +36,26 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:8-2:12", "spelling": "2:8-2:12",
"extent": "2:3-2:14", "extent": "2:3-2:14",
"content": "void Used()" "content": "void Used()",
"param_spellings": []
}], }],
"declaring_type": 0, "declaring_type": 0,
"callers": ["1@6:18-6:22"] "derived": [],
"locals": [],
"callers": ["1@6:18-6:22"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@user#", "usr": "c:@F@user#",
"short_name": "user", "short_name": "user",
"detailed_name": "void user()", "detailed_name": "void user()",
"declarations": [],
"definition_spelling": "5:6-5:10", "definition_spelling": "5:6-5:10",
"definition_extent": "5:1-7:2", "definition_extent": "5:1-7:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@6:18-6:22"] "callees": ["0@6:18-6:22"]
}], }],
"vars": [{ "vars": [{

View File

@ -6,24 +6,36 @@ void caller() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@F@called#", "usr": "c:@F@called#",
"short_name": "called", "short_name": "called",
"detailed_name": "void called()", "detailed_name": "void called()",
"declarations": [],
"definition_spelling": "1:6-1:12", "definition_spelling": "1:6-1:12",
"definition_extent": "1:1-1:17", "definition_extent": "1:1-1:17",
"callers": ["1@3:3-3:9"] "derived": [],
"locals": [],
"callers": ["1@3:3-3:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@caller#", "usr": "c:@F@caller#",
"short_name": "caller", "short_name": "caller",
"detailed_name": "void caller()", "detailed_name": "void caller()",
"declarations": [],
"definition_spelling": "2:6-2:12", "definition_spelling": "2:6-2:12",
"definition_extent": "2:1-4:2", "definition_extent": "2:1-4:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@3:3-3:9"] "callees": ["0@3:3-3:9"]
}] }],
"vars": []
} }
*/ */

View File

@ -10,6 +10,8 @@ void user() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -17,7 +19,11 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:8-1:11", "definition_spelling": "1:8-1:11",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:11", "6:3-6:6"] "uses": ["1:8-1:11", "6:3-6:6"]
}], }],
@ -30,18 +36,26 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:8-2:12", "spelling": "2:8-2:12",
"extent": "2:3-2:14", "extent": "2:3-2:14",
"content": "void Used()" "content": "void Used()",
"param_spellings": []
}], }],
"declaring_type": 0, "declaring_type": 0,
"callers": ["1@7:6-7:10"] "derived": [],
"locals": [],
"callers": ["1@7:6-7:10"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@user#", "usr": "c:@F@user#",
"short_name": "user", "short_name": "user",
"detailed_name": "void user()", "detailed_name": "void user()",
"declarations": [],
"definition_spelling": "5:6-5:10", "definition_spelling": "5:6-5:10",
"definition_extent": "5:1-8:2", "definition_extent": "5:1-8:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@7:6-7:10"] "callees": ["0@7:6-7:10"]
}], }],
"vars": [{ "vars": [{

View File

@ -9,6 +9,8 @@ class Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -16,7 +18,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "5:7-5:10", "definition_spelling": "5:7-5:10",
"definition_extent": "5:1-7:2", "definition_extent": "5:1-7:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0], "vars": [0],
"instances": [],
"uses": ["5:7-5:10"] "uses": ["5:7-5:10"]
}], }],
"funcs": [{ "funcs": [{
@ -25,9 +32,13 @@ OUTPUT:
"usr": "c:func_usage_class_inline_var_def.cc@F@helper#", "usr": "c:func_usage_class_inline_var_def.cc@F@helper#",
"short_name": "helper", "short_name": "helper",
"detailed_name": "int helper()", "detailed_name": "int helper()",
"declarations": [],
"definition_spelling": "1:12-1:18", "definition_spelling": "1:12-1:18",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"callers": ["-1@6:11-6:17"] "derived": [],
"locals": [],
"callers": ["-1@6:11-6:17"],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -6,6 +6,9 @@ void usage() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -15,18 +18,27 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "1:6-1:9", "spelling": "1:6-1:9",
"extent": "1:1-1:11", "extent": "1:1-1:11",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}], }],
"callers": ["1@4:3-4:6"] "derived": [],
"locals": [],
"callers": ["1@4:3-4:6"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@usage#", "usr": "c:@F@usage#",
"short_name": "usage", "short_name": "usage",
"detailed_name": "void usage()", "detailed_name": "void usage()",
"declarations": [],
"definition_spelling": "3:6-3:11", "definition_spelling": "3:6-3:11",
"definition_extent": "3:1-5:2", "definition_extent": "3:1-5:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@4:3-4:6"] "callees": ["0@4:3-4:6"]
}] }],
"vars": []
} }
*/ */

View File

@ -9,6 +9,8 @@ void usage() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -16,7 +18,11 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:8-1:11", "definition_spelling": "1:8-1:11",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:11", "6:3-6:6"] "uses": ["1:8-1:11", "6:3-6:6"]
}], }],
@ -29,18 +35,26 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:8-2:11", "spelling": "2:8-2:11",
"extent": "2:3-2:13", "extent": "2:3-2:13",
"content": "void foo()" "content": "void foo()",
"param_spellings": []
}], }],
"declaring_type": 0, "declaring_type": 0,
"callers": ["1@7:6-7:9"] "derived": [],
"locals": [],
"callers": ["1@7:6-7:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@usage#", "usr": "c:@F@usage#",
"short_name": "usage", "short_name": "usage",
"detailed_name": "void usage()", "detailed_name": "void usage()",
"declarations": [],
"definition_spelling": "5:6-5:11", "definition_spelling": "5:6-5:11",
"definition_extent": "5:1-8:2", "definition_extent": "5:1-8:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@7:6-7:9"] "callees": ["0@7:6-7:9"]
}], }],
"vars": [{ "vars": [{

View File

@ -9,6 +9,9 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -21,16 +24,24 @@ OUTPUT:
"content": "void accept(T)", "content": "void accept(T)",
"param_spellings": ["2:14-2:14"] "param_spellings": ["2:14-2:14"]
}], }],
"callers": ["1@5:3-5:9", "1@6:3-6:9"] "derived": [],
"locals": [],
"callers": ["1@5:3-5:9", "1@6:3-6:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "4:6-4:9", "definition_spelling": "4:6-4:9",
"definition_extent": "4:1-7:2", "definition_extent": "4:1-7:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@5:3-5:9", "0@6:3-6:9"] "callees": ["0@5:3-5:9", "0@6:3-6:9"]
}] }],
"vars": []
} }
*/ */

View File

@ -13,11 +13,18 @@ unique_ptr<S>* return_type() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@unique_ptr", "usr": "c:@ST>1#T@unique_ptr",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0, 1, 2], "instances": [0, 1, 2],
"uses": ["2:7-2:17", "6:8-6:18", "7:8-7:18", "9:1-9:11", "10:3-10:13"] "uses": ["2:7-2:17", "6:8-6:18", "7:8-7:18", "9:1-9:11", "10:3-10:13"]
}, { }, {
@ -27,6 +34,12 @@ OUTPUT:
"detailed_name": "S", "detailed_name": "S",
"definition_spelling": "4:8-4:9", "definition_spelling": "4:8-4:9",
"definition_extent": "4:1-4:12", "definition_extent": "4:1-4:12",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["4:8-4:9", "7:19-7:20", "9:12-9:13", "10:14-10:15"] "uses": ["4:8-4:9", "7:19-7:20", "9:12-9:13", "10:14-10:15"]
}], }],
"funcs": [{ "funcs": [{
@ -35,8 +48,13 @@ OUTPUT:
"usr": "c:@F@return_type#", "usr": "c:@F@return_type#",
"short_name": "return_type", "short_name": "return_type",
"detailed_name": "unique_ptr<S> *return_type()", "detailed_name": "unique_ptr<S> *return_type()",
"declarations": [],
"definition_spelling": "9:16-9:27", "definition_spelling": "9:16-9:27",
"definition_extent": "9:1-12:2" "definition_extent": "9:1-12:2",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -81,12 +81,18 @@ unique_ptr<S1, S2>* Foo::foo() { return nullptr; }
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": ["7:1-14:7", "17:1-32:7", "35:1-39:7", "42:1-52:7", "57:1-63:7", "68:1-78:7"], "skipped_by_preprocessor": ["7:1-14:7", "17:1-32:7", "35:1-39:7", "42:1-52:7", "57:1-63:7", "68:1-78:7"],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>2#T#T@unique_ptr", "usr": "c:@ST>2#T#T@unique_ptr",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0, 1], "instances": [0, 1],
"uses": ["2:7-2:17", "15:8-15:18", "15:19-15:29", "33:1-33:11", "33:12-33:22", "33:52-33:62", "54:3-54:13", "54:14-54:24", "65:3-65:13", "79:1-79:11"] "uses": ["2:7-2:17", "15:8-15:18", "15:19-15:29", "33:1-33:11", "33:12-33:22", "33:52-33:62", "54:3-54:13", "54:14-54:24", "65:3-65:13", "79:1-79:11"]
}, { }, {
@ -94,12 +100,24 @@ OUTPUT:
"usr": "c:@S@S1", "usr": "c:@S@S1",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["4:8-4:10", "15:30-15:32", "33:23-33:25", "33:63-33:65", "54:25-54:27", "65:14-65:16", "79:12-79:14"] "uses": ["4:8-4:10", "15:30-15:32", "33:23-33:25", "33:63-33:65", "54:25-54:27", "65:14-65:16", "79:12-79:14"]
}, { }, {
"id": 2, "id": 2,
"usr": "c:@S@S2", "usr": "c:@S@S2",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["5:8-5:10", "15:34-15:36", "15:39-15:41", "33:27-33:29", "33:32-33:34", "33:67-33:69", "54:29-54:31", "54:34-54:36", "65:18-65:20", "79:16-79:18"] "uses": ["5:8-5:10", "15:34-15:36", "15:39-15:41", "33:27-33:29", "33:32-33:34", "33:67-33:69", "54:29-54:31", "54:34-54:36", "65:18-65:20", "79:16-79:18"]
}, { }, {
"id": 3, "id": 3,
@ -108,7 +126,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "64:7-64:10", "definition_spelling": "64:7-64:10",
"definition_extent": "64:1-66:2", "definition_extent": "64:1-66:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [3], "funcs": [3],
"vars": [],
"instances": [],
"uses": ["64:7-64:10", "79:21-79:24"] "uses": ["64:7-64:10", "79:21-79:24"]
}], }],
"funcs": [{ "funcs": [{
@ -117,24 +140,39 @@ OUTPUT:
"usr": "c:@F@as_return_type#*$@S@unique_ptr>#$@S@S1#$@S@S2#", "usr": "c:@F@as_return_type#*$@S@unique_ptr>#$@S@S1#$@S@S2#",
"short_name": "as_return_type", "short_name": "as_return_type",
"detailed_name": "unique_ptr<unique_ptr<S1, S2>, S2> *as_return_type(unique_ptr<S1, S2> *)", "detailed_name": "unique_ptr<unique_ptr<S1, S2>, S2> *as_return_type(unique_ptr<S1, S2> *)",
"declarations": [],
"definition_spelling": "33:37-33:51", "definition_spelling": "33:37-33:51",
"definition_extent": "33:1-33:92" "definition_extent": "33:1-33:92",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@no_return_type#I#", "usr": "c:@F@no_return_type#I#",
"short_name": "no_return_type", "short_name": "no_return_type",
"detailed_name": "void no_return_type(int)", "detailed_name": "void no_return_type(int)",
"declarations": [],
"definition_spelling": "40:6-40:20", "definition_spelling": "40:6-40:20",
"definition_extent": "40:1-40:28" "definition_extent": "40:1-40:28",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@empty#", "usr": "c:@F@empty#",
"short_name": "empty", "short_name": "empty",
"detailed_name": "void empty()", "detailed_name": "void empty()",
"declarations": [],
"definition_spelling": "53:6-53:11", "definition_spelling": "53:6-53:11",
"definition_extent": "53:1-55:2" "definition_extent": "53:1-55:2",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 3, "id": 3,
"is_operator": false, "is_operator": false,
@ -144,11 +182,16 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "65:23-65:26", "spelling": "65:23-65:26",
"extent": "65:3-65:28", "extent": "65:3-65:28",
"content": "unique_ptr<S1, S2>* foo()" "content": "unique_ptr<S1, S2>* foo()",
"param_spellings": []
}], }],
"definition_spelling": "79:26-79:29", "definition_spelling": "79:26-79:29",
"definition_extent": "79:1-79:51", "definition_extent": "79:1-79:51",
"declaring_type": 3 "declaring_type": 3,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -8,6 +8,8 @@ static unique_ptr<S> foo;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@unique_ptr", "usr": "c:@ST>1#T@unique_ptr",
@ -15,6 +17,11 @@ OUTPUT:
"detailed_name": "unique_ptr", "detailed_name": "unique_ptr",
"definition_spelling": "2:7-2:17", "definition_spelling": "2:7-2:17",
"definition_extent": "2:1-2:20", "definition_extent": "2:1-2:20",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["2:7-2:17", "6:8-6:18"] "uses": ["2:7-2:17", "6:8-6:18"]
}, { }, {
@ -22,8 +29,15 @@ OUTPUT:
"usr": "c:@S@S", "usr": "c:@S@S",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["4:8-4:9", "6:19-6:20"] "uses": ["4:8-4:9", "6:19-6:20"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:type_usage_as_template_parameter_simple.cc@foo", "usr": "c:type_usage_as_template_parameter_simple.cc@foo",

View File

@ -4,6 +4,8 @@ extern T t;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@T", "usr": "c:@S@T",
@ -11,9 +13,15 @@ OUTPUT:
"detailed_name": "T", "detailed_name": "T",
"definition_spelling": "1:8-1:9", "definition_spelling": "1:8-1:9",
"definition_extent": "1:1-1:12", "definition_extent": "1:1-1:12",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:9", "3:8-3:9"] "uses": ["1:8-1:9", "3:8-3:9"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@t", "usr": "c:@t",

View File

@ -9,11 +9,18 @@ struct Foo {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@ForwardType", "usr": "c:@S@ForwardType",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:19", "5:3-5:14"] "uses": ["1:8-1:19", "5:3-5:14"]
}, { }, {
@ -23,6 +30,11 @@ OUTPUT:
"detailed_name": "ImplementedType", "detailed_name": "ImplementedType",
"definition_spelling": "2:8-2:23", "definition_spelling": "2:8-2:23",
"definition_extent": "2:1-2:26", "definition_extent": "2:1-2:26",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [1], "instances": [1],
"uses": ["2:8-2:23", "6:3-6:18"] "uses": ["2:8-2:23", "6:3-6:18"]
}, { }, {
@ -32,9 +44,15 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "4:8-4:11", "definition_spelling": "4:8-4:11",
"definition_extent": "4:1-7:2", "definition_extent": "4:1-7:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1], "vars": [0, 1],
"instances": [],
"uses": ["4:8-4:11"] "uses": ["4:8-4:11"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo@FI@a", "usr": "c:@S@Foo@FI@a",

View File

@ -9,11 +9,18 @@ void Foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@ForwardType", "usr": "c:@S@ForwardType",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:19", "5:3-5:14"] "uses": ["1:8-1:19", "5:3-5:14"]
}, { }, {
@ -23,6 +30,11 @@ OUTPUT:
"detailed_name": "ImplementedType", "detailed_name": "ImplementedType",
"definition_spelling": "2:8-2:23", "definition_spelling": "2:8-2:23",
"definition_extent": "2:1-2:26", "definition_extent": "2:1-2:26",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [1], "instances": [1],
"uses": ["2:8-2:23", "6:3-6:18"] "uses": ["2:8-2:23", "6:3-6:18"]
}], }],
@ -32,8 +44,13 @@ OUTPUT:
"usr": "c:@F@Foo#", "usr": "c:@F@Foo#",
"short_name": "Foo", "short_name": "Foo",
"detailed_name": "void Foo()", "detailed_name": "void Foo()",
"declarations": [],
"definition_spelling": "4:6-4:9", "definition_spelling": "4:6-4:9",
"definition_extent": "4:1-7:2" "definition_extent": "4:1-7:2",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -6,11 +6,18 @@ void foo(ForwardType* f, ImplementedType a) {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@ForwardType", "usr": "c:@S@ForwardType",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:19", "4:10-4:21"] "uses": ["1:8-1:19", "4:10-4:21"]
}, { }, {
@ -20,6 +27,11 @@ OUTPUT:
"detailed_name": "ImplementedType", "detailed_name": "ImplementedType",
"definition_spelling": "2:8-2:23", "definition_spelling": "2:8-2:23",
"definition_extent": "2:1-2:26", "definition_extent": "2:1-2:26",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [1], "instances": [1],
"uses": ["2:8-2:23", "4:26-4:41"] "uses": ["2:8-2:23", "4:26-4:41"]
}], }],
@ -29,8 +41,13 @@ OUTPUT:
"usr": "c:@F@foo#*$@S@ForwardType#$@S@ImplementedType#", "usr": "c:@F@foo#*$@S@ForwardType#$@S@ImplementedType#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo(ForwardType *, ImplementedType)", "detailed_name": "void foo(ForwardType *, ImplementedType)",
"declarations": [],
"definition_spelling": "4:6-4:9", "definition_spelling": "4:6-4:9",
"definition_extent": "4:1-4:47" "definition_extent": "4:1-4:47",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -11,11 +11,18 @@ void foo(Foo* f, Foo*) {}
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:11", "3:10-3:13", "3:18-3:21", "4:10-4:13", "4:18-4:21"] "uses": ["1:8-1:11", "3:10-3:13", "3:18-3:21", "4:10-4:13", "4:18-4:21"]
}], }],
@ -32,7 +39,11 @@ OUTPUT:
"param_spellings": ["3:15-3:16", "3:22-3:22"] "param_spellings": ["3:15-3:16", "3:22-3:22"]
}], }],
"definition_spelling": "4:6-4:9", "definition_spelling": "4:6-4:9",
"definition_extent": "4:1-4:26" "definition_extent": "4:1-4:26",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -3,11 +3,19 @@ void foo(ForwardType*) {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@ForwardType", "usr": "c:@S@ForwardType",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:8-1:19", "2:10-2:21"] "uses": ["1:8-1:19", "2:10-2:21"]
}], }],
"funcs": [{ "funcs": [{
@ -16,8 +24,14 @@ OUTPUT:
"usr": "c:@F@foo#*$@S@ForwardType#", "usr": "c:@F@foo#*$@S@ForwardType#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo(ForwardType *)", "detailed_name": "void foo(ForwardType *)",
"declarations": [],
"definition_spelling": "2:6-2:9", "definition_spelling": "2:6-2:9",
"definition_extent": "2:1-2:26" "definition_extent": "2:1-2:26",
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -9,6 +9,8 @@ void foo(Type& a0, const Type& a1) {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Type", "usr": "c:@S@Type",
@ -16,6 +18,11 @@ OUTPUT:
"detailed_name": "Type", "detailed_name": "Type",
"definition_spelling": "1:8-1:12", "definition_spelling": "1:8-1:12",
"definition_extent": "1:1-1:15", "definition_extent": "1:1-1:15",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0, 1, 2, 3, 4, 5], "instances": [0, 1, 2, 3, 4, 5],
"uses": ["1:8-1:12", "3:10-3:14", "3:26-3:30", "4:3-4:7", "5:3-5:7", "6:9-6:13", "7:9-7:13"] "uses": ["1:8-1:12", "3:10-3:14", "3:26-3:30", "4:3-4:7", "5:3-5:7", "6:9-6:13", "7:9-7:13"]
}], }],
@ -25,8 +32,13 @@ OUTPUT:
"usr": "c:@F@foo#&$@S@Type#&1S1_#", "usr": "c:@F@foo#&$@S@Type#&1S1_#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo(Type &, const Type &)", "detailed_name": "void foo(Type &, const Type &)",
"declarations": [],
"definition_spelling": "3:6-3:9", "definition_spelling": "3:6-3:9",
"definition_extent": "3:1-8:2" "definition_extent": "3:1-8:2",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -3,14 +3,22 @@ static Type t;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Type", "usr": "c:@S@Type",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:8-1:12", "2:8-2:12"] "uses": ["1:8-1:12", "2:8-2:12"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:type_usage_declare_static.cc@t", "usr": "c:type_usage_declare_static.cc@t",

View File

@ -20,11 +20,19 @@ static Type* bar() {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Type", "usr": "c:@S@Type",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:8-1:12", "3:1-3:5", "4:1-4:5", "5:1-5:5", "8:3-8:7", "12:1-12:5", "15:14-15:18", "17:8-17:12", "18:8-18:12"] "uses": ["1:8-1:12", "3:1-3:5", "4:1-4:5", "5:1-5:5", "8:3-8:7", "12:1-12:5", "15:14-15:18", "17:8-17:12", "18:8-18:12"]
}, { }, {
"id": 1, "id": 1,
@ -33,7 +41,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "7:7-7:10", "definition_spelling": "7:7-7:10",
"definition_extent": "7:1-10:2", "definition_extent": "7:1-10:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [1, 2], "funcs": [1, 2],
"vars": [],
"instances": [],
"uses": ["7:7-7:10", "12:7-12:10", "13:6-13:9"] "uses": ["7:7-7:10", "12:7-12:10", "13:6-13:9"]
}], }],
"funcs": [{ "funcs": [{
@ -45,14 +58,20 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "3:7-3:10", "spelling": "3:7-3:10",
"extent": "3:1-3:12", "extent": "3:1-3:12",
"content": "Type* foo()" "content": "Type* foo()",
"param_spellings": []
}, { }, {
"spelling": "4:7-4:10", "spelling": "4:7-4:10",
"extent": "4:1-4:12", "extent": "4:1-4:12",
"content": "Type* foo()" "content": "Type* foo()",
"param_spellings": []
}], }],
"definition_spelling": "5:7-5:10", "definition_spelling": "5:7-5:10",
"definition_extent": "5:1-5:15" "definition_extent": "5:1-5:15",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
@ -67,7 +86,11 @@ OUTPUT:
}], }],
"definition_spelling": "12:12-12:15", "definition_spelling": "12:12-12:15",
"definition_extent": "12:1-12:23", "definition_extent": "12:1-12:23",
"declaring_type": 1 "declaring_type": 1,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
@ -77,11 +100,16 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "9:8-9:13", "spelling": "9:8-9:13",
"extent": "9:3-9:15", "extent": "9:3-9:15",
"content": "void Empty()" "content": "void Empty()",
"param_spellings": []
}], }],
"definition_spelling": "13:11-13:16", "definition_spelling": "13:11-13:16",
"definition_extent": "13:1-13:21", "definition_extent": "13:1-13:21",
"declaring_type": 1 "declaring_type": 1,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 3, "id": 3,
"is_operator": false, "is_operator": false,
@ -91,8 +119,13 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "15:20-15:28", "spelling": "15:20-15:28",
"extent": "15:1-15:30", "extent": "15:1-15:30",
"content": "extern const Type& external()" "content": "extern const Type& external()",
}] "param_spellings": []
}],
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 4, "id": 4,
"is_operator": false, "is_operator": false,
@ -102,10 +135,16 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "17:14-17:17", "spelling": "17:14-17:17",
"extent": "17:1-17:19", "extent": "17:1-17:19",
"content": "static Type* bar()" "content": "static Type* bar()",
"param_spellings": []
}], }],
"definition_spelling": "18:14-18:17", "definition_spelling": "18:14-18:17",
"definition_extent": "18:1-18:22" "definition_extent": "18:1-18:22",
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -12,11 +12,19 @@ void accept3(Foo3*) {}
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:8-1:11", "2:14-2:17", "3:9-3:12", "7:13-7:16"] "uses": ["1:8-1:11", "2:14-2:17", "3:9-3:12", "7:13-7:16"]
}, { }, {
"id": 1, "id": 1,
@ -26,6 +34,12 @@ OUTPUT:
"definition_spelling": "2:7-2:11", "definition_spelling": "2:7-2:11",
"definition_extent": "2:1-2:18", "definition_extent": "2:1-2:18",
"alias_of": 0, "alias_of": 0,
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:7-2:11", "4:14-4:18", "8:14-8:18"] "uses": ["2:7-2:11", "4:14-4:18", "8:14-8:18"]
}, { }, {
"id": 2, "id": 2,
@ -35,6 +49,12 @@ OUTPUT:
"definition_spelling": "3:13-3:17", "definition_spelling": "3:13-3:17",
"definition_extent": "3:1-3:17", "definition_extent": "3:1-3:17",
"alias_of": 0, "alias_of": 0,
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["3:13-3:17", "9:14-9:18"] "uses": ["3:13-3:17", "9:14-9:18"]
}, { }, {
"id": 3, "id": 3,
@ -44,6 +64,12 @@ OUTPUT:
"definition_spelling": "4:7-4:11", "definition_spelling": "4:7-4:11",
"definition_extent": "4:1-4:18", "definition_extent": "4:1-4:18",
"alias_of": 1, "alias_of": 1,
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["4:7-4:11", "10:14-10:18"] "uses": ["4:7-4:11", "10:14-10:18"]
}, { }, {
"id": 4, "id": 4,
@ -52,6 +78,12 @@ OUTPUT:
"detailed_name": "Foo4", "detailed_name": "Foo4",
"definition_spelling": "5:7-5:11", "definition_spelling": "5:7-5:11",
"definition_extent": "5:1-5:17", "definition_extent": "5:1-5:17",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["5:7-5:11"] "uses": ["5:7-5:11"]
}], }],
"funcs": [{ "funcs": [{
@ -60,32 +92,53 @@ OUTPUT:
"usr": "c:@F@accept#*$@S@Foo#", "usr": "c:@F@accept#*$@S@Foo#",
"short_name": "accept", "short_name": "accept",
"detailed_name": "void accept(Foo *)", "detailed_name": "void accept(Foo *)",
"declarations": [],
"definition_spelling": "7:6-7:12", "definition_spelling": "7:6-7:12",
"definition_extent": "7:1-7:21" "definition_extent": "7:1-7:21",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@accept1#**$@S@Foo#", "usr": "c:@F@accept1#**$@S@Foo#",
"short_name": "accept1", "short_name": "accept1",
"detailed_name": "void accept1(Foo1 *)", "detailed_name": "void accept1(Foo1 *)",
"declarations": [],
"definition_spelling": "8:6-8:13", "definition_spelling": "8:6-8:13",
"definition_extent": "8:1-8:23" "definition_extent": "8:1-8:23",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@accept2#*$@S@Foo#", "usr": "c:@F@accept2#*$@S@Foo#",
"short_name": "accept2", "short_name": "accept2",
"detailed_name": "void accept2(Foo2 *)", "detailed_name": "void accept2(Foo2 *)",
"declarations": [],
"definition_spelling": "9:6-9:13", "definition_spelling": "9:6-9:13",
"definition_extent": "9:1-9:23" "definition_extent": "9:1-9:23",
"derived": [],
"locals": [],
"callers": [],
"callees": []
}, { }, {
"id": 3, "id": 3,
"is_operator": false, "is_operator": false,
"usr": "c:@F@accept3#**$@S@Foo#", "usr": "c:@F@accept3#**$@S@Foo#",
"short_name": "accept3", "short_name": "accept3",
"detailed_name": "void accept3(Foo3 *)", "detailed_name": "void accept3(Foo3 *)",
"declarations": [],
"definition_spelling": "10:6-10:13", "definition_spelling": "10:6-10:13",
"definition_extent": "10:1-10:23" "definition_extent": "10:1-10:23",
}] "derived": [],
"locals": [],
"callers": [],
"callees": []
}],
"vars": []
} }
*/ */

View File

@ -7,11 +7,19 @@ typedef Foo<Foo1> Foo2;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@ST>1#T@Foo", "usr": "c:@ST>1#T@Foo",
"short_name": "", "short_name": "",
"detailed_name": "", "detailed_name": "",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["2:8-2:11", "4:14-4:17", "5:9-5:12"] "uses": ["2:8-2:11", "4:14-4:17", "5:9-5:12"]
}, { }, {
"id": 1, "id": 1,
@ -21,6 +29,12 @@ OUTPUT:
"definition_spelling": "4:7-4:11", "definition_spelling": "4:7-4:11",
"definition_extent": "4:1-4:22", "definition_extent": "4:1-4:22",
"alias_of": 0, "alias_of": 0,
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["4:7-4:11", "5:13-5:17"] "uses": ["4:7-4:11", "5:13-5:17"]
}, { }, {
"id": 2, "id": 2,
@ -30,7 +44,15 @@ OUTPUT:
"definition_spelling": "5:19-5:23", "definition_spelling": "5:19-5:23",
"definition_extent": "5:1-5:23", "definition_extent": "5:1-5:23",
"alias_of": 0, "alias_of": 0,
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["5:19-5:23"] "uses": ["5:19-5:23"]
}] }],
"funcs": [],
"vars": []
} }
*/ */

View File

@ -12,6 +12,8 @@ extern Foo foo;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -19,7 +21,11 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [0], "funcs": [0],
"vars": [],
"instances": [0, 1], "instances": [0, 1],
"uses": ["1:7-1:10", "2:3-2:6", "5:1-5:4", "5:6-5:9", "6:3-6:6", "10:8-10:11"] "uses": ["1:7-1:10", "2:3-2:6", "5:1-5:4", "5:6-5:9", "6:3-6:6", "10:8-10:11"]
}], }],
@ -32,11 +38,16 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "2:8-2:12", "spelling": "2:8-2:12",
"extent": "2:3-2:14", "extent": "2:3-2:14",
"content": "Foo* make()" "content": "Foo* make()",
"param_spellings": []
}], }],
"definition_spelling": "5:11-5:15", "definition_spelling": "5:11-5:15",
"definition_extent": "5:1-8:2", "definition_extent": "5:1-8:2",
"declaring_type": 0 "declaring_type": 0,
"derived": [],
"locals": [],
"callers": [],
"callees": []
}], }],
"vars": [{ "vars": [{
"id": 0, "id": 0,

View File

@ -17,6 +17,8 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -24,7 +26,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "5:8-5:11", "definition_spelling": "5:8-5:11",
"definition_extent": "5:1-8:2", "definition_extent": "5:1-8:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [1, 0], "vars": [1, 0],
"instances": [],
"uses": ["5:8-5:11", "10:5-10:8", "14:22-14:25", "14:40-14:43"] "uses": ["5:8-5:11", "10:5-10:8", "14:22-14:25", "14:40-14:43"]
}], }],
"funcs": [{ "funcs": [{
@ -39,7 +46,10 @@ OUTPUT:
"content": "void called(int a)", "content": "void called(int a)",
"param_spellings": ["1:17-1:18"] "param_spellings": ["1:17-1:18"]
}], }],
"callers": ["2@14:3-14:9"] "derived": [],
"locals": [],
"callers": ["2@14:3-14:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
@ -49,17 +59,25 @@ OUTPUT:
"declarations": [{ "declarations": [{
"spelling": "3:5-3:8", "spelling": "3:5-3:8",
"extent": "3:1-3:10", "extent": "3:1-3:10",
"content": "int gen()" "content": "int gen()",
"param_spellings": []
}], }],
"callers": ["2@14:14-14:17"] "derived": [],
"locals": [],
"callers": ["2@14:14-14:17"],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "12:6-12:9", "definition_spelling": "12:6-12:9",
"definition_extent": "12:1-15:2", "definition_extent": "12:1-15:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@14:3-14:9", "1@14:14-14:17"] "callees": ["0@14:3-14:9", "1@14:14-14:17"]
}], }],
"vars": [{ "vars": [{

View File

@ -9,6 +9,9 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
@ -21,25 +24,37 @@ OUTPUT:
"content": "void called(int a)", "content": "void called(int a)",
"param_spellings": ["1:17-1:18"] "param_spellings": ["1:17-1:18"]
}], }],
"callers": ["2@6:3-6:9"] "derived": [],
"locals": [],
"callers": ["2@6:3-6:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@gen#", "usr": "c:@F@gen#",
"short_name": "gen", "short_name": "gen",
"detailed_name": "int gen()", "detailed_name": "int gen()",
"declarations": [],
"definition_spelling": "3:5-3:8", "definition_spelling": "3:5-3:8",
"definition_extent": "3:1-3:24", "definition_extent": "3:1-3:24",
"callers": ["2@6:10-6:13", "2@6:18-6:21"] "derived": [],
"locals": [],
"callers": ["2@6:10-6:13", "2@6:18-6:21"],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "5:6-5:9", "definition_spelling": "5:6-5:9",
"definition_extent": "5:1-7:2", "definition_extent": "5:1-7:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@6:3-6:9", "1@6:10-6:13", "1@6:18-6:21"] "callees": ["0@6:3-6:9", "1@6:10-6:13", "1@6:18-6:21"]
}] }],
"vars": []
} }
*/ */

View File

@ -10,23 +10,34 @@ void caller() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [],
"funcs": [{ "funcs": [{
"id": 0, "id": 0,
"is_operator": false, "is_operator": false,
"usr": "c:@F@called#", "usr": "c:@F@called#",
"short_name": "called", "short_name": "called",
"detailed_name": "void called()", "detailed_name": "void called()",
"declarations": [],
"definition_spelling": "1:6-1:12", "definition_spelling": "1:6-1:12",
"definition_extent": "1:1-1:17", "definition_extent": "1:1-1:17",
"callers": ["1@4:13-4:19", "1@7:3-7:9"] "derived": [],
"locals": [],
"callers": ["1@4:13-4:19", "1@7:3-7:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@caller#", "usr": "c:@F@caller#",
"short_name": "caller", "short_name": "caller",
"detailed_name": "void caller()", "detailed_name": "void caller()",
"declarations": [],
"definition_spelling": "3:6-3:12", "definition_spelling": "3:6-3:12",
"definition_extent": "3:1-8:2", "definition_extent": "3:1-8:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@4:13-4:19", "0@7:3-7:9"] "callees": ["0@4:13-4:19", "0@7:3-7:9"]
}], }],
"vars": [{ "vars": [{

View File

@ -20,6 +20,8 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -27,6 +29,10 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:7-1:10", "definition_spelling": "1:7-1:10",
"definition_extent": "1:1-5:2", "definition_extent": "1:1-5:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0, 1], "vars": [0, 1],
"instances": [2], "instances": [2],
"uses": ["1:7-1:10", "11:3-11:6"] "uses": ["1:7-1:10", "11:3-11:6"]
@ -43,7 +49,10 @@ OUTPUT:
"content": "void accept(int)", "content": "void accept(int)",
"param_spellings": ["7:16-7:16"] "param_spellings": ["7:16-7:16"]
}], }],
"callers": ["2@14:3-14:9", "2@15:3-15:9", "2@17:3-17:9"] "derived": [],
"locals": [],
"callers": ["2@14:3-14:9", "2@15:3-15:9", "2@17:3-17:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
@ -56,15 +65,22 @@ OUTPUT:
"content": "void accept(int*)", "content": "void accept(int*)",
"param_spellings": ["8:17-8:17"] "param_spellings": ["8:17-8:17"]
}], }],
"callers": ["2@16:3-16:9"] "derived": [],
"locals": [],
"callers": ["2@16:3-16:9"],
"callees": []
}, { }, {
"id": 2, "id": 2,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "10:6-10:9", "definition_spelling": "10:6-10:9",
"definition_extent": "10:1-18:2", "definition_extent": "10:1-18:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@14:3-14:9", "0@15:3-15:9", "1@16:3-16:9", "0@17:3-17:9"] "callees": ["0@14:3-14:9", "0@15:3-15:9", "1@16:3-16:9", "0@17:3-17:9"]
}], }],
"vars": [{ "vars": [{

View File

@ -11,6 +11,8 @@ void foo() {
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@S@Foo", "usr": "c:@S@Foo",
@ -18,6 +20,12 @@ OUTPUT:
"detailed_name": "Foo", "detailed_name": "Foo",
"definition_spelling": "1:8-1:11", "definition_spelling": "1:8-1:11",
"definition_extent": "1:1-3:2", "definition_extent": "1:1-3:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [],
"uses": ["1:8-1:11", "8:10-8:13"] "uses": ["1:8-1:11", "8:10-8:13"]
}], }],
"funcs": [{ "funcs": [{
@ -32,15 +40,22 @@ OUTPUT:
"content": "void accept(int)", "content": "void accept(int)",
"param_spellings": ["5:16-5:16"] "param_spellings": ["5:16-5:16"]
}], }],
"callers": ["1@8:3-8:9"] "derived": [],
"locals": [],
"callers": ["1@8:3-8:9"],
"callees": []
}, { }, {
"id": 1, "id": 1,
"is_operator": false, "is_operator": false,
"usr": "c:@F@foo#", "usr": "c:@F@foo#",
"short_name": "foo", "short_name": "foo",
"detailed_name": "void foo()", "detailed_name": "void foo()",
"declarations": [],
"definition_spelling": "7:6-7:9", "definition_spelling": "7:6-7:9",
"definition_extent": "7:1-9:2", "definition_extent": "7:1-9:2",
"derived": [],
"locals": [],
"callers": [],
"callees": ["0@8:3-8:9"] "callees": ["0@8:3-8:9"]
}], }],
"vars": [{ "vars": [{

View File

@ -10,6 +10,8 @@ const VarType Holder::static_var;
/* /*
OUTPUT: OUTPUT:
{ {
"includes": [],
"skipped_by_preprocessor": [],
"types": [{ "types": [{
"id": 0, "id": 0,
"usr": "c:@E@VarType", "usr": "c:@E@VarType",
@ -17,6 +19,11 @@ OUTPUT:
"detailed_name": "VarType", "detailed_name": "VarType",
"definition_spelling": "1:6-1:13", "definition_spelling": "1:6-1:13",
"definition_extent": "1:1-1:16", "definition_extent": "1:1-1:16",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0], "instances": [0],
"uses": ["1:6-1:13", "4:20-4:27", "4:42-4:49", "7:7-7:14"] "uses": ["1:6-1:13", "4:20-4:27", "4:42-4:49", "7:7-7:14"]
}, { }, {
@ -26,9 +33,15 @@ OUTPUT:
"detailed_name": "Holder", "detailed_name": "Holder",
"definition_spelling": "3:8-3:14", "definition_spelling": "3:8-3:14",
"definition_extent": "3:1-5:2", "definition_extent": "3:1-5:2",
"parents": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [0], "vars": [0],
"instances": [],
"uses": ["3:8-3:14", "7:15-7:21"] "uses": ["3:8-3:14", "7:15-7:21"]
}], }],
"funcs": [],
"vars": [{ "vars": [{
"id": 0, "id": 0,
"usr": "c:@S@Holder@static_var", "usr": "c:@S@Holder@static_var",

Some files were not shown because too many files have changed in this diff Show More