class LinkageSpecDecl
Declaration
class LinkageSpecDecl : public Decl, public DeclContext { /* full declaration omitted */ };
Description
Represents a linkage specification. For example:
Declared at: clang/include/clang/AST/DeclCXX.h:2830
Inherits from: Decl, DeclContext
Member Variables
- private clang::SourceLocation ExternLoc
- The source location for the extern keyword.
- private clang::SourceLocation RBraceLoc
- The source location for the right brace (if valid).
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
- public static clang::LinkageSpecDecl * Create(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation ExternLoc, clang::SourceLocation LangLoc, clang::LinkageSpecDecl::LanguageIDs Lang, bool HasBraces)
- public static clang::LinkageSpecDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
- private LinkageSpecDecl(clang::DeclContext * DC, clang::SourceLocation ExternLoc, clang::SourceLocation LangLoc, clang::LinkageSpecDecl::LanguageIDs lang, bool HasBraces)
- private virtual void anchor()
- public static clang::LinkageSpecDecl * castFromDeclContext(const clang::DeclContext * DC)
- public static clang::DeclContext * castToDeclContext(const clang::LinkageSpecDecl * D)
- public static bool classof(const clang::Decl * D)
- public static bool classofKind(clang::Decl::Kind K)
- public clang::SourceLocation getEndLoc() const
- public clang::SourceLocation getExternLoc() const
- public clang::LinkageSpecDecl::LanguageIDs getLanguage() const
- public clang::SourceLocation getRBraceLoc() const
- public clang::SourceRange getSourceRange() const
- public bool hasBraces() const
- public void setExternLoc(clang::SourceLocation L)
- public void setLanguage(clang::LinkageSpecDecl::LanguageIDs L)
- public void setRBraceLoc(clang::SourceLocation L)
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 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
¶static clang::LinkageSpecDecl* Create(
clang::ASTContext& C,
clang::DeclContext* DC,
clang::SourceLocation ExternLoc,
clang::SourceLocation LangLoc,
clang::LinkageSpecDecl::LanguageIDs Lang,
bool HasBraces)
static clang::LinkageSpecDecl* Create(
clang::ASTContext& C,
clang::DeclContext* DC,
clang::SourceLocation ExternLoc,
clang::SourceLocation LangLoc,
clang::LinkageSpecDecl::LanguageIDs Lang,
bool HasBraces)
Declared at: clang/include/clang/AST/DeclCXX.h:2852
Parameters
- clang::ASTContext& C
- clang::DeclContext* DC
- clang::SourceLocation ExternLoc
- clang::SourceLocation LangLoc
- clang::LinkageSpecDecl::LanguageIDs Lang
- bool HasBraces
¶static clang::LinkageSpecDecl* CreateDeserialized(
clang::ASTContext& C,
unsigned int ID)
static clang::LinkageSpecDecl* CreateDeserialized(
clang::ASTContext& C,
unsigned int ID)
Declared at: clang/include/clang/AST/DeclCXX.h:2856
Parameters
- clang::ASTContext& C
- unsigned int ID
¶LinkageSpecDecl(
clang::DeclContext* DC,
clang::SourceLocation ExternLoc,
clang::SourceLocation LangLoc,
clang::LinkageSpecDecl::LanguageIDs lang,
bool HasBraces)
LinkageSpecDecl(
clang::DeclContext* DC,
clang::SourceLocation ExternLoc,
clang::SourceLocation LangLoc,
clang::LinkageSpecDecl::LanguageIDs lang,
bool HasBraces)
Declared at: clang/include/clang/AST/DeclCXX.h:2848
Parameters
- clang::DeclContext* DC
- clang::SourceLocation ExternLoc
- clang::SourceLocation LangLoc
- clang::LinkageSpecDecl::LanguageIDs lang
- bool HasBraces
¶virtual void anchor()
virtual void anchor()
Declared at: clang/include/clang/AST/DeclCXX.h:2831
¶static clang::LinkageSpecDecl*
castFromDeclContext(const clang::DeclContext* DC)
static clang::LinkageSpecDecl*
castFromDeclContext(const clang::DeclContext* DC)
Declared at: clang/include/clang/AST/DeclCXX.h:2900
Parameters
- const clang::DeclContext* DC
¶static clang::DeclContext* castToDeclContext(
const clang::LinkageSpecDecl* D)
static clang::DeclContext* castToDeclContext(
const clang::LinkageSpecDecl* D)
Declared at: clang/include/clang/AST/DeclCXX.h:2896
Parameters
- const clang::LinkageSpecDecl* D
¶static bool classof(const clang::Decl* D)
static bool classof(const clang::Decl* D)
Declared at: clang/include/clang/AST/DeclCXX.h:2893
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:2894
Parameters
- clang::Decl::Kind K
¶clang::SourceLocation getEndLoc() const
clang::SourceLocation getEndLoc() const
Declared at: clang/include/clang/AST/DeclCXX.h:2881
¶clang::SourceLocation getExternLoc() const
clang::SourceLocation getExternLoc() const
Declared at: clang/include/clang/AST/DeclCXX.h:2873
¶clang::LinkageSpecDecl::LanguageIDs getLanguage()
const
clang::LinkageSpecDecl::LanguageIDs getLanguage()
const
Description
Return the language specified by this linkage specification.
Declared at: clang/include/clang/AST/DeclCXX.h:2859
¶clang::SourceLocation getRBraceLoc() const
clang::SourceLocation getRBraceLoc() const
Declared at: clang/include/clang/AST/DeclCXX.h:2874
¶clang::SourceRange getSourceRange() const
clang::SourceRange getSourceRange() const
Description
Source range that this declaration covers.
Declared at: clang/include/clang/AST/DeclCXX.h:2889
¶bool hasBraces() const
bool hasBraces() const
Description
Determines whether this linkage specification had braces in its syntactic form.
Declared at: clang/include/clang/AST/DeclCXX.h:2868
¶void setExternLoc(clang::SourceLocation L)
void setExternLoc(clang::SourceLocation L)
Declared at: clang/include/clang/AST/DeclCXX.h:2875
Parameters
¶void setLanguage(
clang::LinkageSpecDecl::LanguageIDs L)
void setLanguage(
clang::LinkageSpecDecl::LanguageIDs L)
Description
Set the language specified by this linkage specification.
Declared at: clang/include/clang/AST/DeclCXX.h:2864
Parameters
- clang::LinkageSpecDecl::LanguageIDs L
¶void setRBraceLoc(clang::SourceLocation L)
void setRBraceLoc(clang::SourceLocation L)
Declared at: clang/include/clang/AST/DeclCXX.h:2876