clang 18.0.0git
|
APISet holds the set of API records collected from given inputs. More...
#include "clang/ExtractAPI/API.h"
Public Types | |
template<typename RecordTy , typename = std::enable_if_t<std::is_base_of<APIRecord, RecordTy>::value>> | |
using | RecordMap = llvm::MapVector< StringRef, std::unique_ptr< RecordTy > > |
A mapping type to store a set of APIRecords with the USR as the key. | |
Public Attributes | |
const std::string | ProductName |
APISet holds the set of API records collected from given inputs.
using clang::extractapi::APISet::RecordMap = llvm::MapVector<StringRef, std::unique_ptr<RecordTy> > |
|
inline |
Definition at line 1617 of file API.h.
References clang::Target.
ClassTemplateRecord * APISet::addClassTemplate | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
Template | Template, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 233 of file API.cpp.
References clang::Declaration, and Parent.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXRecordDecl().
ClassTemplatePartialSpecializationRecord * APISet::addClassTemplatePartialSpecialization | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
Template | Template, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 264 of file API.cpp.
References clang::Declaration, and Parent.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitClassTemplatePartialSpecializationDecl().
ClassTemplateSpecializationRecord * APISet::addClassTemplateSpecialization | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 248 of file API.cpp.
References clang::Declaration, and Parent.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitClassTemplateSpecializationDecl().
ConceptRecord * APISet::addConcept | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
Template | Template, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 304 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitConceptDecl().
CXXClassRecord * APISet::addCXXClass | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
APIRecord::RecordKind | Kind, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 218 of file API.cpp.
References clang::Declaration, and Parent.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXRecordDecl().
CXXFieldRecord * APISet::addCXXField | ( | APIRecord * | CXXClass, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availabilities, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 189 of file API.cpp.
References clang::Declaration, clang::extractapi::APIRecord::getKind(), clang::extractapi::APIRecord::Name, and clang::extractapi::APIRecord::USR.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFieldDecl().
CXXFieldTemplateRecord * APISet::addCXXFieldTemplate | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
AccessControl | Access, | ||
Template | Template, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 202 of file API.cpp.
References clang::Declaration, and Parent.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateDecl().
CXXMethodRecord * APISet::addCXXInstanceMethod | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 315 of file API.cpp.
References clang::Declaration, clang::extractapi::APIRecord::getKind(), clang::extractapi::APIRecord::Name, and clang::extractapi::APIRecord::USR.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConstructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConversionDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXDestructorDecl(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl().
CXXMethodTemplateRecord * APISet::addCXXMethodTemplate | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
AccessControl | Access, | ||
Template | Template, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 349 of file API.cpp.
References clang::Declaration, and Parent.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl().
CXXMethodTemplateSpecializationRecord * APISet::addCXXMethodTemplateSpec | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 365 of file API.cpp.
References clang::Declaration, and Parent.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl().
CXXMethodRecord * clang::extractapi::APISet::addCXXSpecialMethod | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
CXXMethodRecord * APISet::addCXXStaticMethod | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 332 of file API.cpp.
References clang::Declaration, clang::extractapi::APIRecord::getKind(), clang::extractapi::APIRecord::Name, and clang::extractapi::APIRecord::USR.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConversionDecl(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl().
EnumRecord * APISet::addEnum | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
bool | IsFromSystemHeader | ||
) |
Create and add an enum record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 137 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitEnumDecl().
EnumConstantRecord * APISet::addEnumConstant | ( | EnumRecord * | Enum, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
bool | IsFromSystemHeader | ||
) |
Create and add an enum constant record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 121 of file API.cpp.
References clang::Declaration, and clang::Enum.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordEnumConstants().
GlobalFunctionRecord * APISet::addGlobalFunction | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
bool | IsFromSystemHeader | ||
) |
Create and add a function record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 84 of file API.cpp.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFunctionDecl().
GlobalFunctionTemplateRecord * APISet::addGlobalFunctionTemplate | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
Template | Template, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 96 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFunctionTemplateDecl().
GlobalFunctionTemplateSpecializationRecord * APISet::addGlobalFunctionTemplateSpecialization | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 109 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFunctionDecl().
GlobalVariableRecord * APISet::addGlobalVar | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeadin, | ||
bool | IsFromSystemHeaderg | ||
) |
Create and add a global variable record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 63 of file API.cpp.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarDecl().
GlobalVariableTemplateRecord * APISet::addGlobalVariableTemplate | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
Template | Template, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 72 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateDecl().
GlobalVariableTemplatePartialSpecializationRecord * APISet::addGlobalVariableTemplatePartialSpecialization | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
Template | Template, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 292 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplatePartialSpecializationDecl().
GlobalVariableTemplateSpecializationRecord * APISet::addGlobalVariableTemplateSpecialization | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
bool | IsFromSystemHeader | ||
) |
Definition at line 280 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateSpecializationDecl().
MacroDefinitionRecord * APISet::addMacroDefinition | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
bool | IsFromSystemHeader | ||
) |
Create a macro definition record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSRForMacro(StringRef Name,
SourceLocation SL, const SourceManager &SM) is a helper method to generate the USR for the macro and keep it alive in APISet.
Definition at line 489 of file API.cpp.
References clang::Declaration.
NamespaceRecord * APISet::addNamespace | ( | APIRecord * | Parent, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
bool | IsFromSystemHeaderg | ||
) |
Definition at line 47 of file API.cpp.
References clang::Declaration, and Parent.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitNamespaceDecl().
ObjCCategoryRecord * APISet::addObjCCategory | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
SymbolReference | Interface, | ||
bool | IsFromSystemHeader, | ||
bool | IsFromExternalModule | ||
) |
Create and add an Objective-C category record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 382 of file API.cpp.
References clang::Declaration, and clang::Interface.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCCategoryDecl().
ObjCInstanceVariableRecord * APISet::addObjCInstanceVariable | ( | ObjCContainerRecord * | Container, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
ObjCInstanceVariableRecord::AccessControl | Access, | ||
bool | IsFromSystemHeader | ||
) |
Create and add an Objective-C instance variable record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 462 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCInstanceVariables().
ObjCInterfaceRecord * APISet::addObjCInterface | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
SymbolReference | SuperClass, | ||
bool | IsFromSystemHeader | ||
) |
Create and add an Objective-C interface record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 404 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCInterfaceDecl().
ObjCMethodRecord * APISet::addObjCMethod | ( | ObjCContainerRecord * | Container, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
FunctionSignature | Signature, | ||
bool | IsInstanceMethod, | ||
bool | IsFromSystemHeader | ||
) |
Create and add an Objective-C method record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 416 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCMethods().
ObjCPropertyRecord * APISet::addObjCProperty | ( | ObjCContainerRecord * | Container, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
ObjCPropertyRecord::AttributeKind | Attributes, | ||
StringRef | GetterName, | ||
StringRef | SetterName, | ||
bool | IsOptional, | ||
bool | IsInstanceProperty, | ||
bool | IsFromSystemHeader | ||
) |
Create and add an Objective-C property record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 438 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCProperties().
ObjCProtocolRecord * APISet::addObjCProtocol | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
bool | IsFromSystemHeader | ||
) |
Create and add an Objective-C protocol record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 476 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCProtocolDecl().
StaticFieldRecord * APISet::addStaticField | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availabilities, | ||
LinkageInfo | Linkage, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
SymbolReference | Context, | ||
AccessControl | Access, | ||
bool | IsFromSystemHeaderg | ||
) |
Definition at line 176 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarDecl().
StructRecord * APISet::addStruct | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
bool | IsFromSystemHeader | ||
) |
Create and add a struct record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 164 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitRecordDecl().
StructFieldRecord * APISet::addStructField | ( | StructRecord * | Struct, |
StringRef | Name, | ||
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
bool | IsFromSystemHeader | ||
) |
Create and add a struct field record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 148 of file API.cpp.
References clang::Declaration, and clang::Struct.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordStructFields().
TypedefRecord * APISet::addTypedef | ( | StringRef | Name, |
StringRef | USR, | ||
PresumedLoc | Loc, | ||
AvailabilitySet | Availability, | ||
const DocComment & | Comment, | ||
DeclarationFragments | Declaration, | ||
DeclarationFragments | SubHeading, | ||
SymbolReference | UnderlyingType, | ||
bool | IsFromSystemHeader | ||
) |
Create a typedef record into the API set.
Note: the caller is responsible for keeping the StringRef Name
and USR
alive. APISet::copyString provides a way to copy strings into APISet itself, and APISet::recordUSR(const Decl *D) is a helper method to generate the USR for D
and keep it alive in APISet.
Definition at line 498 of file API.cpp.
References clang::Declaration.
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitTypedefNameDecl().
StringRef APISet::copyString | ( | StringRef | String | ) |
Copy String
into the Allocator in this APISet.
Definition at line 528 of file API.cpp.
References memcpy().
Referenced by clang::extractapi::TypedefUnderlyingTypeResolver::getSymbolReferenceForType(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCMethods(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCProperties(), recordUSR(), recordUSRForMacro(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConstructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConversionDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXDestructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitEnumDecl().
APIRecord * APISet::findRecordForUSR | ( | StringRef | USR | ) | const |
Finds the APIRecord for a given USR.
Definition at line 508 of file API.cpp.
Referenced by clang::extractapi::SymbolGraphSerializer::serializeSingleSymbolSGF(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConstructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConversionDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXDestructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFieldDecl(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateDecl().
|
inline |
Definition at line 1576 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseClassTemplatePartialSpecializationRecords().
|
inline |
Definition at line 1568 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseClassTemplateRecords().
|
inline |
Definition at line 1572 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseClassTemplateSpecializationRecords().
|
inline |
Definition at line 1567 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseConcepts().
|
inline |
Definition at line 1549 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseCXXClassRecords().
|
inline |
Definition at line 1559 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseCXXFields().
|
inline |
Definition at line 1564 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseCXXFieldTemplates().
|
inline |
Definition at line 1553 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseCXXInstanceMethods().
|
inline |
Definition at line 1550 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseCXXMethodTemplates().
|
inline |
Definition at line 1561 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseCXXMethodTemplateSpecializations().
|
inline |
Definition at line 1556 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseCXXStaticMethods().
|
inline |
Definition at line 1547 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseEnumRecords(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitTypedefNameDecl().
|
inline |
Definition at line 1518 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseGlobalFunctionRecords().
|
inline |
Definition at line 1522 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseGlobalFunctionTemplateRecords().
|
inline |
Definition at line 1526 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseGlobalFunctionTemplateSpecializationRecords().
|
inline |
Definition at line 1529 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseGlobalVariableRecords().
|
inline |
Definition at line 1544 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseGlobalVariableTemplatePartialSpecializationRecords().
|
inline |
Definition at line 1533 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseGlobalVariableTemplateRecords().
|
inline |
Definition at line 1540 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseGlobalVariableTemplateSpecializationRecords().
|
inline |
Get the language used by the APIs.
Definition at line 1515 of file API.h.
Referenced by clang::extractapi::SymbolGraphSerializer::serializeSingleSymbolSGF(), and clang::extractapi::SymbolGraphSerializer::visitObjCCategoryRecord().
|
inline |
Definition at line 1589 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseMacroDefinitionRecords().
|
inline |
Definition at line 1517 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseNamespaces().
|
inline |
Definition at line 1580 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseObjCCategories().
|
inline |
Definition at line 1583 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseObjCInterfaces(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCCategoryDecl().
|
inline |
Definition at line 1586 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseObjCProtocols().
|
inline |
|
inline |
Definition at line 1536 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseStaticFieldRecords().
|
inline |
Definition at line 1548 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseStructRecords(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitTypedefNameDecl().
|
inline |
|
inline |
Definition at line 1590 of file API.h.
Referenced by clang::extractapi::APISetVisitor< Derived >::traverseTypedefRecords().
StringRef APISet::recordUSR | ( | const Decl * | D | ) |
Generate and store the USR of declaration D
.
Note: The USR string is stored in and owned by Allocator.
Definition at line 515 of file API.cpp.
References copyString(), and clang::index::generateUSRForDecl().
Referenced by clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordEnumConstants(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCInstanceVariables(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCMethods(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCProperties(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordObjCProtocols(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::recordStructFields(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitClassTemplatePartialSpecializationDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitClassTemplateSpecializationDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitConceptDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConstructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXConversionDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXDestructorDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXMethodDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitCXXRecordDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitEnumDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFieldDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFunctionDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitFunctionTemplateDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitNamespaceDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCCategoryDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCInterfaceDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitObjCProtocolDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitRecordDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitTypedefNameDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateDecl(), clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplatePartialSpecializationDecl(), and clang::extractapi::impl::ExtractAPIVisitorBase< Derived >::VisitVarTemplateSpecializationDecl().
StringRef APISet::recordUSRForMacro | ( | StringRef | Name, |
SourceLocation | SL, | ||
const SourceManager & | SM | ||
) |
Generate and store the USR for a macro Name
.
Note: The USR string is stored in and owned by Allocator.
Definition at line 521 of file API.cpp.
References copyString(), clang::index::generateUSRForMacro(), and SM.
const std::string clang::extractapi::APISet::ProductName |
Definition at line 1666 of file API.h.
Referenced by clang::extractapi::SymbolGraphSerializer::serializeSingleSymbolSGF().