@@ -1111,7 +1111,9 @@ struct has_function_signature<ObjCInstanceMethodRecord>
1111
1111
template <>
1112
1112
struct has_function_signature <ObjCClassMethodRecord> : public std::true_type {};
1113
1113
template <>
1114
- struct has_function_signature <CXXMethodRecord> : public std::true_type {};
1114
+ struct has_function_signature <CXXInstanceMethodRecord> : public std::true_type {};
1115
+ template <>
1116
+ struct has_function_signature <CXXStaticMethodRecord> : public std::true_type {};
1115
1117
template <>
1116
1118
struct has_function_signature <CXXMethodTemplateRecord> : public std::true_type {
1117
1119
};
@@ -1120,7 +1122,8 @@ struct has_function_signature<CXXMethodTemplateSpecializationRecord>
1120
1122
: public std::true_type {};
1121
1123
1122
1124
template <typename RecordTy> struct has_access : public std ::false_type {};
1123
- template <> struct has_access <CXXMethodRecord> : public std::true_type {};
1125
+ template <> struct has_access <CXXInstanceMethodRecord> : public std::true_type {};
1126
+ template <> struct has_access <CXXStaticMethodRecord> : public std::true_type {};
1124
1127
template <> struct has_access <CXXFieldRecord> : public std::true_type {};
1125
1128
template <>
1126
1129
struct has_access <CXXMethodTemplateRecord> : public std::true_type {};
@@ -1261,7 +1264,7 @@ class APISet {
1261
1264
DeclarationFragments SubHeading, SymbolReference Context,
1262
1265
AccessControl Access, bool IsFromSystemHeaderg);
1263
1266
1264
- CXXFieldRecord *addCXXField (CXXClassRecord *CXXClass, StringRef Name,
1267
+ CXXFieldRecord *addCXXField (APIRecord *CXXClass, StringRef Name,
1265
1268
StringRef USR, PresumedLoc Loc,
1266
1269
AvailabilitySet Availabilities,
1267
1270
const DocComment &Comment,
@@ -1316,18 +1319,25 @@ class APISet {
1316
1319
DeclarationFragments SubHeading, Template Template,
1317
1320
bool IsFromSystemHeader);
1318
1321
1319
- CXXMethodRecord *
1320
- addCXXMethod (CXXClassRecord *CXXClassRecord, StringRef Name, StringRef USR,
1321
- PresumedLoc Loc, AvailabilitySet Availability,
1322
- const DocComment &Comment, DeclarationFragments Declaration,
1323
- DeclarationFragments SubHeading, FunctionSignature Signature,
1324
- bool IsStatic, AccessControl Access, bool IsFromSystemHeader);
1322
+ CXXMethodRecord *addCXXInstanceMethod (
1323
+ APIRecord *Parent, StringRef Name, StringRef USR, PresumedLoc Loc,
1324
+ AvailabilitySet Availability, const DocComment &Comment,
1325
+ DeclarationFragments Declaration, DeclarationFragments SubHeading,
1326
+ FunctionSignature Signature, AccessControl Access,
1327
+ bool IsFromSystemHeader);
1328
+
1329
+ CXXMethodRecord *addCXXStaticMethod (
1330
+ APIRecord *Parent, StringRef Name, StringRef USR, PresumedLoc Loc,
1331
+ AvailabilitySet Availability, const DocComment &Comment,
1332
+ DeclarationFragments Declaration, DeclarationFragments SubHeading,
1333
+ FunctionSignature Signature, AccessControl Access,
1334
+ bool IsFromSystemHeader);
1325
1335
1326
1336
CXXMethodRecord *addCXXSpecialMethod (
1327
- CXXClassRecord *CXXClassRecord , StringRef Name, StringRef USR,
1328
- PresumedLoc Loc, AvailabilitySet Availability, const DocComment &Comment,
1337
+ APIRecord *Parent , StringRef Name, StringRef USR, PresumedLoc Loc ,
1338
+ AvailabilitySet Availability, const DocComment &Comment,
1329
1339
DeclarationFragments Declaration, DeclarationFragments SubHeading,
1330
- FunctionSignature Signature, bool IsConstructor, AccessControl Access,
1340
+ FunctionSignature Signature, AccessControl Access,
1331
1341
bool IsFromSystemHeader);
1332
1342
1333
1343
CXXMethodTemplateRecord *addCXXMethodTemplate (
@@ -1502,6 +1512,13 @@ class APISet {
1502
1512
const RecordMap<CXXMethodTemplateRecord> &getCXXMethodTemplates () const {
1503
1513
return CXXMethodTemplates;
1504
1514
}
1515
+ const RecordMap<CXXInstanceMethodRecord> &getCXXInstanceMethods () const {
1516
+ return CXXInstanceMethods;
1517
+ }
1518
+ const RecordMap<CXXStaticMethodRecord> &getCXXStaticMethods () const {
1519
+ return CXXStaticMethods;
1520
+ }
1521
+ const RecordMap<CXXFieldRecord> &getCXXFields () const { return CXXFields; }
1505
1522
const RecordMap<CXXMethodTemplateSpecializationRecord> &
1506
1523
getCXXMethodTemplateSpecializations () const {
1507
1524
return CXXMethodTemplateSpecializations;
@@ -1588,6 +1605,10 @@ class APISet {
1588
1605
RecordMap<EnumRecord> Enums;
1589
1606
RecordMap<StructRecord> Structs;
1590
1607
RecordMap<CXXClassRecord> CXXClasses;
1608
+ RecordMap<CXXFieldRecord> CXXFields;
1609
+ RecordMap<CXXMethodRecord> CXXMethods;
1610
+ RecordMap<CXXInstanceMethodRecord> CXXInstanceMethods;
1611
+ RecordMap<CXXStaticMethodRecord> CXXStaticMethods;
1591
1612
RecordMap<CXXMethodTemplateRecord> CXXMethodTemplates;
1592
1613
RecordMap<CXXMethodTemplateSpecializationRecord>
1593
1614
CXXMethodTemplateSpecializations;
0 commit comments