class CXXConversionDecl
Declaration
class CXXConversionDecl : public CXXMethodDecl { /* full declaration omitted */ };
Description
Represents a C++ conversion function within a class. For example:
Declared at: clang/include/clang/AST/DeclCXX.h:2764
Inherits from: CXXMethodDecl
Member Variables
- private clang::ExplicitSpecifier ExplicitSpec
Inherited from DeclContext:
- protected
- protected FirstDecl = nullptr
- protected LastDecl = nullptr
Inherited from Decl:
- protected NextInContextAndBits
- protected Access
- protected FromASTFile
- protected IdentifierNamespace
- protected CacheValidAndLinkage
Method Overview
- private CXXConversionDecl(clang::ASTContext & C, clang::CXXRecordDecl * RD, clang::SourceLocation StartLoc, const clang::DeclarationNameInfo & NameInfo, clang::QualType T, clang::TypeSourceInfo * TInfo, bool UsesFPIntrin, bool isInline, clang::ExplicitSpecifier ES, clang::ConstexprSpecKind ConstexprKind, clang::SourceLocation EndLocation, clang::Expr * TrailingRequiresClause = nullptr)
- public static clang::CXXConversionDecl * Create(clang::ASTContext & C, clang::CXXRecordDecl * RD, clang::SourceLocation StartLoc, const clang::DeclarationNameInfo & NameInfo, clang::QualType T, clang::TypeSourceInfo * TInfo, bool UsesFPIntrin, bool isInline, clang::ExplicitSpecifier ES, clang::ConstexprSpecKind ConstexprKind, clang::SourceLocation EndLocation, clang::Expr * TrailingRequiresClause = nullptr)
- public static clang::CXXConversionDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
- private void anchor()
- public static bool classof(const clang::Decl * D)
- public static bool classofKind(clang::Decl::Kind K)
- public clang::CXXConversionDecl * getCanonicalDecl()
- public const clang::CXXConversionDecl * getCanonicalDecl() const
- public clang::QualType getConversionType() const
- public clang::ExplicitSpecifier getExplicitSpecifier()
- public const clang::ExplicitSpecifier getExplicitSpecifier() const
- public bool isExplicit() const
- public bool isLambdaToBlockPointerConversion() const
- public void setExplicitSpecifier(clang::ExplicitSpecifier ES)
Inherited from CXXMethodDecl:
- public Create
- public CreateDeserialized
- public addOverriddenMethod
- public begin_overridden_methods
- public classof
- public classofKind
- public end_overridden_methods
- public getCanonicalDecl
- public getCanonicalDecl
- public getCorrespondingMethodDeclaredInClass
- public getCorrespondingMethodDeclaredInClass
- public getCorrespondingMethodInClass
- public getCorrespondingMethodInClass
- public getDevirtualizedMethod
- public getDevirtualizedMethod
- public getMethodQualifiers
- public getMostRecentDecl
- public getMostRecentDecl
- public getParent
- public getParent
- public getRefQualifier
- public getThisObjectType
- public getThisObjectType
- public getThisType
- public getThisType
- public hasInlineBody
- public isConst
- public isCopyAssignmentOperator
- public isInstance
- public isLambdaStaticInvoker
- public isMoveAssignmentOperator
- public isStatic
- public isStaticOverloadedOperator
- public isUsualDeallocationFunction
- public isVirtual
- public isVolatile
- public overridden_methods
- public size_overridden_methods
Inherited from FunctionDecl:
- public Create
- public Create
- public CreateDeserialized
- public UsesFPIntrin
- public castFromDeclContext
- public castToDeclContext
- public classof
- public classofKind
- public doesDeclarationForceExternallyVisibleDefinition
- public doesThisDeclarationHaveABody
- public getAssociatedConstraints
- public getBody
- public getBody
- public getBuiltinID
- public getCallResultType
- public getCanonicalDecl
- public getCanonicalDecl
- public getConstexprKind
- public getDeclaredReturnType
- public getDefaultedFunctionInfo
- public getDefinition
- public getDefinition
- public getDependentSpecializationInfo
- public getDescribedFunctionTemplate
- public getEllipsisLoc
- public getExceptionSpecSourceRange
- public getExceptionSpecType
- public getFunctionTypeLoc
- public getInstantiatedFromDecl
- public getInstantiatedFromMemberFunction
- public getLanguageLinkage
- public getLiteralIdentifier
- public getMemberSpecializationInfo
- public getMemoryFunctionKind
- public getMinRequiredArguments
- protected getMostRecentDeclImpl
- public getMultiVersionKind
- public getNameForDiagnostic
- public getNameInfo
- protected getNextRedeclarationImpl
- public getNumParams
- public getODRHash
- public getODRHash
- public getOverloadedOperator
- public getParamDecl
- public getParamDecl
- public getParametersSourceRange
- public getPointOfInstantiation
- protected getPreviousDeclImpl
- public getPrimaryTemplate
- public getReturnType
- public getReturnTypeSourceRange
- public getSourceRange
- public getStorageClass
- public getTemplateInstantiationPattern
- public getTemplateSpecializationArgs
- public getTemplateSpecializationArgsAsWritten
- public getTemplateSpecializationInfo
- public getTemplateSpecializationKind
- public getTemplateSpecializationKindForInstantiation
- public getTemplatedKind
- public hasBody
- public hasBody
- public hasImplicitReturnZero
- public hasInheritedPrototype
- public hasOneParamOrDefaultArgs
- public hasPrototype
- public hasSkippedBody
- public hasTrivialBody
- public hasWrittenPrototype
- public instantiationIsPending
- public isCPUDispatchMultiVersion
- public isCPUSpecificMultiVersion
- public isConsteval
- public isConstexpr
- public isConstexprSpecified
- public isDefaulted
- public isDefined
- public isDefined
- public isDeleted
- public isDeletedAsWritten
- public isDestroyingOperatorDelete
- public isExplicitlyDefaulted
- public isExternC
- public isFunctionTemplateSpecialization
- public isGlobal
- public isImplicitlyInstantiable
- public isInExternCContext
- public isInExternCXXContext
- public isIneligibleOrNotSelected
- public isInlineBuiltinDeclaration
- public isInlineDefinitionExternallyVisible
- public isInlineSpecified
- public isInlined
- public isLateTemplateParsed
- public isMSExternInline
- public isMSVCRTEntryPoint
- public isMain
- public isMultiVersion
- public isNoReturn
- public isOutOfLine
- public isOverloadedOperator
- public isPure
- public isReplaceableGlobalAllocationFunction
- public isReservedGlobalPlacementOperator
- public isStatic
- public isTargetClonesMultiVersion
- public isTargetMultiVersion
- public isTemplateInstantiation
- public isThisDeclarationADefinition
- public isThisDeclarationInstantiatedFromAFriendDefinition
- public isTrivial
- public isTrivialForCall
- public isUserProvided
- public isVariadic
- public isVirtualAsWritten
- public param_begin
- public param_begin
- public param_empty
- public param_end
- public param_end
- public param_size
- public parameters
- public parameters
- public setBody
- public setConstexprKind
- public setDefaulted
- public setDefaultedFunctionInfo
- public setDeletedAsWritten
- public setDependentTemplateSpecialization
- public setDescribedFunctionTemplate
- public setExplicitlyDefaulted
- public setFunctionTemplateSpecialization
- public setHasImplicitReturnZero
- public setHasInheritedPrototype
- public setHasSkippedBody
- public setHasWrittenPrototype
- public setImplicitlyInline
- public setIneligibleOrNotSelected
- public setInlineSpecified
- public setInstantiatedFromDecl
- public setInstantiationIsPending
- public setInstantiationOfMemberFunction
- public setIsMultiVersion
- public setLateTemplateParsed
- public setLazyBody
- public setParams
- public setPreviousDeclaration
- public setPure
- public setRangeEnd
- public setStorageClass
- public setTemplateSpecializationKind
- public setTrivial
- public setTrivialForCall
- public setUsesFPIntrin
- public setUsesSEHTry
- public setVirtualAsWritten
- public setWillHaveBody
- public usesSEHTry
- public willHaveBody
Inherited from DeclContext:
- protected BuildDeclChain
- public Encloses
- public Equals
- public InEnclosingNamespaceSetOf
- public addDecl
- public addDeclInternal
- public addHiddenDecl
- public buildLookup
- public classof
- public classof
- public collectAllContexts
- public containsDecl
- public containsDeclAndLoad
- public ddiags
- public decls
- public decls_begin
- public decls_empty
- public decls_end
- public dumpDeclContext
- public dumpLookups
- public dumpLookups
- public getDeclKind
- public getDeclKindName
- public getEnclosingNamespaceContext
- public getEnclosingNamespaceContext
- public getExternCContext
- public getInnermostBlockDecl
- public getLexicalParent
- public getLexicalParent
- public getLookupParent
- public getLookupParent
- public getLookupPtr
- public getNonClosureAncestor
- public getNonClosureAncestor
- public getNonTransparentContext
- public getNonTransparentContext
- public getOuterLexicalRecordContext
- public getOuterLexicalRecordContext
- public getParent
- public getParent
- public getParentASTContext
- public getPrimaryContext
- public getPrimaryContext
- public getRedeclContext
- public getRedeclContext
- public hasExternalLexicalStorage
- public hasExternalVisibleStorage
- public isClosure
- public isDeclInLexicalTraversal
- public isDependentContext
- public isExternCContext
- public isExternCXXContext
- public isFileContext
- public isFunctionOrMethod
- public isInlineNamespace
- public isLookupContext
- public isNamespace
- public isObjCContainer
- public isRecord
- public isStdNamespace
- public isTranslationUnit
- public isTransparentContext
- public localUncachedLookup
- public lookup
- public lookups
- public lookups_begin
- public lookups_end
- public makeDeclVisibleInContext
- public noload_decls
- public noload_decls_begin
- public noload_decls_end
- public noload_lookup
- public noload_lookups
- public noload_lookups_begin
- public noload_lookups_end
- public removeDecl
- public setHasExternalLexicalStorage
- public setHasExternalVisibleStorage
- public setMustBuildLookupTable
- public setUseQualifiedLookup
- public shouldUseQualifiedLookup
- public using_directives
Inherited from DeclaratorDecl:
- public classof
- public classofKind
- public getBeginLoc
- public getInnerLocStart
- public getNumTemplateParameterLists
- public getOuterLocStart
- public getQualifier
- public getQualifierLoc
- public getSourceRange
- public getTemplateParameterList
- public getTrailingRequiresClause
- public getTrailingRequiresClause
- public getTypeSourceInfo
- public getTypeSpecEndLoc
- public getTypeSpecStartLoc
- public setInnerLocStart
- public setQualifierInfo
- public setTemplateParameterListsInfo
- public setTrailingRequiresClause
- public setTypeSourceInfo
Inherited from ValueDecl:
Inherited from NamedDecl:
- public classof
- public classofKind
- public declarationReplaces
- public getDeclName
- public getExplicitVisibility
- public getFormalLinkage
- public getIdentifier
- public getLinkageAndVisibility
- public getLinkageInternal
- public getMostRecentDecl
- public getMostRecentDecl
- public getName
- public getNameAsString
- public getNameForDiagnostic
- public getObjCFStringFormattingFamily
- public getQualifiedNameAsString
- public getUnderlyingDecl
- public getUnderlyingDecl
- public getVisibility
- public hasExternalFormalLinkage
- public hasLinkage
- public hasLinkageBeenComputed
- public isCXXClassMember
- public isCXXInstanceMember
- public isExternallyDeclarable
- public isExternallyVisible
- public isLinkageValid
- public isReserved
- public printName
- public printNestedNameSpecifier
- public printNestedNameSpecifier
- public printQualifiedName
- public printQualifiedName
- public setDeclName
Inherited from Decl:
- public EnableStatistics
- public PrintStats
- public add
- public addAttr
- public attr_begin
- public attr_end
- public attrs
- public canBeWeakImported
- public castFromDeclContext
- public castToDeclContext
- public classofKind
- public dropAttr
- public dropAttrs
- public dump
- public dump
- public dumpColor
- public getASTContext
- protected getASTMutationListener
- public getAccess
- public getAccessUnsafe
- public getAsFunction
- public getAsFunction
- public getAttr
- public getAttrs
- public getAttrs
- public getAvailability
- public getBeginLoc
- public getBody
- public getBodyRBrace
- protected getCachedLinkage
- public getCanonicalDecl
- public getCanonicalDecl
- public getDeclContext
- public getDeclContext
- public getDeclKindName
- public getDefiningAttr
- public getDescribedTemplate
- public getDescribedTemplateParams
- public getEndLoc
- public getExternalSourceSymbolAttr
- public getFriendObjectKind
- public getFunctionType
- public getGlobalID
- public getID
- public getIdentifierNamespace
- public getIdentifierNamespaceForKind
- public getImportedOwningModule
- public getKind
- public getLangOpts
- public getLexicalDeclContext
- public getLexicalDeclContext
- public getLocalOwningModule
- public getLocation
- public getMaxAlignment
- public getModuleOwnershipKind
- public getMostRecentDecl
- public getMostRecentDecl
- protected getMostRecentDeclImpl
- public getNextDeclInContext
- public getNextDeclInContext
- protected getNextRedeclarationImpl
- public getNonClosureContext
- public getNonClosureContext
- public getOwningModule
- public getOwningModuleForLinkage
- public getOwningModuleID
- public getParentFunctionOrMethod
- public getParentFunctionOrMethod
- public getPreviousDecl
- public getPreviousDecl
- protected getPreviousDeclImpl
- public getSourceRange
- public getTemplateDepth
- public getTranslationUnitDecl
- public getTranslationUnitDecl
- public getVersionIntroduced
- public hasAttr
- public hasAttrs
- public hasBody
- protected hasCachedLinkage
- public hasDefiningAttr
- protected hasLocalOwningModuleStorage
- public hasOwningModule
- public hasTagIdentifierNamespace
- public isCanonicalDecl
- public isDefinedOutsideFunctionOrMethod
- public isDeprecated
- public isDiscardedInGlobalModuleFragment
- public isFirstDecl
- public isFromASTFile
- public isFunctionOrFunctionTemplate
- public isImplicit
- public isInAnonymousNamespace
- public isInExportDeclContext
- public isInIdentifierNamespace
- public isInLocalScopeForInstantiation
- public isInStdNamespace
- public isInvalidDecl
- public isInvisibleOutsideTheOwningModule
- public isLocalExternDecl
- public isModulePrivate
- public isOutOfLine
- public isParameterPack
- public isReachable
- public isReferenced
- public isTagIdentifierNamespace
- public isTemplateDecl
- public isTemplateParameter
- public isTemplateParameterPack
- public isTemplated
- public isThisDeclarationReferenced
- public isTopLevelDeclInObjCContainer
- public isUnavailable
- public isUnconditionallyVisible
- public isUsed
- public isWeakImported
- public markUsed
- public print
- public print
- public printGroup
- public redecls
- public redecls_begin
- public redecls_end
- public setAccess
- public setAttrs
- protected setCachedLinkage
- public setDeclContext
- public setFromASTFile
- public setImplicit
- public setInvalidDecl
- public setIsUsed
- public setLexicalDeclContext
- public setLocalExternDecl
- public setLocalOwningModule
- public setLocation
- public setModuleOwnershipKind
- protected setModulePrivate
- public setNonMemberOperator
- public setObjectOfFriendDecl
- public setOwningModuleID
- public setReferenced
- public setTopLevelDeclInObjCContainer
- public setVisibleDespiteOwningModule
- public specific_attr_begin
- public specific_attr_end
- public specific_attrs
- protected updateOutOfDate
Methods
¶CXXConversionDecl(
clang::ASTContext& C,
clang::CXXRecordDecl* RD,
clang::SourceLocation StartLoc,
const clang::DeclarationNameInfo& NameInfo,
clang::QualType T,
clang::TypeSourceInfo* TInfo,
bool UsesFPIntrin,
bool isInline,
clang::ExplicitSpecifier ES,
clang::ConstexprSpecKind ConstexprKind,
clang::SourceLocation EndLocation,
clang::Expr* TrailingRequiresClause = nullptr)
CXXConversionDecl(
clang::ASTContext& C,
clang::CXXRecordDecl* RD,
clang::SourceLocation StartLoc,
const clang::DeclarationNameInfo& NameInfo,
clang::QualType T,
clang::TypeSourceInfo* TInfo,
bool UsesFPIntrin,
bool isInline,
clang::ExplicitSpecifier ES,
clang::ConstexprSpecKind ConstexprKind,
clang::SourceLocation EndLocation,
clang::Expr* TrailingRequiresClause = nullptr)
Declared at: clang/include/clang/AST/DeclCXX.h:2765
Parameters
- clang::ASTContext& C
- clang::CXXRecordDecl* RD
- clang::SourceLocation StartLoc
- const clang::DeclarationNameInfo& NameInfo
- clang::QualType T
- clang::TypeSourceInfo* TInfo
- bool UsesFPIntrin
- bool isInline
- clang::ExplicitSpecifier ES
- clang::ConstexprSpecKind ConstexprKind
- clang::SourceLocation EndLocation
- clang::Expr* TrailingRequiresClause = nullptr
¶static clang::CXXConversionDecl* Create(
clang::ASTContext& C,
clang::CXXRecordDecl* RD,
clang::SourceLocation StartLoc,
const clang::DeclarationNameInfo& NameInfo,
clang::QualType T,
clang::TypeSourceInfo* TInfo,
bool UsesFPIntrin,
bool isInline,
clang::ExplicitSpecifier ES,
clang::ConstexprSpecKind ConstexprKind,
clang::SourceLocation EndLocation,
clang::Expr* TrailingRequiresClause = nullptr)
static clang::CXXConversionDecl* Create(
clang::ASTContext& C,
clang::CXXRecordDecl* RD,
clang::SourceLocation StartLoc,
const clang::DeclarationNameInfo& NameInfo,
clang::QualType T,
clang::TypeSourceInfo* TInfo,
bool UsesFPIntrin,
bool isInline,
clang::ExplicitSpecifier ES,
clang::ConstexprSpecKind ConstexprKind,
clang::SourceLocation EndLocation,
clang::Expr* TrailingRequiresClause = nullptr)
Declared at: clang/include/clang/AST/DeclCXX.h:2784
Parameters
- clang::ASTContext& C
- clang::CXXRecordDecl* RD
- clang::SourceLocation StartLoc
- const clang::DeclarationNameInfo& NameInfo
- clang::QualType T
- clang::TypeSourceInfo* TInfo
- bool UsesFPIntrin
- bool isInline
- clang::ExplicitSpecifier ES
- clang::ConstexprSpecKind ConstexprKind
- clang::SourceLocation EndLocation
- clang::Expr* TrailingRequiresClause = nullptr
¶static clang::CXXConversionDecl*
CreateDeserialized(clang::ASTContext& C,
unsigned int ID)
static clang::CXXConversionDecl*
CreateDeserialized(clang::ASTContext& C,
unsigned int ID)
Declared at: clang/include/clang/AST/DeclCXX.h:2789
Parameters
- clang::ASTContext& C
- unsigned int ID
¶void anchor()
void anchor()
Declared at: clang/include/clang/AST/DeclCXX.h:2775
¶static bool classof(const clang::Decl* D)
static bool classof(const clang::Decl* D)
Declared at: clang/include/clang/AST/DeclCXX.h:2820
Parameters
- const clang::Decl* D
¶static bool classofKind(clang::Decl::Kind K)
static bool classofKind(clang::Decl::Kind K)
Declared at: clang/include/clang/AST/DeclCXX.h:2821
Parameters
- clang::Decl::Kind K
¶clang::CXXConversionDecl* getCanonicalDecl()
clang::CXXConversionDecl* getCanonicalDecl()
Description
Retrieves the "canonical" declaration of the given declaration.
Declared at: clang/include/clang/AST/DeclCXX.h:2812
¶const clang::CXXConversionDecl* getCanonicalDecl()
const
const clang::CXXConversionDecl* getCanonicalDecl()
const
Declared at: clang/include/clang/AST/DeclCXX.h:2815
¶clang::QualType getConversionType() const
clang::QualType getConversionType() const
Description
Returns the type that this conversion function is converting to.
Declared at: clang/include/clang/AST/DeclCXX.h:2804
¶clang::ExplicitSpecifier getExplicitSpecifier()
clang::ExplicitSpecifier getExplicitSpecifier()
Declared at: clang/include/clang/AST/DeclCXX.h:2791
¶const clang::ExplicitSpecifier
getExplicitSpecifier() const
const clang::ExplicitSpecifier
getExplicitSpecifier() const
Declared at: clang/include/clang/AST/DeclCXX.h:2795
¶bool isExplicit() const
bool isExplicit() const
Description
Return true if the declartion is already resolved to be explicit.
Declared at: clang/include/clang/AST/DeclCXX.h:2800
¶bool isLambdaToBlockPointerConversion() const
bool isLambdaToBlockPointerConversion() const
Description
Determine whether this conversion function is a conversion from a lambda closure type to a block pointer.
Declared at: clang/include/clang/AST/DeclCXX.h:2810
¶void setExplicitSpecifier(
clang::ExplicitSpecifier ES)
void setExplicitSpecifier(
clang::ExplicitSpecifier ES)
Declared at: clang/include/clang/AST/DeclCXX.h:2801