@interface AClass + (void)test; - (void)anInstanceMethod; @property (nonatomic) int aProp; @end @implementation AClass + (void)test {} - (void)anInstanceMethod {} @end int main(void) { AClass *instance = [AClass init]; [instance anInstanceMethod]; instance.aProp = 12; } /* OUTPUT: { "includes": [], "skipped_by_preprocessor": [], "types": [{ "id": 0, "usr": 11832280568361305387, "detailed_name": "AClass", "short_name": "AClass", "kind": 7, "spell": "7:17-7:23|-1|1|2", "extent": "7:1-10:2|-1|1|0", "parents": [], "derived": [], "types": [], "funcs": [], "vars": [], "instances": [2], "uses": ["14:3-14:9|-1|1|4", "14:23-14:29|-1|1|4"] }, { "id": 1, "usr": 17, "detailed_name": "", "short_name": "", "kind": 0, "parents": [], "derived": [], "types": [], "funcs": [], "vars": [], "instances": [0, 1], "uses": [] }], "funcs": [{ "id": 0, "usr": 12775970426728664910, "detailed_name": "AClass::test", "short_name": "test", "kind": 17, "storage": 0, "declarations": [{ "spelling": "2:11-2:15", "extent": "2:3-2:16", "content": "+ (void)test;", "param_spellings": [] }], "spell": "8:9-8:13|-1|1|2", "extent": "8:1-8:16|-1|1|0", "base": [], "derived": [], "locals": [], "uses": [], "callees": [] }, { "id": 1, "usr": 4096877434426330804, "detailed_name": "AClass::anInstanceMethod", "short_name": "anInstanceMethod", "kind": 16, "storage": 0, "declarations": [{ "spelling": "3:11-3:27", "extent": "3:3-3:28", "content": "- (void)anInstanceMethod;", "param_spellings": [] }], "spell": "9:9-9:25|-1|1|2", "extent": "9:1-9:28|-1|1|0", "base": [], "derived": [], "locals": [], "uses": ["15:13-15:29|4|3|64"], "callees": [] }, { "id": 2, "usr": 12774569141855220778, "detailed_name": "AClass::aProp", "short_name": "aProp", "kind": 16, "storage": 0, "declarations": [{ "spelling": "0:0-0:0", "extent": "4:29-4:34", "content": "aProp", "param_spellings": [] }], "extent": "4:29-4:34|-1|1|0", "base": [], "derived": [], "locals": [], "uses": [], "callees": [] }, { "id": 3, "usr": 17992064398538597892, "detailed_name": "AClass::setAProp:", "short_name": "setAProp:", "kind": 16, "storage": 0, "declarations": [{ "spelling": "0:0-0:0", "extent": "4:29-4:34", "content": "aProp", "param_spellings": ["4:29-4:34"] }], "extent": "4:29-4:34|-1|1|0", "base": [], "derived": [], "locals": [], "uses": ["0:0-0:0|4|3|64"], "callees": [] }, { "id": 4, "usr": 7033269674615638282, "detailed_name": "int main()", "short_name": "main", "kind": 12, "storage": 1, "declarations": [], "spell": "12:5-12:9|-1|1|2", "extent": "12:1-17:2|-1|1|0", "base": [], "derived": [], "locals": [], "uses": [], "callees": ["15:13-15:29|1|3|64", "0:0-0:0|3|3|64"] }], "vars": [{ "id": 0, "usr": 14842397373703114213, "detailed_name": "int AClass::aProp", "short_name": "aProp", "declarations": ["4:29-4:34|-1|1|1"], "type": 1, "uses": ["16:12-16:17|4|3|4"], "kind": 19, "storage": 0 }, { "id": 1, "usr": 17112602610366149042, "detailed_name": "int AClass::_aProp", "short_name": "_aProp", "declarations": [], "spell": "4:29-4:34|-1|1|2", "extent": "4:29-4:34|-1|1|0", "type": 1, "uses": [], "kind": 14, "storage": 0 }, { "id": 2, "usr": 6849095699869081177, "detailed_name": "AClass *instance", "short_name": "instance", "hover": "AClass *instance = [AClass init]", "declarations": [], "spell": "14:11-14:19|4|3|2", "extent": "14:3-14:35|4|3|2", "type": 0, "uses": ["15:4-15:12|4|3|4", "16:3-16:11|4|3|4"], "kind": 13, "storage": 1 }] } */