ccls/index_tests/usage/usage_inside_of_call.cc

150 lines
3.4 KiB
C++

void called(int a);
int gen();
struct Foo {
static int static_var;
int field_var;
};
int Foo::static_var = 0;
void foo() {
int a = 5;
called(a + gen() + Foo().field_var + Foo::static_var);
}
/*
OUTPUT:
{
"includes": [],
"skipped_by_preprocessor": [],
"types": [{
"id": 0,
"usr": 15041163540773201510,
"detailed_name": "Foo",
"qual_name_offset": 0,
"short_name": "Foo",
"kind": 23,
"declarations": [],
"spell": "5:8-5:11|-1|1|2",
"extent": "5:1-8:2|-1|1|0",
"bases": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [1, 0],
"instances": [],
"uses": ["10:5-10:8|-1|1|4", "14:22-14:25|-1|1|4", "14:40-14:43|-1|1|4"]
}, {
"id": 1,
"usr": 17,
"detailed_name": "",
"qual_name_offset": 0,
"short_name": "",
"kind": 0,
"declarations": [],
"bases": [],
"derived": [],
"types": [],
"funcs": [],
"vars": [],
"instances": [0, 1, 2],
"uses": []
}],
"funcs": [{
"id": 0,
"usr": 18319417758892371313,
"detailed_name": "void called(int a)",
"qual_name_offset": 5,
"short_name": "called",
"kind": 12,
"storage": 1,
"declarations": [{
"spell": "1:6-1:12|-1|1|1",
"param_spellings": ["1:17-1:18"]
}],
"bases": [],
"derived": [],
"vars": [],
"uses": ["14:3-14:9|2|3|32"],
"callees": []
}, {
"id": 1,
"usr": 11404602816585117695,
"detailed_name": "int gen()",
"qual_name_offset": 4,
"short_name": "gen",
"kind": 12,
"storage": 1,
"declarations": [{
"spell": "3:5-3:8|-1|1|1",
"param_spellings": []
}],
"bases": [],
"derived": [],
"vars": [],
"uses": ["14:14-14:17|2|3|32"],
"callees": []
}, {
"id": 2,
"usr": 4259594751088586730,
"detailed_name": "void foo()",
"qual_name_offset": 5,
"short_name": "foo",
"kind": 12,
"storage": 1,
"declarations": [],
"spell": "12:6-12:9|-1|1|2",
"extent": "12:1-15:2|-1|1|0",
"bases": [],
"derived": [],
"vars": [2],
"uses": [],
"callees": ["14:3-14:9|0|3|32", "14:14-14:17|1|3|32"]
}],
"vars": [{
"id": 0,
"usr": 11489549839875479478,
"detailed_name": "int Foo::static_var",
"qual_name_offset": 4,
"short_name": "static_var",
"hover": "int Foo::static_var = 0",
"declarations": ["6:14-6:24|0|2|1"],
"spell": "10:10-10:20|0|2|2",
"extent": "10:1-10:24|-1|1|0",
"type": 1,
"uses": ["14:45-14:55|2|3|4"],
"kind": 8,
"storage": 1
}, {
"id": 1,
"usr": 9648311402855509901,
"detailed_name": "int Foo::field_var",
"qual_name_offset": 4,
"short_name": "field_var",
"declarations": [],
"spell": "7:7-7:16|0|2|2",
"extent": "7:3-7:16|0|2|0",
"type": 1,
"uses": ["14:28-14:37|2|3|4"],
"kind": 8,
"storage": 0
}, {
"id": 2,
"usr": 8039186520399841081,
"detailed_name": "int a",
"qual_name_offset": 4,
"short_name": "a",
"hover": "int a = 5",
"declarations": [],
"spell": "13:7-13:8|2|3|2",
"extent": "13:3-13:12|2|3|0",
"type": 1,
"uses": ["14:10-14:11|2|3|4"],
"kind": 13,
"storage": 1
}]
}
*/