clang 24.0.0git
clang::ASTNodeImporter Class Reference
Inheritance diagram for clang::ASTNodeImporter:
[legend]

Public Types

enum  ImportDefinitionKind { IDK_Default , IDK_Everything , IDK_Basic }
 What we should import from the definition. More...
using Designator = DesignatedInitExpr::Designator
using TemplateArgsTy = SmallVector<TemplateArgument, 8>
using FunctionTemplateAndArgsTy

Public Member Functions

 ASTNodeImporter (ASTImporter &Importer)
ExpectedType VisitType (const Type *T)
Error ImportDeclParts (NamedDecl *D, DeclarationName &Name, NamedDecl *&ToD, SourceLocation &Loc)
Error ImportDeclParts (NamedDecl *D, DeclContext *&DC, DeclContext *&LexicalDC, DeclarationName &Name, NamedDecl *&ToD, SourceLocation &Loc)
Error ImportDefinitionIfNeeded (Decl *FromD, Decl *ToD=nullptr)
Error ImportDeclarationNameLoc (const DeclarationNameInfo &From, DeclarationNameInfo &To)
Error ImportDeclContext (DeclContext *FromDC, bool ForceImport=false)
Error ImportDeclContext (Decl *From, DeclContext *&ToDC, DeclContext *&ToLexicalDC)
Error ImportImplicitMethods (const CXXRecordDecl *From, CXXRecordDecl *To)
Error ImportFieldDeclDefinition (const FieldDecl *From, const FieldDecl *To)
Expected< CXXCastPathImportCastPath (CastExpr *E)
Expected< APValueImportAPValue (const APValue &FromValue)
bool shouldForceImportDeclContext (ImportDefinitionKind IDK)
Error ImportInitializer (VarDecl *From, VarDecl *To)
Error ImportDefinition (RecordDecl *From, RecordDecl *To, ImportDefinitionKind Kind=IDK_Default)
Error ImportDefinition (EnumDecl *From, EnumDecl *To, ImportDefinitionKind Kind=IDK_Default)
Error ImportDefinition (ObjCInterfaceDecl *From, ObjCInterfaceDecl *To, ImportDefinitionKind Kind=IDK_Default)
Error ImportDefinition (ObjCProtocolDecl *From, ObjCProtocolDecl *To, ImportDefinitionKind Kind=IDK_Default)
Error ImportTemplateArguments (ArrayRef< TemplateArgument > FromArgs, SmallVectorImpl< TemplateArgument > &ToArgs)
Expected< TemplateArgumentImportTemplateArgument (const TemplateArgument &From)
template<typename InContainerTy>
Error ImportTemplateArgumentListInfo (const InContainerTy &Container, TemplateArgumentListInfo &ToTAInfo)
template<typename InContainerTy>
Error ImportTemplateArgumentListInfo (SourceLocation FromLAngleLoc, SourceLocation FromRAngleLoc, const InContainerTy &Container, TemplateArgumentListInfo &Result)
Expected< FunctionTemplateAndArgsTyImportFunctionTemplateWithTemplateArgsFromSpecialization (FunctionDecl *FromFD)
template<typename DeclTy>
Error ImportTemplateParameterLists (const DeclTy *FromD, DeclTy *ToD)
Error ImportTemplateInformation (FunctionDecl *FromFD, FunctionDecl *ToFD)
Error ImportFunctionDeclBody (FunctionDecl *FromFD, FunctionDecl *ToFD)
Error ImportDefaultArgOfParmVarDecl (const ParmVarDecl *FromParam, ParmVarDecl *ToParam)
Expected< InheritedConstructorImportInheritedConstructor (const InheritedConstructor &From)
StringRef ImportASTStringRef (StringRef FromStr)
Error ImportConstraintSatisfaction (const ASTConstraintSatisfaction &FromSat, ConstraintSatisfaction &ToSat)
Expected< concepts::Requirement * > ImportTypeRequirement (concepts::TypeRequirement *From)
Expected< concepts::Requirement * > ImportExprRequirement (concepts::ExprRequirement *From)
Expected< concepts::Requirement * > ImportNestedRequirement (concepts::NestedRequirement *From)
template<typename T>
bool hasSameVisibilityContextAndLinkage (T *Found, T *From)
bool IsStructuralMatch (Decl *From, Decl *To, bool Complain=true, bool IgnoreTemplateParmDepth=false)
ExpectedDecl VisitDecl (Decl *D)
ExpectedDecl VisitImportDecl (ImportDecl *D)
ExpectedDecl VisitEmptyDecl (EmptyDecl *D)
ExpectedDecl VisitAccessSpecDecl (AccessSpecDecl *D)
ExpectedDecl VisitStaticAssertDecl (StaticAssertDecl *D)
ExpectedDecl VisitCXXExpansionStmtDecl (CXXExpansionStmtDecl *D)
ExpectedDecl VisitTranslationUnitDecl (TranslationUnitDecl *D)
ExpectedDecl VisitFileScopeAsmDecl (FileScopeAsmDecl *D)
ExpectedDecl VisitBindingDecl (BindingDecl *D)
ExpectedDecl VisitNamespaceDecl (NamespaceDecl *D)
ExpectedDecl VisitNamespaceAliasDecl (NamespaceAliasDecl *D)
ExpectedDecl VisitTypedefNameDecl (TypedefNameDecl *D, bool IsAlias)
ExpectedDecl VisitTypedefDecl (TypedefDecl *D)
ExpectedDecl VisitTypeAliasDecl (TypeAliasDecl *D)
ExpectedDecl VisitTypeAliasTemplateDecl (TypeAliasTemplateDecl *D)
ExpectedDecl VisitLabelDecl (LabelDecl *D)
ExpectedDecl VisitEnumDecl (EnumDecl *D)
ExpectedDecl VisitRecordDecl (RecordDecl *D)
ExpectedDecl VisitEnumConstantDecl (EnumConstantDecl *D)
ExpectedDecl VisitFunctionDecl (FunctionDecl *D)
ExpectedDecl VisitCXXMethodDecl (CXXMethodDecl *D)
ExpectedDecl VisitCXXConstructorDecl (CXXConstructorDecl *D)
ExpectedDecl VisitCXXDestructorDecl (CXXDestructorDecl *D)
ExpectedDecl VisitCXXConversionDecl (CXXConversionDecl *D)
ExpectedDecl VisitCXXDeductionGuideDecl (CXXDeductionGuideDecl *D)
ExpectedDecl VisitFieldDecl (FieldDecl *D)
ExpectedDecl VisitIndirectFieldDecl (IndirectFieldDecl *D)
ExpectedDecl VisitFriendDecl (FriendDecl *D)
ExpectedDecl VisitFriendTemplateDecl (FriendTemplateDecl *D)
ExpectedDecl VisitObjCIvarDecl (ObjCIvarDecl *D)
ExpectedDecl VisitVarDecl (VarDecl *D)
ExpectedDecl VisitImplicitParamDecl (ImplicitParamDecl *D)
ExpectedDecl VisitParmVarDecl (ParmVarDecl *D)
ExpectedDecl VisitObjCMethodDecl (ObjCMethodDecl *D)
ExpectedDecl VisitObjCTypeParamDecl (ObjCTypeParamDecl *D)
ExpectedDecl VisitObjCCategoryDecl (ObjCCategoryDecl *D)
ExpectedDecl VisitObjCProtocolDecl (ObjCProtocolDecl *D)
ExpectedDecl VisitLinkageSpecDecl (LinkageSpecDecl *D)
ExpectedDecl VisitUsingDecl (UsingDecl *D)
ExpectedDecl VisitUsingShadowDecl (UsingShadowDecl *D)
ExpectedDecl VisitUsingDirectiveDecl (UsingDirectiveDecl *D)
ExpectedDecl VisitUsingPackDecl (UsingPackDecl *D)
ExpectedDecl ImportUsingShadowDecls (BaseUsingDecl *D, BaseUsingDecl *ToSI)
ExpectedDecl VisitUsingEnumDecl (UsingEnumDecl *D)
ExpectedDecl VisitUnresolvedUsingValueDecl (UnresolvedUsingValueDecl *D)
ExpectedDecl VisitUnresolvedUsingTypenameDecl (UnresolvedUsingTypenameDecl *D)
ExpectedDecl VisitBuiltinTemplateDecl (BuiltinTemplateDecl *D)
ExpectedDecl VisitLifetimeExtendedTemporaryDecl (LifetimeExtendedTemporaryDecl *D)
Expected< ObjCTypeParamList * > ImportObjCTypeParamList (ObjCTypeParamList *list)
ExpectedDecl VisitObjCInterfaceDecl (ObjCInterfaceDecl *D)
ExpectedDecl VisitObjCCategoryImplDecl (ObjCCategoryImplDecl *D)
ExpectedDecl VisitObjCImplementationDecl (ObjCImplementationDecl *D)
ExpectedDecl VisitObjCPropertyDecl (ObjCPropertyDecl *D)
ExpectedDecl VisitObjCPropertyImplDecl (ObjCPropertyImplDecl *D)
ExpectedDecl VisitTemplateParamObjectDecl (TemplateParamObjectDecl *D)
ExpectedDecl VisitTemplateTypeParmDecl (TemplateTypeParmDecl *D)
ExpectedDecl VisitNonTypeTemplateParmDecl (NonTypeTemplateParmDecl *D)
ExpectedDecl VisitTemplateTemplateParmDecl (TemplateTemplateParmDecl *D)
ExpectedDecl VisitClassTemplateDecl (ClassTemplateDecl *D)
ExpectedDecl VisitClassTemplateSpecializationDecl (ClassTemplateSpecializationDecl *D)
ExpectedDecl VisitVarTemplateDecl (VarTemplateDecl *D)
ExpectedDecl VisitVarTemplateSpecializationDecl (VarTemplateSpecializationDecl *D)
ExpectedDecl VisitFunctionTemplateDecl (FunctionTemplateDecl *D)
ExpectedDecl VisitConceptDecl (ConceptDecl *D)
ExpectedDecl VisitRequiresExprBodyDecl (RequiresExprBodyDecl *E)
ExpectedDecl VisitImplicitConceptSpecializationDecl (ImplicitConceptSpecializationDecl *D)
ExpectedStmt VisitStmt (Stmt *S)
ExpectedStmt VisitGCCAsmStmt (GCCAsmStmt *S)
ExpectedStmt VisitDeclStmt (DeclStmt *S)
ExpectedStmt VisitNullStmt (NullStmt *S)
ExpectedStmt VisitCompoundStmt (CompoundStmt *S)
ExpectedStmt VisitCaseStmt (CaseStmt *S)
ExpectedStmt VisitDefaultStmt (DefaultStmt *S)
ExpectedStmt VisitLabelStmt (LabelStmt *S)
ExpectedStmt VisitAttributedStmt (AttributedStmt *S)
ExpectedStmt VisitIfStmt (IfStmt *S)
ExpectedStmt VisitSwitchStmt (SwitchStmt *S)
ExpectedStmt VisitWhileStmt (WhileStmt *S)
ExpectedStmt VisitDoStmt (DoStmt *S)
ExpectedStmt VisitForStmt (ForStmt *S)
ExpectedStmt VisitGotoStmt (GotoStmt *S)
ExpectedStmt VisitIndirectGotoStmt (IndirectGotoStmt *S)
ExpectedStmt VisitContinueStmt (ContinueStmt *S)
ExpectedStmt VisitBreakStmt (BreakStmt *S)
ExpectedStmt VisitReturnStmt (ReturnStmt *S)
ExpectedStmt VisitCXXCatchStmt (CXXCatchStmt *S)
ExpectedStmt VisitCXXTryStmt (CXXTryStmt *S)
ExpectedStmt VisitCXXForRangeStmt (CXXForRangeStmt *S)
ExpectedStmt VisitCXXExpansionStmtPattern (CXXExpansionStmtPattern *S)
ExpectedStmt VisitCXXExpansionStmtInstantiation (CXXExpansionStmtInstantiation *S)
ExpectedStmt VisitObjCForCollectionStmt (ObjCForCollectionStmt *S)
ExpectedStmt VisitObjCAtCatchStmt (ObjCAtCatchStmt *S)
ExpectedStmt VisitObjCAtFinallyStmt (ObjCAtFinallyStmt *S)
ExpectedStmt VisitObjCAtTryStmt (ObjCAtTryStmt *S)
ExpectedStmt VisitObjCAtSynchronizedStmt (ObjCAtSynchronizedStmt *S)
ExpectedStmt VisitObjCAtThrowStmt (ObjCAtThrowStmt *S)
ExpectedStmt VisitObjCAutoreleasePoolStmt (ObjCAutoreleasePoolStmt *S)
ExpectedStmt VisitExpr (Expr *E)
ExpectedStmt VisitSourceLocExpr (SourceLocExpr *E)
ExpectedStmt VisitVAArgExpr (VAArgExpr *E)
ExpectedStmt VisitChooseExpr (ChooseExpr *E)
ExpectedStmt VisitConvertVectorExpr (ConvertVectorExpr *E)
ExpectedStmt VisitShuffleVectorExpr (ShuffleVectorExpr *E)
ExpectedStmt VisitGNUNullExpr (GNUNullExpr *E)
ExpectedStmt VisitGenericSelectionExpr (GenericSelectionExpr *E)
ExpectedStmt VisitPredefinedExpr (PredefinedExpr *E)
ExpectedStmt VisitDeclRefExpr (DeclRefExpr *E)
ExpectedStmt VisitImplicitValueInitExpr (ImplicitValueInitExpr *E)
ExpectedStmt VisitDesignatedInitExpr (DesignatedInitExpr *E)
ExpectedStmt VisitCXXNullPtrLiteralExpr (CXXNullPtrLiteralExpr *E)
ExpectedStmt VisitIntegerLiteral (IntegerLiteral *E)
ExpectedStmt VisitFloatingLiteral (FloatingLiteral *E)
ExpectedStmt VisitImaginaryLiteral (ImaginaryLiteral *E)
ExpectedStmt VisitFixedPointLiteral (FixedPointLiteral *E)
ExpectedStmt VisitCharacterLiteral (CharacterLiteral *E)
ExpectedStmt VisitStringLiteral (StringLiteral *E)
ExpectedStmt VisitCompoundLiteralExpr (CompoundLiteralExpr *E)
ExpectedStmt VisitAtomicExpr (AtomicExpr *E)
ExpectedStmt VisitAddrLabelExpr (AddrLabelExpr *E)
ExpectedStmt VisitConstantExpr (ConstantExpr *E)
ExpectedStmt VisitParenExpr (ParenExpr *E)
ExpectedStmt VisitParenListExpr (ParenListExpr *E)
ExpectedStmt VisitStmtExpr (StmtExpr *E)
ExpectedStmt VisitUnaryOperator (UnaryOperator *E)
ExpectedStmt VisitUnaryExprOrTypeTraitExpr (UnaryExprOrTypeTraitExpr *E)
ExpectedStmt VisitBinaryOperator (BinaryOperator *E)
ExpectedStmt VisitConditionalOperator (ConditionalOperator *E)
ExpectedStmt VisitBinaryConditionalOperator (BinaryConditionalOperator *E)
ExpectedStmt VisitCXXRewrittenBinaryOperator (CXXRewrittenBinaryOperator *E)
ExpectedStmt VisitOpaqueValueExpr (OpaqueValueExpr *E)
ExpectedStmt VisitArrayTypeTraitExpr (ArrayTypeTraitExpr *E)
ExpectedStmt VisitExpressionTraitExpr (ExpressionTraitExpr *E)
ExpectedStmt VisitArraySubscriptExpr (ArraySubscriptExpr *E)
ExpectedStmt VisitCompoundAssignOperator (CompoundAssignOperator *E)
ExpectedStmt VisitImplicitCastExpr (ImplicitCastExpr *E)
ExpectedStmt VisitExplicitCastExpr (ExplicitCastExpr *E)
ExpectedStmt VisitOffsetOfExpr (OffsetOfExpr *OE)
ExpectedStmt VisitCXXThrowExpr (CXXThrowExpr *E)
ExpectedStmt VisitCXXNoexceptExpr (CXXNoexceptExpr *E)
ExpectedStmt VisitCXXDefaultArgExpr (CXXDefaultArgExpr *E)
ExpectedStmt VisitCXXScalarValueInitExpr (CXXScalarValueInitExpr *E)
ExpectedStmt VisitCXXBindTemporaryExpr (CXXBindTemporaryExpr *E)
ExpectedStmt VisitCXXTemporaryObjectExpr (CXXTemporaryObjectExpr *E)
ExpectedStmt VisitMaterializeTemporaryExpr (MaterializeTemporaryExpr *E)
ExpectedStmt VisitPackExpansionExpr (PackExpansionExpr *E)
ExpectedStmt VisitSizeOfPackExpr (SizeOfPackExpr *E)
ExpectedStmt VisitCXXNewExpr (CXXNewExpr *E)
ExpectedStmt VisitCXXDeleteExpr (CXXDeleteExpr *E)
ExpectedStmt VisitCXXConstructExpr (CXXConstructExpr *E)
ExpectedStmt VisitCXXMemberCallExpr (CXXMemberCallExpr *E)
ExpectedStmt VisitCXXDependentScopeMemberExpr (CXXDependentScopeMemberExpr *E)
ExpectedStmt VisitDependentScopeDeclRefExpr (DependentScopeDeclRefExpr *E)
ExpectedStmt VisitDependentTemplateIdExpr (DependentTemplateIdExpr *E)
ExpectedStmt VisitCXXUnresolvedConstructExpr (CXXUnresolvedConstructExpr *E)
ExpectedStmt VisitUnresolvedLookupExpr (UnresolvedLookupExpr *E)
ExpectedStmt VisitUnresolvedMemberExpr (UnresolvedMemberExpr *E)
ExpectedStmt VisitExprWithCleanups (ExprWithCleanups *E)
ExpectedStmt VisitCXXThisExpr (CXXThisExpr *E)
ExpectedStmt VisitCXXBoolLiteralExpr (CXXBoolLiteralExpr *E)
ExpectedStmt VisitCXXPseudoDestructorExpr (CXXPseudoDestructorExpr *E)
ExpectedStmt VisitMemberExpr (MemberExpr *E)
ExpectedStmt VisitCallExpr (CallExpr *E)
ExpectedStmt VisitLambdaExpr (LambdaExpr *LE)
ExpectedStmt VisitInitListExpr (InitListExpr *E)
ExpectedStmt VisitCXXStdInitializerListExpr (CXXStdInitializerListExpr *E)
ExpectedStmt VisitCXXInheritedCtorInitExpr (CXXInheritedCtorInitExpr *E)
ExpectedStmt VisitArrayInitLoopExpr (ArrayInitLoopExpr *E)
ExpectedStmt VisitArrayInitIndexExpr (ArrayInitIndexExpr *E)
ExpectedStmt VisitCXXDefaultInitExpr (CXXDefaultInitExpr *E)
ExpectedStmt VisitCXXNamedCastExpr (CXXNamedCastExpr *E)
ExpectedStmt VisitSubstNonTypeTemplateParmExpr (SubstNonTypeTemplateParmExpr *E)
ExpectedStmt VisitTypeTraitExpr (TypeTraitExpr *E)
ExpectedStmt VisitCXXTypeidExpr (CXXTypeidExpr *E)
ExpectedStmt VisitCXXFoldExpr (CXXFoldExpr *E)
ExpectedStmt VisitRequiresExpr (RequiresExpr *E)
ExpectedStmt VisitConceptSpecializationExpr (ConceptSpecializationExpr *E)
ExpectedStmt VisitSubstNonTypeTemplateParmPackExpr (SubstNonTypeTemplateParmPackExpr *E)
ExpectedStmt VisitPseudoObjectExpr (PseudoObjectExpr *E)
ExpectedStmt VisitCXXParenListInitExpr (CXXParenListInitExpr *E)
ExpectedStmt VisitCXXExpansionSelectExpr (CXXExpansionSelectExpr *E)
template<typename T>
T importChecked (Error &Err, const T &From)
template<typename IIter, typename OIter>
Error ImportArrayChecked (IIter Ibegin, IIter Iend, OIter Obegin)
template<typename InContainerTy, typename OutContainerTy>
Error ImportContainerChecked (const InContainerTy &InContainer, OutContainerTy &OutContainer)
template<typename InContainerTy, typename OIter>
Error ImportArrayChecked (const InContainerTy &InContainer, OIter Obegin)
Error ImportOverriddenMethods (CXXMethodDecl *ToMethod, CXXMethodDecl *FromMethod)
Expected< FunctionDecl * > FindFunctionTemplateSpecialization (FunctionDecl *FromFD)
template<>
Error ImportTemplateArgumentListInfo (const TemplateArgumentListInfo &From, TemplateArgumentListInfo &Result)
template<>
Error ImportTemplateArgumentListInfo (const ASTTemplateArgumentListInfo &From, TemplateArgumentListInfo &Result)
template<>
Expected< TemplateParameterList * > import (TemplateParameterList *From)
template<>
Expected< TemplateArgumentimport (const TemplateArgument &From)
template<>
Expected< TemplateArgumentLocimport (const TemplateArgumentLoc &TALoc)
template<>
Expected< DeclGroupRefimport (const DeclGroupRef &DG)
template<>
Expected< ASTNodeImporter::Designatorimport (const Designator &D)
template<>
Expected< ConceptReference * > import (ConceptReference *From)
template<>
Expected< concepts::Requirement::SubstitutionDiagnostic * > import (concepts::Requirement::SubstitutionDiagnostic *FromDiag)
template<>
Expected< concepts::Requirement * > import (concepts::Requirement *FromRequire)
template<>
Expected< LambdaCaptureimport (const LambdaCapture &From)
template<>
bool hasSameVisibilityContextAndLinkage (TypedefNameDecl *Found, TypedefNameDecl *From)
Public Member Functions inherited from clang::TypeVisitor< ASTNodeImporter, ExpectedType >
ExpectedType Visit (const Type *T)
 Performs the operation associated with this visitor object.
ExpectedType VisitType (const Type *)
 Method called if ImpClass doesn't provide specific handler for some type class.
Public Member Functions inherited from clang::declvisitor::Base< std::add_pointer, ASTNodeImporter, ExpectedDecl >
ExpectedDecl Visit (PTR(Decl) D)
ExpectedDecl VisitDecl (PTR(Decl) D)
Public Member Functions inherited from clang::StmtVisitorBase< std::add_pointer, ASTNodeImporter, ExpectedStmt, ParamTys... >
ExpectedStmt Visit (PTR(Stmt) S, ParamTys... P)
 BINOP_FALLBACK (PtrMemD) BINOP_FALLBACK(PtrMemI) BINOP_FALLBACK(Mul) BINOP_FALLBACK(Div) BINOP_FALLBACK(Rem) BINOP_FALLBACK(Add) BINOP_FALLBACK(Sub) BINOP_FALLBACK(Shl) BINOP_FALLBACK(LT) BINOP_FALLBACK(GT) BINOP_FALLBACK(LE) BINOP_FALLBACK(GE) BINOP_FALLBACK(EQ) BINOP_FALLBACK(NE) BINOP_FALLBACK(And) BINOP_FALLBACK(Xor) BINOP_FALLBACK(Or) BINOP_FALLBACK(LAnd) BINOP_FALLBACK(LOr) CAO_FALLBACK(MulAssign) CAO_FALLBACK(DivAssign) CAO_FALLBACK(RemAssign) CAO_FALLBACK(AddAssign) CAO_FALLBACK(SubAssign) CAO_FALLBACK(ShlAssign) CAO_FALLBACK(ShrAssign) CAO_FALLBACK(AndAssign) CAO_FALLBACK(OrAssign) UNARYOP_FALLBACK(PostInc) UNARYOP_FALLBACK(PostDec) UNARYOP_FALLBACK(PreInc) UNARYOP_FALLBACK(PreDec) UNARYOP_FALLBACK(AddrOf) UNARYOP_FALLBACK(Deref) UNARYOP_FALLBACK(Plus) UNARYOP_FALLBACK(Minus) UNARYOP_FALLBACK(Not) UNARYOP_FALLBACK(LNot) UNARYOP_FALLBACK(Real) UNARYOP_FALLBACK(Imag) UNARYOP_FALLBACK(Extension) UNARYOP_FALLBACK(Coawait) LLVM_ATTRIBUTE_ALWAYS_INLINE ExpectedStmt VisitStmt(PTR(Stmt) Node

Additional Inherited Members

Public Attributes inherited from clang::StmtVisitorBase< std::add_pointer, ASTNodeImporter, ExpectedStmt, ParamTys... >
ParamTys P

Detailed Description

Definition at line 177 of file ASTImporter.cpp.

Member Typedef Documentation

◆ Designator

◆ FunctionTemplateAndArgsTy

Initial value:
std::tuple<FunctionTemplateDecl *, TemplateArgsTy>

Definition at line 481 of file ASTImporter.cpp.

◆ TemplateArgsTy

Member Enumeration Documentation

◆ ImportDefinitionKind

What we should import from the definition.

Enumerator
IDK_Default 

Import the default subset of the definition, which might be nothing (if minimal import is set) or might be everything (if minimal import is not set).

IDK_Everything 

Import everything.

IDK_Basic 

Import only the bare bones needed to establish a valid DeclContext.

Definition at line 436 of file ASTImporter.cpp.

Constructor & Destructor Documentation

◆ ASTNodeImporter()

clang::ASTNodeImporter::ASTNodeImporter ( ASTImporter & Importer)
inlineexplicit

Definition at line 403 of file ASTImporter.cpp.

Member Function Documentation

◆ FindFunctionTemplateSpecialization()

Expected< FunctionDecl * > ASTNodeImporter::FindFunctionTemplateSpecialization ( FunctionDecl * FromFD)

◆ hasSameVisibilityContextAndLinkage() [1/2]

template<typename T>
bool clang::ASTNodeImporter::hasSameVisibilityContextAndLinkage ( T * Found,
T * From )

◆ hasSameVisibilityContextAndLinkage() [2/2]

template<>
bool clang::ASTNodeImporter::hasSameVisibilityContextAndLinkage ( TypedefNameDecl * Found,
TypedefNameDecl * From )

◆ import() [1/9]

◆ import() [2/9]

◆ import() [3/9]

◆ import() [4/9]

template<>
Expected< DeclGroupRef > clang::ASTNodeImporter::import ( const DeclGroupRef & DG)

◆ import() [5/9]

◆ import() [6/9]

◆ import() [7/9]

◆ import() [8/9]

◆ import() [9/9]

◆ ImportAPValue()

llvm::Expected< APValue > ASTNodeImporter::ImportAPValue ( const APValue & FromValue)

Definition at line 10715 of file ASTImporter.cpp.

References clang::APValue::AddrLabelDiff, clang::APValue::Array, clang::APValue::LValuePathEntry::ArrayIndex(), clang::cast(), clang::APValue::ComplexFloat, clang::APValue::ComplexInt, clang::APValue::LValueBase::dyn_cast(), clang::APValue::FixedPoint, clang::APValue::Float, clang::APValue::LValueBase::get(), clang::APValue::getAddrLabelDiffLHS(), clang::APValue::getAddrLabelDiffRHS(), clang::APValue::getArrayInitializedElts(), clang::APValue::getArraySize(), clang::APValue::LValueBase::getCallIndex(), clang::Decl::getCanonicalDecl(), clang::APValue::getKind(), clang::APValue::getLValueBase(), clang::APValue::getLValueOffset(), clang::APValue::getLValuePath(), clang::APValue::getMemberPointerDecl(), clang::APValue::getMemberPointerPath(), clang::APValue::getStructNumBases(), clang::APValue::getStructNumFields(), clang::APValue::getStructNumVirtualBases(), clang::TypeInfoLValue::getType(), getType(), clang::APValue::LValueBase::getTypeInfo(), clang::APValue::LValueBase::getTypeInfoType(), clang::APValue::getUnionField(), clang::APValue::getUnionValue(), clang::APValue::getVectorLength(), clang::APValue::LValueBase::getVersion(), clang::APValue::hasLValuePath(), importChecked(), clang::APValue::Indeterminate, clang::APValue::Int, clang::APValue::LValueBase::is(), clang::APValue::isLValueOnePastTheEnd(), clang::APValue::isMemberPointerToDerivedMember(), clang::APValue::isNullPointer(), clang::Type::isRecordType(), clang::APValue::LValue, clang::APValue::Matrix, clang::APValue::MemberPointer, clang::APValue::None, clang::Result, clang::APValue::Struct, clang::APValue::Union, and clang::APValue::Vector.

Referenced by clang::ASTImporter::Import().

◆ ImportArrayChecked() [1/2]

template<typename InContainerTy, typename OIter>
Error clang::ASTNodeImporter::ImportArrayChecked ( const InContainerTy & InContainer,
OIter Obegin )
inline

Definition at line 755 of file ASTImporter.cpp.

References clang::Error, and ImportArrayChecked().

◆ ImportArrayChecked() [2/2]

template<typename IIter, typename OIter>
Error clang::ASTNodeImporter::ImportArrayChecked ( IIter Ibegin,
IIter Iend,
OIter Obegin )
inline

◆ ImportASTStringRef()

StringRef clang::ASTNodeImporter::ImportASTStringRef ( StringRef FromStr)

Definition at line 1070 of file ASTImporter.cpp.

Referenced by import(), ImportConstraintSatisfaction(), and ImportNestedRequirement().

◆ ImportCastPath()

Expected< CXXCastPath > ASTNodeImporter::ImportCastPath ( CastExpr * E)

◆ importChecked()

template<typename T>
T clang::ASTNodeImporter::importChecked ( Error & Err,
const T & From )
inline

Definition at line 719 of file ASTImporter.cpp.

References clang::Error, and clang::T.

Referenced by import(), ImportAPValue(), ImportInheritedConstructor(), ImportLoopControlStmt(), VisitAddrLabelExpr(), VisitArrayInitLoopExpr(), VisitArraySubscriptExpr(), VisitArrayTypeTraitExpr(), VisitAtomicExpr(), VisitBinaryConditionalOperator(), VisitBinaryOperator(), VisitBindingDecl(), VisitCallExpr(), VisitCaseStmt(), VisitChooseExpr(), VisitCompoundAssignOperator(), VisitCompoundLiteralExpr(), VisitConceptDecl(), VisitConceptSpecializationExpr(), VisitConditionalOperator(), VisitConstantExpr(), VisitConvertVectorExpr(), VisitCXXCatchStmt(), VisitCXXConstructExpr(), VisitCXXDeleteExpr(), VisitCXXDependentScopeMemberExpr(), VisitCXXExpansionSelectExpr(), VisitCXXExpansionStmtDecl(), VisitCXXExpansionStmtInstantiation(), VisitCXXExpansionStmtPattern(), VisitCXXFoldExpr(), VisitCXXForRangeStmt(), VisitCXXInheritedCtorInitExpr(), VisitCXXMemberCallExpr(), VisitCXXNamedCastExpr(), VisitCXXNewExpr(), VisitCXXNoexceptExpr(), VisitCXXParenListInitExpr(), VisitCXXPseudoDestructorExpr(), VisitCXXRewrittenBinaryOperator(), VisitCXXScalarValueInitExpr(), VisitCXXTemporaryObjectExpr(), VisitCXXThrowExpr(), VisitCXXUnresolvedConstructExpr(), VisitDeclRefExpr(), VisitDeclStmt(), VisitDefaultStmt(), VisitDependentScopeDeclRefExpr(), VisitDependentTemplateIdExpr(), VisitDoStmt(), VisitEnumDecl(), VisitExplicitCastExpr(), VisitExpressionTraitExpr(), VisitFieldDecl(), VisitFileScopeAsmDecl(), VisitForStmt(), VisitFunctionDecl(), VisitGenericSelectionExpr(), VisitGotoStmt(), VisitIfStmt(), VisitImplicitConceptSpecializationDecl(), VisitImplicitParamDecl(), VisitIndirectGotoStmt(), VisitInitListExpr(), VisitLabelStmt(), VisitLambdaExpr(), VisitLifetimeExtendedTemporaryDecl(), VisitMaterializeTemporaryExpr(), VisitMemberExpr(), VisitNamespaceAliasDecl(), VisitNonTypeTemplateParmDecl(), VisitObjCAtCatchStmt(), VisitObjCAtSynchronizedStmt(), VisitObjCAtTryStmt(), VisitObjCCategoryDecl(), VisitObjCCategoryImplDecl(), VisitObjCForCollectionStmt(), VisitObjCImplementationDecl(), VisitObjCIvarDecl(), VisitObjCMethodDecl(), VisitObjCPropertyDecl(), VisitObjCPropertyImplDecl(), VisitObjCTypeParamDecl(), VisitOffsetOfExpr(), VisitOpaqueValueExpr(), VisitPackExpansionExpr(), VisitParenExpr(), VisitParmVarDecl(), VisitPredefinedExpr(), VisitRequiresExpr(), VisitRequiresExprBodyDecl(), VisitReturnStmt(), VisitShuffleVectorExpr(), VisitSizeOfPackExpr(), VisitSourceLocExpr(), VisitStaticAssertDecl(), VisitStmtExpr(), VisitSubstNonTypeTemplateParmExpr(), VisitSubstNonTypeTemplateParmPackExpr(), VisitSwitchStmt(), VisitTemplateParamObjectDecl(), VisitTemplateTypeParmDecl(), VisitTypeAliasTemplateDecl(), VisitTypedefNameDecl(), VisitTypeTraitExpr(), VisitUnaryExprOrTypeTraitExpr(), VisitUnaryOperator(), VisitUnresolvedLookupExpr(), VisitUnresolvedMemberExpr(), VisitUnresolvedUsingTypenameDecl(), VisitUnresolvedUsingValueDecl(), VisitUsingDecl(), VisitUsingDirectiveDecl(), VisitUsingEnumDecl(), VisitUsingShadowDecl(), VisitVAArgExpr(), VisitVarDecl(), and VisitWhileStmt().

◆ ImportConstraintSatisfaction()

◆ ImportContainerChecked()

◆ ImportDeclarationNameLoc()

◆ ImportDeclContext() [1/2]

Error ASTNodeImporter::ImportDeclContext ( Decl * From,
DeclContext *& ToDC,
DeclContext *& ToLexicalDC )

◆ ImportDeclContext() [2/2]

◆ ImportDeclParts() [1/2]

◆ ImportDeclParts() [2/2]

◆ ImportDefaultArgOfParmVarDecl()

◆ ImportDefinition() [1/4]

◆ ImportDefinition() [2/4]

◆ ImportDefinition() [3/4]

◆ ImportDefinition() [4/4]

◆ ImportDefinitionIfNeeded()

Error ASTNodeImporter::ImportDefinitionIfNeeded ( Decl * FromD,
Decl * ToD = nullptr )

◆ ImportExprRequirement()

◆ ImportFieldDeclDefinition()

◆ ImportFunctionDeclBody()

Error ASTNodeImporter::ImportFunctionDeclBody ( FunctionDecl * FromFD,
FunctionDecl * ToFD )

◆ ImportFunctionTemplateWithTemplateArgsFromSpecialization()

◆ ImportImplicitMethods()

Error ASTNodeImporter::ImportImplicitMethods ( const CXXRecordDecl * From,
CXXRecordDecl * To )

◆ ImportInheritedConstructor()

◆ ImportInitializer()

◆ ImportNestedRequirement()

◆ ImportObjCTypeParamList()

◆ ImportOverriddenMethods()

Error ASTNodeImporter::ImportOverriddenMethods ( CXXMethodDecl * ToMethod,
CXXMethodDecl * FromMethod )

◆ ImportTemplateArgument()

Expected< TemplateArgument > ASTNodeImporter::ImportTemplateArgument ( const TemplateArgument & From)

Definition at line 2734 of file ASTImporter.cpp.

Referenced by clang::ASTImporter::Import().

◆ ImportTemplateArgumentListInfo() [1/4]

template<>
Error clang::ASTNodeImporter::ImportTemplateArgumentListInfo ( const ASTTemplateArgumentListInfo & From,
TemplateArgumentListInfo & Result )

Definition at line 792 of file ASTImporter.cpp.

References clang::Error, ImportTemplateArgumentListInfo(), and clang::Result.

◆ ImportTemplateArgumentListInfo() [2/4]

◆ ImportTemplateArgumentListInfo() [3/4]

◆ ImportTemplateArgumentListInfo() [4/4]

template<typename InContainerTy>
Error clang::ASTNodeImporter::ImportTemplateArgumentListInfo ( SourceLocation FromLAngleLoc,
SourceLocation FromRAngleLoc,
const InContainerTy & Container,
TemplateArgumentListInfo & Result )

Definition at line 767 of file ASTImporter.cpp.

References clang::Error, ImportTemplateArgumentListInfo(), and clang::Result.

◆ ImportTemplateArguments()

Error ASTNodeImporter::ImportTemplateArguments ( ArrayRef< TemplateArgument > FromArgs,
SmallVectorImpl< TemplateArgument > & ToArgs )

Definition at line 2719 of file ASTImporter.cpp.

References clang::Error.

Referenced by import(), and ImportFunctionTemplateWithTemplateArgsFromSpecialization().

◆ ImportTemplateInformation()

◆ ImportTemplateParameterLists()

template<typename DeclTy>
Error ASTNodeImporter::ImportTemplateParameterLists ( const DeclTy * FromD,
DeclTy * ToD )

Definition at line 3664 of file ASTImporter.cpp.

References clang::Error.

Referenced by ImportTemplateInformation(), and VisitClassTemplateSpecializationDecl().

◆ ImportTypeRequirement()

◆ ImportUsingShadowDecls()

ExpectedDecl ASTNodeImporter::ImportUsingShadowDecls ( BaseUsingDecl * D,
BaseUsingDecl * ToSI )

◆ IsStructuralMatch()

◆ shouldForceImportDeclContext()

bool clang::ASTNodeImporter::shouldForceImportDeclContext ( ImportDefinitionKind IDK)
inline

◆ VisitAccessSpecDecl()

◆ VisitAddrLabelExpr()

◆ VisitArrayInitIndexExpr()

ExpectedStmt ASTNodeImporter::VisitArrayInitIndexExpr ( ArrayInitIndexExpr * E)

Definition at line 9156 of file ASTImporter.cpp.

References clang::Expr::getType().

◆ VisitArrayInitLoopExpr()

◆ VisitArraySubscriptExpr()

◆ VisitArrayTypeTraitExpr()

◆ VisitAtomicExpr()

◆ VisitAttributedStmt()

◆ VisitBinaryConditionalOperator()

◆ VisitBinaryOperator()

◆ VisitBindingDecl()

◆ VisitBreakStmt()

ExpectedStmt ASTNodeImporter::VisitBreakStmt ( BreakStmt * S)

Definition at line 7347 of file ASTImporter.cpp.

References ImportLoopControlStmt().

◆ VisitBuiltinTemplateDecl()

ExpectedDecl ASTNodeImporter::VisitBuiltinTemplateDecl ( BuiltinTemplateDecl * D)

◆ VisitCallExpr()

◆ VisitCaseStmt()

◆ VisitCharacterLiteral()

◆ VisitChooseExpr()

◆ VisitClassTemplateDecl()

◆ VisitClassTemplateSpecializationDecl()

ExpectedDecl ASTNodeImporter::VisitClassTemplateSpecializationDecl ( ClassTemplateSpecializationDecl * D)

Definition at line 6359 of file ASTImporter.cpp.

References clang::DeclContext::addDeclInternal(), clang::ClassTemplateDecl::AddPartialSpecialization(), clang::ClassTemplateDecl::AddSpecialization(), clang::TemplateArgumentList::asArray(), clang::cast(), clang::TemplateArgumentList::CreateCopy(), clang::Error, clang::RecordDecl::fields(), clang::ClassTemplateDecl::findPartialSpecialization(), clang::ClassTemplateDecl::findSpecialization(), clang::TypeDecl::getBeginLoc(), clang::TagDecl::getBraceRange(), clang::CXXRecordDecl::getDefinition(), clang::ClassTemplateSpecializationDecl::getExternKeywordLoc(), clang::ClassTemplateSpecializationDecl::getInstantiatedFrom(), clang::ClassTemplatePartialSpecializationDecl::getInstantiatedFromMember(), clang::Decl::getLocation(), clang::ClassTemplateSpecializationDecl::getPointOfInstantiation(), clang::TagDecl::getQualifierLoc(), clang::ClassTemplateSpecializationDecl::getSpecializationKind(), clang::ClassTemplateSpecializationDecl::getSpecializedTemplate(), clang::TagDecl::getTagKind(), clang::ClassTemplateSpecializationDecl::getTemplateArgs(), clang::ClassTemplateSpecializationDecl::getTemplateArgsAsWritten(), clang::ClassTemplateSpecializationDecl::getTemplateInstantiationArgs(), clang::ClassTemplateSpecializationDecl::getTemplateKeywordLoc(), clang::ClassTemplatePartialSpecializationDecl::getTemplateParameters(), clang::CXXRecordDecl::getTemplateSpecializationKind(), clang::ClassTemplateSpecializationDecl::hasStrictPackMatch(), ImportDeclContext(), clang::ASTImporter::ImportDefinition(), clang::ASTImporter::importInto(), ImportTemplateArgumentListInfo(), clang::ASTImporter::ImportTemplateArguments(), ImportTemplateParameterLists(), clang::TagDecl::isCompleteDefinition(), clang::ClassTemplateSpecializationDecl::isExplicitInstantiationOrSpecialization(), IsStructuralMatch(), clang::TagDecl::isThisDeclarationADefinition(), clang::SourceLocation::isValid(), clang::CXXRecordDecl::methods(), clang::ASTImportError::NameConflict, clang::StmtVisitorBase< std::add_pointer, ASTNodeImporter, ExpectedStmt, ParamTys... >::P, clang::TagDecl::setBraceRange(), clang::ClassTemplateSpecializationDecl::setExternKeywordLoc(), clang::ClassTemplateSpecializationDecl::setInstantiationOf(), clang::Decl::setLexicalDeclContext(), clang::ClassTemplateSpecializationDecl::setPointOfInstantiation(), clang::TagDecl::setQualifierInfo(), clang::ClassTemplateSpecializationDecl::setSpecializationKind(), clang::ClassTemplateSpecializationDecl::setTemplateArgsAsWritten(), clang::ClassTemplateSpecializationDecl::setTemplateKeywordLoc(), clang::CXXRecordDecl::setTemplateSpecializationKind(), and clang::TemplateArgumentList::size().

◆ VisitCompoundAssignOperator()

◆ VisitCompoundLiteralExpr()

◆ VisitCompoundStmt()

◆ VisitConceptDecl()

◆ VisitConceptSpecializationExpr()

◆ VisitConditionalOperator()

◆ VisitConstantExpr()

◆ VisitContinueStmt()

ExpectedStmt ASTNodeImporter::VisitContinueStmt ( ContinueStmt * S)

Definition at line 7343 of file ASTImporter.cpp.

References ImportLoopControlStmt().

◆ VisitConvertVectorExpr()

◆ VisitCXXBindTemporaryExpr()

◆ VisitCXXBoolLiteralExpr()

◆ VisitCXXCatchStmt()

◆ VisitCXXConstructExpr()

◆ VisitCXXConstructorDecl()

ExpectedDecl ASTNodeImporter::VisitCXXConstructorDecl ( CXXConstructorDecl * D)

Definition at line 4215 of file ASTImporter.cpp.

References VisitCXXMethodDecl().

◆ VisitCXXConversionDecl()

ExpectedDecl ASTNodeImporter::VisitCXXConversionDecl ( CXXConversionDecl * D)

Definition at line 4223 of file ASTImporter.cpp.

References VisitCXXMethodDecl().

◆ VisitCXXDeductionGuideDecl()

ExpectedDecl ASTNodeImporter::VisitCXXDeductionGuideDecl ( CXXDeductionGuideDecl * D)

Definition at line 4228 of file ASTImporter.cpp.

References VisitFunctionDecl().

◆ VisitCXXDefaultArgExpr()

◆ VisitCXXDefaultInitExpr()

◆ VisitCXXDeleteExpr()

◆ VisitCXXDependentScopeMemberExpr()

◆ VisitCXXDestructorDecl()

ExpectedDecl ASTNodeImporter::VisitCXXDestructorDecl ( CXXDestructorDecl * D)

Definition at line 4219 of file ASTImporter.cpp.

References VisitCXXMethodDecl().

◆ VisitCXXExpansionSelectExpr()

◆ VisitCXXExpansionStmtDecl()

◆ VisitCXXExpansionStmtInstantiation()

◆ VisitCXXExpansionStmtPattern()

◆ VisitCXXFoldExpr()

◆ VisitCXXForRangeStmt()

◆ VisitCXXInheritedCtorInitExpr()

◆ VisitCXXMemberCallExpr()

◆ VisitCXXMethodDecl()

ExpectedDecl ASTNodeImporter::VisitCXXMethodDecl ( CXXMethodDecl * D)

◆ VisitCXXNamedCastExpr()

◆ VisitCXXNewExpr()

◆ VisitCXXNoexceptExpr()

◆ VisitCXXNullPtrLiteralExpr()

ExpectedStmt ASTNodeImporter::VisitCXXNullPtrLiteralExpr ( CXXNullPtrLiteralExpr * E)

◆ VisitCXXParenListInitExpr()

◆ VisitCXXPseudoDestructorExpr()

◆ VisitCXXRewrittenBinaryOperator()

◆ VisitCXXScalarValueInitExpr()

◆ VisitCXXStdInitializerListExpr()

ExpectedStmt ASTNodeImporter::VisitCXXStdInitializerListExpr ( CXXStdInitializerListExpr * E)

◆ VisitCXXTemporaryObjectExpr()

◆ VisitCXXThisExpr()

◆ VisitCXXThrowExpr()

◆ VisitCXXTryStmt()

◆ VisitCXXTypeidExpr()

◆ VisitCXXUnresolvedConstructExpr()

◆ VisitDecl()

◆ VisitDeclRefExpr()

◆ VisitDeclStmt()

◆ VisitDefaultStmt()

◆ VisitDependentScopeDeclRefExpr()

◆ VisitDependentTemplateIdExpr()

◆ VisitDesignatedInitExpr()

◆ VisitDoStmt()

◆ VisitEmptyDecl()

◆ VisitEnumConstantDecl()

◆ VisitEnumDecl()

◆ VisitExplicitCastExpr()

◆ VisitExpr()

◆ VisitExpressionTraitExpr()

◆ VisitExprWithCleanups()

◆ VisitFieldDecl()

◆ VisitFileScopeAsmDecl()

◆ VisitFixedPointLiteral()

ExpectedStmt ASTNodeImporter::VisitFixedPointLiteral ( FixedPointLiteral * E)

◆ VisitFloatingLiteral()

◆ VisitForStmt()

◆ VisitFriendDecl()

◆ VisitFriendTemplateDecl()

◆ VisitFunctionDecl()

ExpectedDecl ASTNodeImporter::VisitFunctionDecl ( FunctionDecl * D)

Definition at line 3802 of file ASTImporter.cpp.

References clang::DeclContext::addDeclInternal(), clang::cast(), clang::AssociatedConstraint::ConstraintExpr, clang::FunctionDecl::DefaultedOrDeletedFunctionInfo::Create(), clang::FunctionDecl::doesThisDeclarationHaveABody(), clang::Error, clang::FunctionProtoType::ExtProtoInfo::ExceptionSpec, FindFunctionTemplateSpecialization(), clang::FunctionDecl::FriendConstraintRefersToEnclosingTemplate(), clang::Decl::getAccess(), clang::Type::getAs(), clang::DeclaratorDecl::getBeginLoc(), clang::getCanonicalForwardRedeclChain(), clang::FunctionDecl::getConstexprKind(), clang::Decl::getDeclContext(), clang::FunctionDecl::getDefaultedOrDeletedInfo(), clang::FunctionDecl::getDefaultLoc(), clang::FunctionDecl::getDescribedFunctionTemplate(), clang::Decl::getEndLoc(), clang::DeclaratorDecl::getInnerLocStart(), clang::Decl::getLexicalDeclContext(), clang::FunctionDecl::getMostRecentDecl(), clang::FunctionDecl::getNameInfo(), clang::DeclaratorDecl::getQualifierLoc(), clang::CXXDeductionGuideDecl::getSourceDeductionGuideKind(), clang::FunctionDecl::getStorageClass(), clang::FunctionDecl::getTemplatedKind(), clang::DeclaratorDecl::getTrailingRequiresClause(), clang::ValueDecl::getType(), clang::DeclaratorDecl::getTypeSourceInfo(), hasSameVisibilityContextAndLinkage(), clang::FunctionDecl::hasWrittenPrototype(), clang::Decl::IDNS_Ordinary, clang::Decl::IDNS_OrdinaryFriend, importChecked(), ImportContainerChecked(), ImportDeclarationNameLoc(), ImportDeclParts(), clang::ASTImporter::Imported(), ImportFunctionDeclBody(), ImportOverriddenMethods(), ImportTemplateInformation(), clang::isa(), clang::FunctionDecl::isDefaulted(), clang::FunctionDecl::isDeletedAsWritten(), clang::FunctionDecl::isDestroyingOperatorDelete(), clang::FunctionDecl::isExplicitlyDefaulted(), clang::DeclContext::isFunctionOrMethod(), clang::Decl::isImplicit(), clang::FunctionDecl::isInlineSpecified(), clang::FunctionDecl::isPureVirtual(), IsStructuralMatch(), clang::FunctionDecl::isTrivial(), clang::FunctionDecl::isTypeAwareOperatorNewOrDelete(), clang::FunctionDecl::isVirtualAsWritten(), clang::DeclAccessPair::make(), clang::Method, clang::FunctionProtoType::ExceptionSpecInfo::NoexceptExpr, clang::StmtVisitorBase< std::add_pointer, ASTNodeImporter, ExpectedStmt, ParamTys... >::P, clang::FunctionDecl::parameters(), clang::Decl::setAccess(), clang::FunctionDecl::setDefaulted(), clang::FunctionDecl::setDefaultedOrDeletedInfo(), clang::FunctionDecl::setDefaultLoc(), clang::FunctionDecl::setDeletedAsWritten(), clang::FunctionDecl::setExplicitlyDefaulted(), clang::FunctionDecl::setFriendConstraintRefersToEnclosingTemplate(), clang::FunctionDecl::setIsDestroyingOperatorDelete(), clang::FunctionDecl::setIsPureVirtual(), clang::FunctionDecl::setIsTypeAwareOperatorNewOrDelete(), clang::Decl::setLexicalDeclContext(), clang::CXXDestructorDecl::setOperatorDelete(), clang::Redeclarable< decl_type >::setPreviousDecl(), clang::DeclaratorDecl::setQualifierInfo(), clang::FunctionDecl::setRangeEnd(), clang::FunctionDecl::setTrivial(), clang::ValueDecl::setType(), clang::DeclaratorDecl::setTypeSourceInfo(), clang::FunctionDecl::setVirtualAsWritten(), clang::FunctionProtoType::ExceptionSpecInfo::SourceDecl, clang::FunctionProtoType::ExceptionSpecInfo::SourceTemplate, clang::T, clang::FunctionDecl::TK_FunctionTemplateSpecialization, and clang::FunctionDecl::UsesFPIntrin().

Referenced by VisitCXXDeductionGuideDecl(), and VisitCXXMethodDecl().

◆ VisitFunctionTemplateDecl()

◆ VisitGCCAsmStmt()

◆ VisitGenericSelectionExpr()

◆ VisitGNUNullExpr()

ExpectedStmt ASTNodeImporter::VisitGNUNullExpr ( GNUNullExpr * E)

Definition at line 7699 of file ASTImporter.cpp.

References clang::GNUNullExpr::getBeginLoc(), and clang::Expr::getType().

◆ VisitGotoStmt()

◆ VisitIfStmt()

◆ VisitImaginaryLiteral()

ExpectedStmt ASTNodeImporter::VisitImaginaryLiteral ( ImaginaryLiteral * E)

◆ VisitImplicitCastExpr()

◆ VisitImplicitConceptSpecializationDecl()

◆ VisitImplicitParamDecl()

◆ VisitImplicitValueInitExpr()

ExpectedStmt ASTNodeImporter::VisitImplicitValueInitExpr ( ImplicitValueInitExpr * E)

Definition at line 7817 of file ASTImporter.cpp.

References clang::Expr::getType().

◆ VisitImportDecl()

ExpectedDecl ASTNodeImporter::VisitImportDecl ( ImportDecl * D)

◆ VisitIndirectFieldDecl()

◆ VisitIndirectGotoStmt()

◆ VisitInitListExpr()

◆ VisitIntegerLiteral()

◆ VisitLabelDecl()

◆ VisitLabelStmt()

◆ VisitLambdaExpr()

◆ VisitLifetimeExtendedTemporaryDecl()

◆ VisitLinkageSpecDecl()

◆ VisitMaterializeTemporaryExpr()

◆ VisitMemberExpr()

◆ VisitNamespaceAliasDecl()

◆ VisitNamespaceDecl()

◆ VisitNonTypeTemplateParmDecl()

◆ VisitNullStmt()

ExpectedStmt ASTNodeImporter::VisitNullStmt ( NullStmt * S)

◆ VisitObjCAtCatchStmt()

◆ VisitObjCAtFinallyStmt()

ExpectedStmt ASTNodeImporter::VisitObjCAtFinallyStmt ( ObjCAtFinallyStmt * S)

◆ VisitObjCAtSynchronizedStmt()

◆ VisitObjCAtThrowStmt()

ExpectedStmt ASTNodeImporter::VisitObjCAtThrowStmt ( ObjCAtThrowStmt * S)

◆ VisitObjCAtTryStmt()

◆ VisitObjCAutoreleasePoolStmt()

ExpectedStmt ASTNodeImporter::VisitObjCAutoreleasePoolStmt ( ObjCAutoreleasePoolStmt * S)

◆ VisitObjCCategoryDecl()

◆ VisitObjCCategoryImplDecl()

◆ VisitObjCForCollectionStmt()

◆ VisitObjCImplementationDecl()

◆ VisitObjCInterfaceDecl()

◆ VisitObjCIvarDecl()

◆ VisitObjCMethodDecl()

◆ VisitObjCPropertyDecl()

◆ VisitObjCPropertyImplDecl()

◆ VisitObjCProtocolDecl()

◆ VisitObjCTypeParamDecl()

◆ VisitOffsetOfExpr()

◆ VisitOpaqueValueExpr()

◆ VisitPackExpansionExpr()

◆ VisitParenExpr()

◆ VisitParenListExpr()

◆ VisitParmVarDecl()

◆ VisitPredefinedExpr()

◆ VisitPseudoObjectExpr()

◆ VisitRecordDecl()

ExpectedDecl ASTNodeImporter::VisitRecordDecl ( RecordDecl * D)

Definition at line 3404 of file ASTImporter.cpp.

References clang::ExternalASTSource::CompleteType(), clang::CXXRecordDecl::CreateLambda(), clang::Error, clang::Decl::FOK_None, clang::Found, clang::Decl::getAccess(), clang::DeclarationName::getAsIdentifierInfo(), clang::Decl::getASTContext(), clang::TypeDecl::getBeginLoc(), clang::TagDecl::getBraceRange(), clang::NamedDecl::getDeclName(), clang::RecordDecl::getDefinition(), clang::ASTContext::getExternalSource(), clang::CXXRecordDecl::getInstantiatedFromMemberClass(), clang::CXXRecordDecl::getMemberSpecializationInfo(), clang::RecordDecl::getMostRecentDecl(), clang::TagDecl::getQualifierLoc(), clang::TagDecl::getTagKind(), clang::TagDecl::getTypedefNameForAnonDecl(), clang::DeclContext::hasExternalLexicalStorage(), hasSameVisibilityContextAndLinkage(), IDK_Default, clang::Decl::IDNS_Ordinary, clang::Decl::IDNS_Tag, clang::Decl::IDNS_TagFriend, ImportDeclParts(), clang::ASTImporter::ImportDefinition(), ImportImplicitMethods(), clang::ASTImporter::importInto(), clang::RecordDecl::isAnonymousStructOrUnion(), clang::TagDecl::isCompleteDefinition(), clang::DeclContext::isDependentContext(), clang::DeclContext::isFunctionOrMethod(), clang::RecordDecl::isLambda(), IsStructuralMatch(), clang::TagDecl::isThisDeclarationADefinition(), clang::Decl::setAccess(), clang::RecordDecl::setAnonymousStructOrUnion(), clang::TagDecl::setBraceRange(), clang::CXXRecordDecl::setDescribedClassTemplate(), clang::CXXRecordDecl::setInstantiationOfMemberClass(), clang::CXXRecordDecl::setLambdaContextDecl(), clang::CXXRecordDecl::setLambdaNumbering(), clang::Decl::setLexicalDeclContext(), clang::MemberSpecializationInfo::setPointOfInstantiation(), clang::TagDecl::setQualifierInfo(), and clang::Typedef.

◆ VisitRequiresExpr()

◆ VisitRequiresExprBodyDecl()

◆ VisitReturnStmt()

◆ VisitShuffleVectorExpr()

◆ VisitSizeOfPackExpr()

◆ VisitSourceLocExpr()

◆ VisitStaticAssertDecl()

◆ VisitStmt()

◆ VisitStmtExpr()

◆ VisitStringLiteral()

◆ VisitSubstNonTypeTemplateParmExpr()

◆ VisitSubstNonTypeTemplateParmPackExpr()

◆ VisitSwitchStmt()

◆ VisitTemplateParamObjectDecl()

◆ VisitTemplateTemplateParmDecl()

◆ VisitTemplateTypeParmDecl()

◆ VisitTranslationUnitDecl()

ExpectedDecl ASTNodeImporter::VisitTranslationUnitDecl ( TranslationUnitDecl * D)

Definition at line 2806 of file ASTImporter.cpp.

References clang::Decl::getTranslationUnitDecl().

◆ VisitType()

ExpectedType ASTNodeImporter::VisitType ( const Type * T)

Definition at line 1325 of file ASTImporter.cpp.

References clang::T, and clang::ASTImportError::UnsupportedConstruct.

◆ VisitTypeAliasDecl()

ExpectedDecl ASTNodeImporter::VisitTypeAliasDecl ( TypeAliasDecl * D)

Definition at line 3190 of file ASTImporter.cpp.

References VisitTypedefNameDecl().

◆ VisitTypeAliasTemplateDecl()

◆ VisitTypedefDecl()

ExpectedDecl ASTNodeImporter::VisitTypedefDecl ( TypedefDecl * D)

Definition at line 3186 of file ASTImporter.cpp.

References VisitTypedefNameDecl().

◆ VisitTypedefNameDecl()

◆ VisitTypeTraitExpr()

◆ VisitUnaryExprOrTypeTraitExpr()

◆ VisitUnaryOperator()

◆ VisitUnresolvedLookupExpr()

◆ VisitUnresolvedMemberExpr()

◆ VisitUnresolvedUsingTypenameDecl()

◆ VisitUnresolvedUsingValueDecl()

◆ VisitUsingDecl()

◆ VisitUsingDirectiveDecl()

◆ VisitUsingEnumDecl()

◆ VisitUsingPackDecl()

◆ VisitUsingShadowDecl()

◆ VisitVAArgExpr()

◆ VisitVarDecl()

◆ VisitVarTemplateDecl()

◆ VisitVarTemplateSpecializationDecl()

ExpectedDecl ASTNodeImporter::VisitVarTemplateSpecializationDecl ( VarTemplateSpecializationDecl * D)

Definition at line 6665 of file ASTImporter.cpp.

References clang::TemplateArgumentList::asArray(), clang::Error, clang::Decl::getAccess(), clang::DeclaratorDecl::getBeginLoc(), clang::getCanonicalForwardRedeclChain(), clang::Decl::getDeclContext(), clang::VarDecl::getDefinition(), clang::Decl::getLocation(), clang::VarTemplateSpecializationDecl::getMostRecentDecl(), clang::VarTemplateSpecializationDecl::getPointOfInstantiation(), clang::DeclaratorDecl::getQualifierLoc(), clang::VarTemplateSpecializationDecl::getSpecializationKind(), clang::VarTemplateSpecializationDecl::getSpecializedTemplate(), clang::VarDecl::getStorageClass(), clang::VarTemplateSpecializationDecl::getTemplateArgs(), clang::VarTemplateSpecializationDecl::getTemplateArgsAsWritten(), clang::ValueDecl::getType(), clang::DeclaratorDecl::getTypeSourceInfo(), ImportDeclContext(), ImportInitializer(), clang::ASTImporter::importInto(), ImportTemplateArgumentListInfo(), clang::ASTImporter::ImportTemplateArguments(), clang::VarDecl::isConstexpr(), clang::DeclContext::isRecord(), IsStructuralMatch(), clang::VarDecl::isThisDeclarationADefinition(), clang::SourceLocation::isValid(), clang::ASTImportError::NameConflict, clang::Decl::setAccess(), clang::VarDecl::setConstexpr(), clang::VarTemplateSpecializationDecl::setPointOfInstantiation(), clang::Redeclarable< decl_type >::setPreviousDecl(), clang::DeclaratorDecl::setQualifierInfo(), clang::VarTemplateSpecializationDecl::setSpecializationKind(), clang::VarTemplateSpecializationDecl::setTemplateArgsAsWritten(), clang::ValueDecl::setType(), clang::DeclaratorDecl::setTypeSourceInfo(), clang::T, and clang::VarTemplate.

◆ VisitWhileStmt()


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