clang 20.0.0git
Public Member Functions | List of all members
clang::ASTDeclWriter Class Reference
Inheritance diagram for clang::ASTDeclWriter:
Inheritance graph
[legend]

Public Member Functions

 ASTDeclWriter (ASTWriter &Writer, ASTContext &Context, ASTWriter::RecordDataImpl &Record, bool GeneratingReducedBMI)
 
uint64_t Emit (Decl *D)
 
void Visit (Decl *D)
 
void VisitDecl (Decl *D)
 
void VisitPragmaCommentDecl (PragmaCommentDecl *D)
 
void VisitPragmaDetectMismatchDecl (PragmaDetectMismatchDecl *D)
 
void VisitTranslationUnitDecl (TranslationUnitDecl *D)
 
void VisitNamedDecl (NamedDecl *D)
 
void VisitLabelDecl (LabelDecl *LD)
 
void VisitNamespaceDecl (NamespaceDecl *D)
 
void VisitUsingDirectiveDecl (UsingDirectiveDecl *D)
 
void VisitNamespaceAliasDecl (NamespaceAliasDecl *D)
 
void VisitTypeDecl (TypeDecl *D)
 
void VisitTypedefNameDecl (TypedefNameDecl *D)
 
void VisitTypedefDecl (TypedefDecl *D)
 
void VisitTypeAliasDecl (TypeAliasDecl *D)
 
void VisitUnresolvedUsingTypenameDecl (UnresolvedUsingTypenameDecl *D)
 
void VisitUnresolvedUsingIfExistsDecl (UnresolvedUsingIfExistsDecl *D)
 
void VisitTagDecl (TagDecl *D)
 
void VisitEnumDecl (EnumDecl *D)
 
void VisitRecordDecl (RecordDecl *D)
 
void VisitCXXRecordDecl (CXXRecordDecl *D)
 
void VisitClassTemplateSpecializationDecl (ClassTemplateSpecializationDecl *D)
 
void VisitClassTemplatePartialSpecializationDecl (ClassTemplatePartialSpecializationDecl *D)
 
void VisitVarTemplateSpecializationDecl (VarTemplateSpecializationDecl *D)
 
void VisitVarTemplatePartialSpecializationDecl (VarTemplatePartialSpecializationDecl *D)
 
void VisitTemplateTypeParmDecl (TemplateTypeParmDecl *D)
 
void VisitValueDecl (ValueDecl *D)
 
void VisitEnumConstantDecl (EnumConstantDecl *D)
 
void VisitUnresolvedUsingValueDecl (UnresolvedUsingValueDecl *D)
 
void VisitDeclaratorDecl (DeclaratorDecl *D)
 
void VisitFunctionDecl (FunctionDecl *D)
 
void VisitCXXDeductionGuideDecl (CXXDeductionGuideDecl *D)
 
void VisitCXXMethodDecl (CXXMethodDecl *D)
 
void VisitCXXConstructorDecl (CXXConstructorDecl *D)
 
void VisitCXXDestructorDecl (CXXDestructorDecl *D)
 
void VisitCXXConversionDecl (CXXConversionDecl *D)
 
void VisitFieldDecl (FieldDecl *D)
 
void VisitMSPropertyDecl (MSPropertyDecl *D)
 
void VisitMSGuidDecl (MSGuidDecl *D)
 
void VisitUnnamedGlobalConstantDecl (UnnamedGlobalConstantDecl *D)
 
void VisitTemplateParamObjectDecl (TemplateParamObjectDecl *D)
 
void VisitIndirectFieldDecl (IndirectFieldDecl *D)
 
void VisitVarDecl (VarDecl *D)
 
void VisitImplicitParamDecl (ImplicitParamDecl *D)
 
void VisitParmVarDecl (ParmVarDecl *D)
 
void VisitDecompositionDecl (DecompositionDecl *D)
 
void VisitBindingDecl (BindingDecl *D)
 
void VisitNonTypeTemplateParmDecl (NonTypeTemplateParmDecl *D)
 
void VisitTemplateDecl (TemplateDecl *D)
 
void VisitConceptDecl (ConceptDecl *D)
 
void VisitImplicitConceptSpecializationDecl (ImplicitConceptSpecializationDecl *D)
 
void VisitRequiresExprBodyDecl (RequiresExprBodyDecl *D)
 
void VisitRedeclarableTemplateDecl (RedeclarableTemplateDecl *D)
 
void VisitClassTemplateDecl (ClassTemplateDecl *D)
 
void VisitVarTemplateDecl (VarTemplateDecl *D)
 
void VisitFunctionTemplateDecl (FunctionTemplateDecl *D)
 
void VisitTemplateTemplateParmDecl (TemplateTemplateParmDecl *D)
 
void VisitTypeAliasTemplateDecl (TypeAliasTemplateDecl *D)
 
void VisitUsingDecl (UsingDecl *D)
 
void VisitUsingEnumDecl (UsingEnumDecl *D)
 
void VisitUsingPackDecl (UsingPackDecl *D)
 
void VisitUsingShadowDecl (UsingShadowDecl *D)
 
void VisitConstructorUsingShadowDecl (ConstructorUsingShadowDecl *D)
 
void VisitLinkageSpecDecl (LinkageSpecDecl *D)
 
void VisitExportDecl (ExportDecl *D)
 
void VisitFileScopeAsmDecl (FileScopeAsmDecl *D)
 
void VisitTopLevelStmtDecl (TopLevelStmtDecl *D)
 
void VisitImportDecl (ImportDecl *D)
 
void VisitAccessSpecDecl (AccessSpecDecl *D)
 
void VisitFriendDecl (FriendDecl *D)
 
void VisitFriendTemplateDecl (FriendTemplateDecl *D)
 
void VisitStaticAssertDecl (StaticAssertDecl *D)
 
void VisitBlockDecl (BlockDecl *D)
 
void VisitCapturedDecl (CapturedDecl *D)
 
void VisitEmptyDecl (EmptyDecl *D)
 
void VisitLifetimeExtendedTemporaryDecl (LifetimeExtendedTemporaryDecl *D)
 
void VisitDeclContext (DeclContext *DC)
 Emit the DeclContext part of a declaration context decl.
 
template<typename T >
void VisitRedeclarable (Redeclarable< T > *D)
 
void VisitHLSLBufferDecl (HLSLBufferDecl *D)
 
void VisitObjCMethodDecl (ObjCMethodDecl *D)
 
void VisitObjCTypeParamDecl (ObjCTypeParamDecl *D)
 
void VisitObjCContainerDecl (ObjCContainerDecl *D)
 
void VisitObjCInterfaceDecl (ObjCInterfaceDecl *D)
 
void VisitObjCIvarDecl (ObjCIvarDecl *D)
 
void VisitObjCProtocolDecl (ObjCProtocolDecl *D)
 
void VisitObjCAtDefsFieldDecl (ObjCAtDefsFieldDecl *D)
 
void VisitObjCCategoryDecl (ObjCCategoryDecl *D)
 
void VisitObjCImplDecl (ObjCImplDecl *D)
 
void VisitObjCCategoryImplDecl (ObjCCategoryImplDecl *D)
 
void VisitObjCImplementationDecl (ObjCImplementationDecl *D)
 
void VisitObjCCompatibleAliasDecl (ObjCCompatibleAliasDecl *D)
 
void VisitObjCPropertyDecl (ObjCPropertyDecl *D)
 
void VisitObjCPropertyImplDecl (ObjCPropertyImplDecl *D)
 
void VisitOMPThreadPrivateDecl (OMPThreadPrivateDecl *D)
 
void VisitOMPAllocateDecl (OMPAllocateDecl *D)
 
void VisitOMPRequiresDecl (OMPRequiresDecl *D)
 
void VisitOMPDeclareReductionDecl (OMPDeclareReductionDecl *D)
 
void VisitOMPDeclareMapperDecl (OMPDeclareMapperDecl *D)
 
void VisitOMPCapturedExprDecl (OMPCapturedExprDecl *D)
 
void AddObjCTypeParamList (ObjCTypeParamList *typeParams)
 Add an Objective-C type parameter list to the given record.
 
void CollectFirstDeclFromEachModule (const Decl *D, bool IncludeLocal, llvm::MapVector< ModuleFile *, const Decl * > &Firsts)
 Collect the first declaration from each module file that provides a declaration of D.
 
void AddFirstDeclFromEachModule (const Decl *D, bool IncludeLocal)
 Add to the record the first declaration from each module file that provides a declaration of D.
 
void AddFirstSpecializationDeclFromEachModule (const Decl *D, llvm::SmallVectorImpl< const Decl * > &SpecsInMap, llvm::SmallVectorImpl< const Decl * > &PartialSpecsInMap)
 Add to the record the first template specialization from each module file that provides a declaration of D.
 
template<typename EntryType >
RedeclarableTemplateDecl::SpecEntryTraits< EntryType >::DeclType * getSpecializationDecl (EntryType &T)
 Get the specialization decl from an entry in the specialization list.
 
template<typename T >
decltype(T::PartialSpecializations) & getPartialSpecializations (T *Common)
 Get the list of partial specializations from a template's common ptr.
 
MutableArrayRef< FunctionTemplateSpecializationInfogetPartialSpecializations (FunctionTemplateDecl::Common *)
 
template<typename DeclTy >
void AddTemplateSpecializations (DeclTy *D)
 
void RegisterTemplateSpecialization (const Decl *Template, const Decl *Specialization)
 Ensure that this template specialization is associated with the specified template on reload.
 
- Public Member Functions inherited from clang::declvisitor::Base< Ptr, ImplClass, RetTy >
RetTy Visit (PTR(Decl) D)
 
RetTy VisitDecl (PTR(Decl) D)
 

Detailed Description

Definition at line 35 of file ASTWriterDecl.cpp.

Constructor & Destructor Documentation

◆ ASTDeclWriter()

clang::ASTDeclWriter::ASTDeclWriter ( ASTWriter Writer,
ASTContext Context,
ASTWriter::RecordDataImpl Record,
bool  GeneratingReducedBMI 
)
inline

Definition at line 45 of file ASTWriterDecl.cpp.

Member Function Documentation

◆ AddFirstDeclFromEachModule()

void clang::ASTDeclWriter::AddFirstDeclFromEachModule ( const Decl D,
bool  IncludeLocal 
)
inline

Add to the record the first declaration from each module file that provides a declaration of D.

The intent is to provide a sufficient set such that reloading this set will load all current redeclarations.

Definition at line 198 of file ASTWriterDecl.cpp.

References CollectFirstDeclFromEachModule(), and D.

Referenced by VisitRedeclarable().

◆ AddFirstSpecializationDeclFromEachModule()

void clang::ASTDeclWriter::AddFirstSpecializationDeclFromEachModule ( const Decl D,
llvm::SmallVectorImpl< const Decl * > &  SpecsInMap,
llvm::SmallVectorImpl< const Decl * > &  PartialSpecsInMap 
)
inline

Add to the record the first template specialization from each module file that provides a declaration of D.

We store the DeclId and an ODRHash of the template arguments of D which should provide enough information to load D only if the template instantiator needs it.

Definition at line 210 of file ASTWriterDecl.cpp.

References CollectFirstDeclFromEachModule(), D, and clang::isa().

Referenced by AddTemplateSpecializations().

◆ AddObjCTypeParamList()

void clang::ASTDeclWriter::AddObjCTypeParamList ( ObjCTypeParamList typeParams)
inline

Add an Objective-C type parameter list to the given record.

Definition at line 165 of file ASTWriterDecl.cpp.

References clang::ObjCTypeParamList::getLAngleLoc(), clang::ObjCTypeParamList::getRAngleLoc(), and clang::ObjCTypeParamList::size().

Referenced by VisitObjCCategoryDecl(), and VisitObjCInterfaceDecl().

◆ AddTemplateSpecializations()

template<typename DeclTy >
void clang::ASTDeclWriter::AddTemplateSpecializations ( DeclTy *  D)
inline

◆ CollectFirstDeclFromEachModule()

void clang::ASTDeclWriter::CollectFirstDeclFromEachModule ( const Decl D,
bool  IncludeLocal,
llvm::MapVector< ModuleFile *, const Decl * > &  Firsts 
)
inline

Collect the first declaration from each module file that provides a declaration of D.

Definition at line 182 of file ASTWriterDecl.cpp.

References D, clang::Decl::getMostRecentDecl(), clang::ASTReader::getOwningModuleFile(), and clang::Decl::getPreviousDecl().

Referenced by AddFirstDeclFromEachModule(), and AddFirstSpecializationDeclFromEachModule().

◆ Emit()

uint64_t clang::ASTDeclWriter::Emit ( Decl D)
inline

Definition at line 51 of file ASTWriterDecl.cpp.

References D, and clang::Decl::getDeclKindName().

◆ getPartialSpecializations() [1/2]

MutableArrayRef< FunctionTemplateSpecializationInfo > clang::ASTDeclWriter::getPartialSpecializations ( FunctionTemplateDecl::Common )
inline

Definition at line 241 of file ASTWriterDecl.cpp.

◆ getPartialSpecializations() [2/2]

template<typename T >
decltype(T::PartialSpecializations) & clang::ASTDeclWriter::getPartialSpecializations ( T Common)
inline

Get the list of partial specializations from a template's common ptr.

Definition at line 237 of file ASTWriterDecl.cpp.

Referenced by AddTemplateSpecializations().

◆ getSpecializationDecl()

template<typename EntryType >
RedeclarableTemplateDecl::SpecEntryTraits< EntryType >::DeclType * clang::ASTDeclWriter::getSpecializationDecl ( EntryType &  T)
inline

Get the specialization decl from an entry in the specialization list.

Definition at line 231 of file ASTWriterDecl.cpp.

References clang::RedeclarableTemplateDecl::SpecEntryTraits< EntryType >::getDecl(), and clang::T.

Referenced by AddTemplateSpecializations().

◆ RegisterTemplateSpecialization()

void clang::ASTDeclWriter::RegisterTemplateSpecialization ( const Decl Template,
const Decl Specialization 
)
inline

Ensure that this template specialization is associated with the specified template on reload.

Definition at line 288 of file ASTWriterDecl.cpp.

References clang::Decl::getCanonicalDecl(), clang::ASTWriter::getFirstLocalDecl(), clang::isa(), clang::Decl::isFromASTFile(), and clang::Specialization.

Referenced by VisitClassTemplateSpecializationDecl(), VisitFunctionDecl(), and VisitVarTemplateSpecializationDecl().

◆ Visit()

void ASTDeclWriter::Visit ( Decl D)

◆ VisitAccessSpecDecl()

void ASTDeclWriter::VisitAccessSpecDecl ( AccessSpecDecl D)

Definition at line 1697 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_ACCESS_SPEC, and VisitDecl().

◆ VisitBindingDecl()

void ASTDeclWriter::VisitBindingDecl ( BindingDecl D)

Definition at line 1315 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_BINDING, and VisitValueDecl().

◆ VisitBlockDecl()

void ASTDeclWriter::VisitBlockDecl ( BlockDecl D)

◆ VisitCapturedDecl()

void ASTDeclWriter::VisitCapturedDecl ( CapturedDecl D)

◆ VisitClassTemplateDecl()

void ASTDeclWriter::VisitClassTemplateDecl ( ClassTemplateDecl D)

◆ VisitClassTemplatePartialSpecializationDecl()

void ASTDeclWriter::VisitClassTemplatePartialSpecializationDecl ( ClassTemplatePartialSpecializationDecl D)

◆ VisitClassTemplateSpecializationDecl()

void ASTDeclWriter::VisitClassTemplateSpecializationDecl ( ClassTemplateSpecializationDecl D)

◆ VisitConceptDecl()

void ASTDeclWriter::VisitConceptDecl ( ConceptDecl D)

Definition at line 1744 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_CONCEPT, and VisitTemplateDecl().

◆ VisitConstructorUsingShadowDecl()

void ASTDeclWriter::VisitConstructorUsingShadowDecl ( ConstructorUsingShadowDecl D)

◆ VisitCXXConstructorDecl()

void ASTDeclWriter::VisitCXXConstructorDecl ( CXXConstructorDecl D)

◆ VisitCXXConversionDecl()

void ASTDeclWriter::VisitCXXConversionDecl ( CXXConversionDecl D)

◆ VisitCXXDeductionGuideDecl()

void ASTDeclWriter::VisitCXXDeductionGuideDecl ( CXXDeductionGuideDecl D)

◆ VisitCXXDestructorDecl()

void ASTDeclWriter::VisitCXXDestructorDecl ( CXXDestructorDecl D)

◆ VisitCXXMethodDecl()

void ASTDeclWriter::VisitCXXMethodDecl ( CXXMethodDecl D)

◆ VisitCXXRecordDecl()

void ASTDeclWriter::VisitCXXRecordDecl ( CXXRecordDecl D)

◆ VisitDecl()

void ASTDeclWriter::VisitDecl ( Decl D)

◆ VisitDeclaratorDecl()

void ASTDeclWriter::VisitDeclaratorDecl ( DeclaratorDecl D)

◆ VisitDeclContext()

void ASTDeclWriter::VisitDeclContext ( DeclContext DC)

Emit the DeclContext part of a declaration context decl.

Definition at line 2062 of file ASTWriterDecl.cpp.

References clang::ASTWriter::isGeneratingReducedBMI().

Referenced by Visit(), and VisitHLSLBufferDecl().

◆ VisitDecompositionDecl()

void ASTDeclWriter::VisitDecompositionDecl ( DecompositionDecl D)

Definition at line 1305 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_DECOMPOSITION, and VisitVarDecl().

◆ VisitEmptyDecl()

void ASTDeclWriter::VisitEmptyDecl ( EmptyDecl D)

Definition at line 1334 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_EMPTY, and VisitDecl().

◆ VisitEnumConstantDecl()

void ASTDeclWriter::VisitEnumConstantDecl ( EnumConstantDecl D)

Definition at line 641 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_ENUM_CONSTANT, and VisitValueDecl().

◆ VisitEnumDecl()

void ASTDeclWriter::VisitEnumDecl ( EnumDecl D)

◆ VisitExportDecl()

void ASTDeclWriter::VisitExportDecl ( ExportDecl D)

Definition at line 1402 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_EXPORT, and VisitDecl().

◆ VisitFieldDecl()

void ASTDeclWriter::VisitFieldDecl ( FieldDecl D)

◆ VisitFileScopeAsmDecl()

void ASTDeclWriter::VisitFileScopeAsmDecl ( FileScopeAsmDecl D)

Definition at line 1321 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_FILE_SCOPE_ASM, and VisitDecl().

◆ VisitFriendDecl()

void ASTDeclWriter::VisitFriendDecl ( FriendDecl D)

Definition at line 1703 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_FRIEND, and VisitDecl().

◆ VisitFriendTemplateDecl()

void ASTDeclWriter::VisitFriendTemplateDecl ( FriendTemplateDecl D)

Definition at line 1723 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_FRIEND_TEMPLATE, and VisitDecl().

◆ VisitFunctionDecl()

void ASTDeclWriter::VisitFunctionDecl ( FunctionDecl D)

Definition at line 665 of file ASTWriterDecl.cpp.

References clang::BitsPacker::addBit(), clang::BitsPacker::addBits(), D, clang::serialization::DECL_FUNCTION, clang::DependentFunctionTemplateSpecializationInfo::getCandidates(), clang::FunctionTemplateDecl::getCanonicalDecl(), clang::ASTWriter::GetDeclRef(), clang::Decl::getEndLoc(), clang::Decl::getFriendObjectKind(), clang::Decl::getIdentifierNamespace(), clang::MemberSpecializationInfo::getInstantiatedFrom(), clang::FunctionTemplateSpecializationInfo::getMemberSpecializationInfo(), clang::FunctionTemplateSpecializationInfo::getPointOfInstantiation(), clang::MemberSpecializationInfo::getPointOfInstantiation(), clang::FunctionTemplateSpecializationInfo::getTemplate(), clang::FunctionTemplateSpecializationInfo::getTemplateSpecializationKind(), clang::MemberSpecializationInfo::getTemplateSpecializationKind(), clang::Decl::isCanonicalDecl(), P, RegisterTemplateSpecialization(), clang::FunctionTemplateSpecializationInfo::TemplateArguments, clang::FunctionTemplateSpecializationInfo::TemplateArgumentsAsWritten, clang::DependentFunctionTemplateSpecializationInfo::TemplateArgumentsAsWritten, clang::FunctionDecl::TK_DependentFunctionTemplateSpecialization, clang::FunctionDecl::TK_DependentNonTemplate, clang::FunctionDecl::TK_FunctionTemplate, clang::FunctionDecl::TK_FunctionTemplateSpecialization, clang::FunctionDecl::TK_MemberSpecialization, clang::FunctionDecl::TK_NonTemplate, VisitDeclaratorDecl(), and VisitRedeclarable().

Referenced by VisitCXXDeductionGuideDecl(), and VisitCXXMethodDecl().

◆ VisitFunctionTemplateDecl()

void ASTDeclWriter::VisitFunctionTemplateDecl ( FunctionTemplateDecl D)

◆ VisitHLSLBufferDecl()

void ASTDeclWriter::VisitHLSLBufferDecl ( HLSLBufferDecl D)

◆ VisitImplicitConceptSpecializationDecl()

void ASTDeclWriter::VisitImplicitConceptSpecializationDecl ( ImplicitConceptSpecializationDecl D)

◆ VisitImplicitParamDecl()

void ASTDeclWriter::VisitImplicitParamDecl ( ImplicitParamDecl D)

Definition at line 1253 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_IMPLICIT_PARAM, and VisitVarDecl().

◆ VisitImportDecl()

void ASTDeclWriter::VisitImportDecl ( ImportDecl D)

◆ VisitIndirectFieldDecl()

void ASTDeclWriter::VisitIndirectFieldDecl ( IndirectFieldDecl D)

Definition at line 1143 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_INDIRECTFIELD, P, and VisitValueDecl().

◆ VisitLabelDecl()

void ASTDeclWriter::VisitLabelDecl ( LabelDecl LD)

◆ VisitLifetimeExtendedTemporaryDecl()

void ASTDeclWriter::VisitLifetimeExtendedTemporaryDecl ( LifetimeExtendedTemporaryDecl D)

◆ VisitLinkageSpecDecl()

void ASTDeclWriter::VisitLinkageSpecDecl ( LinkageSpecDecl D)

Definition at line 1390 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_LINKAGE_SPEC, and VisitDecl().

◆ VisitMSGuidDecl()

void ASTDeclWriter::VisitMSGuidDecl ( MSGuidDecl D)

◆ VisitMSPropertyDecl()

void ASTDeclWriter::VisitMSPropertyDecl ( MSPropertyDecl D)

◆ VisitNamedDecl()

void ASTDeclWriter::VisitNamedDecl ( NamedDecl D)

◆ VisitNamespaceAliasDecl()

void ASTDeclWriter::VisitNamespaceAliasDecl ( NamespaceAliasDecl D)

◆ VisitNamespaceDecl()

void ASTDeclWriter::VisitNamespaceDecl ( NamespaceDecl D)

◆ VisitNonTypeTemplateParmDecl()

void ASTDeclWriter::VisitNonTypeTemplateParmDecl ( NonTypeTemplateParmDecl D)

◆ VisitObjCAtDefsFieldDecl()

void ASTDeclWriter::VisitObjCAtDefsFieldDecl ( ObjCAtDefsFieldDecl D)

◆ VisitObjCCategoryDecl()

void ASTDeclWriter::VisitObjCCategoryDecl ( ObjCCategoryDecl D)

◆ VisitObjCCategoryImplDecl()

void ASTDeclWriter::VisitObjCCategoryImplDecl ( ObjCCategoryImplDecl D)

◆ VisitObjCCompatibleAliasDecl()

void ASTDeclWriter::VisitObjCCompatibleAliasDecl ( ObjCCompatibleAliasDecl D)

◆ VisitObjCContainerDecl()

void ASTDeclWriter::VisitObjCContainerDecl ( ObjCContainerDecl D)

◆ VisitObjCImplDecl()

void ASTDeclWriter::VisitObjCImplDecl ( ObjCImplDecl D)

Definition at line 1039 of file ASTWriterDecl.cpp.

References D, and VisitObjCContainerDecl().

Referenced by VisitObjCCategoryImplDecl(), and VisitObjCImplementationDecl().

◆ VisitObjCImplementationDecl()

void ASTDeclWriter::VisitObjCImplementationDecl ( ObjCImplementationDecl D)

◆ VisitObjCInterfaceDecl()

void ASTDeclWriter::VisitObjCInterfaceDecl ( ObjCInterfaceDecl D)

◆ VisitObjCIvarDecl()

void ASTDeclWriter::VisitObjCIvarDecl ( ObjCIvarDecl D)

◆ VisitObjCMethodDecl()

void ASTDeclWriter::VisitObjCMethodDecl ( ObjCMethodDecl D)

◆ VisitObjCPropertyDecl()

void ASTDeclWriter::VisitObjCPropertyDecl ( ObjCPropertyDecl D)

Definition at line 1018 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_OBJC_PROPERTY, and VisitNamedDecl().

◆ VisitObjCPropertyImplDecl()

void ASTDeclWriter::VisitObjCPropertyImplDecl ( ObjCPropertyImplDecl D)

◆ VisitObjCProtocolDecl()

void ASTDeclWriter::VisitObjCProtocolDecl ( ObjCProtocolDecl D)

◆ VisitObjCTypeParamDecl()

void ASTDeclWriter::VisitObjCTypeParamDecl ( ObjCTypeParamDecl D)

◆ VisitOMPAllocateDecl()

void ASTDeclWriter::VisitOMPAllocateDecl ( OMPAllocateDecl D)

Definition at line 2180 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_OMP_ALLOCATE, and VisitDecl().

◆ VisitOMPCapturedExprDecl()

void ASTDeclWriter::VisitOMPCapturedExprDecl ( OMPCapturedExprDecl D)

◆ VisitOMPDeclareMapperDecl()

void ASTDeclWriter::VisitOMPDeclareMapperDecl ( OMPDeclareMapperDecl D)

◆ VisitOMPDeclareReductionDecl()

void ASTDeclWriter::VisitOMPDeclareReductionDecl ( OMPDeclareReductionDecl D)

◆ VisitOMPRequiresDecl()

void ASTDeclWriter::VisitOMPRequiresDecl ( OMPRequiresDecl D)

Definition at line 2186 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_OMP_REQUIRES, and VisitDecl().

◆ VisitOMPThreadPrivateDecl()

void ASTDeclWriter::VisitOMPThreadPrivateDecl ( OMPThreadPrivateDecl D)

Definition at line 2174 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_OMP_THREADPRIVATE, and VisitDecl().

◆ VisitParmVarDecl()

void ASTDeclWriter::VisitParmVarDecl ( ParmVarDecl D)

◆ VisitPragmaCommentDecl()

void ASTDeclWriter::VisitPragmaCommentDecl ( PragmaCommentDecl D)

◆ VisitPragmaDetectMismatchDecl()

void ASTDeclWriter::VisitPragmaDetectMismatchDecl ( PragmaDetectMismatchDecl D)

◆ VisitRecordDecl()

void ASTDeclWriter::VisitRecordDecl ( RecordDecl D)

◆ VisitRedeclarable()

template<typename T >
void ASTDeclWriter::VisitRedeclarable ( Redeclarable< T > *  D)

◆ VisitRedeclarableTemplateDecl()

void ASTDeclWriter::VisitRedeclarableTemplateDecl ( RedeclarableTemplateDecl D)

◆ VisitRequiresExprBodyDecl()

void ASTDeclWriter::VisitRequiresExprBodyDecl ( RequiresExprBodyDecl D)

Definition at line 1759 of file ASTWriterDecl.cpp.

References clang::serialization::DECL_REQUIRES_EXPR_BODY.

◆ VisitStaticAssertDecl()

void ASTDeclWriter::VisitStaticAssertDecl ( StaticAssertDecl D)

Definition at line 2052 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_STATIC_ASSERT, and VisitDecl().

◆ VisitTagDecl()

void ASTDeclWriter::VisitTagDecl ( TagDecl D)

◆ VisitTemplateDecl()

void ASTDeclWriter::VisitTemplateDecl ( TemplateDecl D)

◆ VisitTemplateParamObjectDecl()

void ASTDeclWriter::VisitTemplateParamObjectDecl ( TemplateParamObjectDecl D)

◆ VisitTemplateTemplateParmDecl()

void ASTDeclWriter::VisitTemplateTemplateParmDecl ( TemplateTemplateParmDecl D)

◆ VisitTemplateTypeParmDecl()

void ASTDeclWriter::VisitTemplateTypeParmDecl ( TemplateTypeParmDecl D)

◆ VisitTopLevelStmtDecl()

void ASTDeclWriter::VisitTopLevelStmtDecl ( TopLevelStmtDecl D)

◆ VisitTranslationUnitDecl()

void ASTDeclWriter::VisitTranslationUnitDecl ( TranslationUnitDecl D)

Definition at line 473 of file ASTWriterDecl.cpp.

◆ VisitTypeAliasDecl()

void ASTDeclWriter::VisitTypeAliasDecl ( TypeAliasDecl D)

◆ VisitTypeAliasTemplateDecl()

void ASTDeclWriter::VisitTypeAliasTemplateDecl ( TypeAliasTemplateDecl D)

◆ VisitTypeDecl()

void ASTDeclWriter::VisitTypeDecl ( TypeDecl D)

◆ VisitTypedefDecl()

void ASTDeclWriter::VisitTypedefDecl ( TypedefDecl D)

◆ VisitTypedefNameDecl()

void ASTDeclWriter::VisitTypedefNameDecl ( TypedefNameDecl D)

◆ VisitUnnamedGlobalConstantDecl()

void ASTDeclWriter::VisitUnnamedGlobalConstantDecl ( UnnamedGlobalConstantDecl D)

◆ VisitUnresolvedUsingIfExistsDecl()

void ASTDeclWriter::VisitUnresolvedUsingIfExistsDecl ( UnresolvedUsingIfExistsDecl D)

◆ VisitUnresolvedUsingTypenameDecl()

void ASTDeclWriter::VisitUnresolvedUsingTypenameDecl ( UnresolvedUsingTypenameDecl D)

◆ VisitUnresolvedUsingValueDecl()

void ASTDeclWriter::VisitUnresolvedUsingValueDecl ( UnresolvedUsingValueDecl D)

◆ VisitUsingDecl()

void ASTDeclWriter::VisitUsingDecl ( UsingDecl D)

Definition at line 1456 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_USING, and VisitNamedDecl().

◆ VisitUsingDirectiveDecl()

void ASTDeclWriter::VisitUsingDirectiveDecl ( UsingDirectiveDecl D)

◆ VisitUsingEnumDecl()

void ASTDeclWriter::VisitUsingEnumDecl ( UsingEnumDecl D)

Definition at line 1467 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_USING_ENUM, and VisitNamedDecl().

◆ VisitUsingPackDecl()

void ASTDeclWriter::VisitUsingPackDecl ( UsingPackDecl D)

Definition at line 1477 of file ASTWriterDecl.cpp.

References D, clang::serialization::DECL_USING_PACK, E, and VisitNamedDecl().

◆ VisitUsingShadowDecl()

void ASTDeclWriter::VisitUsingShadowDecl ( UsingShadowDecl D)

◆ VisitValueDecl()

void ASTDeclWriter::VisitValueDecl ( ValueDecl D)

◆ VisitVarDecl()

void ASTDeclWriter::VisitVarDecl ( VarDecl D)

◆ VisitVarTemplateDecl()

void ASTDeclWriter::VisitVarTemplateDecl ( VarTemplateDecl D)

◆ VisitVarTemplatePartialSpecializationDecl()

void ASTDeclWriter::VisitVarTemplatePartialSpecializationDecl ( VarTemplatePartialSpecializationDecl D)

◆ VisitVarTemplateSpecializationDecl()

void ASTDeclWriter::VisitVarTemplateSpecializationDecl ( VarTemplateSpecializationDecl D)

The documentation for this class was generated from the following file: