class NamespaceAliasDecl

Declaration

class NamespaceAliasDecl : public NamedDecl, public Redeclarable { /* full declaration omitted */ };

Description

Represents a C++ namespace alias. For example:

Declared at: clang/include/clang/AST/DeclCXX.h:3019

Inherits from: NamedDecl, Redeclarable

Member Variables

private clang::SourceLocation NamespaceLoc
The location of the \c namespace keyword.
private clang::SourceLocation IdentLoc
This is accessed by TargetNameLoc.
private clang::NestedNameSpecifierLoc QualifierLoc
The nested-name-specifier that precedes the namespace.
private clang::NamedDecl* Namespace
The Decl that this alias points to, either a NamespaceDecl or a NamespaceAliasDecl.

Inherited from Decl:

protected NextInContextAndBits
protected Access
protected FromASTFile
protected IdentifierNamespace
protected CacheValidAndLinkage

Method Overview

  • public static clang::NamespaceAliasDecl * Create(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation NamespaceLoc, clang::SourceLocation AliasLoc, clang::IdentifierInfo * Alias, clang::NestedNameSpecifierLoc QualifierLoc, clang::SourceLocation IdentLoc, clang::NamedDecl * Namespace)
  • public static clang::NamespaceAliasDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
  • private NamespaceAliasDecl(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation NamespaceLoc, clang::SourceLocation AliasLoc, clang::IdentifierInfo * Alias, clang::NestedNameSpecifierLoc QualifierLoc, clang::SourceLocation IdentLoc, clang::NamedDecl * Namespace)
  • private void anchor()
  • public static bool classof(const clang::Decl * D)
  • public static bool classofKind(clang::Decl::Kind K)
  • public clang::SourceLocation getAliasLoc() const
  • public clang::NamedDecl * getAliasedNamespace() const
  • public clang::NamespaceAliasDecl * getCanonicalDecl()
  • public const clang::NamespaceAliasDecl * getCanonicalDecl() const
  • private clang::NamespaceAliasDecl * getMostRecentDeclImpl()
  • public clang::NamespaceDecl * getNamespace()
  • public const clang::NamespaceDecl * getNamespace() const
  • public clang::SourceLocation getNamespaceLoc() const
  • private clang::NamespaceAliasDecl * getNextRedeclarationImpl()
  • private clang::NamespaceAliasDecl * getPreviousDeclImpl()
  • public clang::NestedNameSpecifier * getQualifier() const
  • public clang::NestedNameSpecifierLoc getQualifierLoc() const
  • public clang::SourceRange getSourceRange() const
  • public clang::SourceLocation getTargetNameLoc() const

Inherited from NamedDecl:

Inherited from Decl:

Methods

static clang::NamespaceAliasDecl* Create(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::SourceLocation NamespaceLoc,
    clang::SourceLocation AliasLoc,
    clang::IdentifierInfo* Alias,
    clang::NestedNameSpecifierLoc QualifierLoc,
    clang::SourceLocation IdentLoc,
    clang::NamedDecl* Namespace)

Declared at: clang/include/clang/AST/DeclCXX.h:3055

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::SourceLocation NamespaceLoc
clang::SourceLocation AliasLoc
clang::IdentifierInfo* Alias
clang::NestedNameSpecifierLoc QualifierLoc
clang::SourceLocation IdentLoc
clang::NamedDecl* Namespace

static clang::NamespaceAliasDecl*
CreateDeserialized(clang::ASTContext& C,
                   unsigned int ID)

Declared at: clang/include/clang/AST/DeclCXX.h:3063

Parameters

clang::ASTContext& C
unsigned int ID

NamespaceAliasDecl(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::SourceLocation NamespaceLoc,
    clang::SourceLocation AliasLoc,
    clang::IdentifierInfo* Alias,
    clang::NestedNameSpecifierLoc QualifierLoc,
    clang::SourceLocation IdentLoc,
    clang::NamedDecl* Namespace)

Declared at: clang/include/clang/AST/DeclCXX.h:3038

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::SourceLocation NamespaceLoc
clang::SourceLocation AliasLoc
clang::IdentifierInfo* Alias
clang::NestedNameSpecifierLoc QualifierLoc
clang::SourceLocation IdentLoc
clang::NamedDecl* Namespace

void anchor()

Declared at: clang/include/clang/AST/DeclCXX.h:3046

static bool classof(const clang::Decl* D)

Declared at: clang/include/clang/AST/DeclCXX.h:3121

Parameters

const clang::Decl* D

static bool classofKind(clang::Decl::Kind K)

Declared at: clang/include/clang/AST/DeclCXX.h:3122

Parameters

clang::Decl::Kind K

clang::SourceLocation getAliasLoc() const

Description

Returns the location of the alias name, i.e. 'foo' in "namespace foo = ns::bar;".

Declared at: clang/include/clang/AST/DeclCXX.h:3105

clang::NamedDecl* getAliasedNamespace() const

Description

Retrieve the namespace that this alias refers to, which may either be a NamespaceDecl or a NamespaceAliasDecl.

Declared at: clang/include/clang/AST/DeclCXX.h:3115

clang::NamespaceAliasDecl* getCanonicalDecl()

Description

Retrieves the "canonical" declaration of the given declaration.

Declared at: clang/include/clang/AST/DeclCXX.h:3074

const clang::NamespaceAliasDecl*
getCanonicalDecl() const

Declared at: clang/include/clang/AST/DeclCXX.h:3077

clang::NamespaceAliasDecl* getMostRecentDeclImpl()

Description

Implementation of getMostRecentDecl(), to be overridden by any subclass that has a redeclaration chain.

Declared at: clang/include/clang/AST/DeclCXX.h:3052

clang::NamespaceDecl* getNamespace()

Description

Retrieve the namespace declaration aliased by this directive.

Declared at: clang/include/clang/AST/DeclCXX.h:3092

const clang::NamespaceDecl* getNamespace() const

Declared at: clang/include/clang/AST/DeclCXX.h:3099

clang::SourceLocation getNamespaceLoc() const

Description

Returns the location of the \c namespace keyword.

Declared at: clang/include/clang/AST/DeclCXX.h:3108

clang::NamespaceAliasDecl*
getNextRedeclarationImpl()

Description

Returns the next redeclaration or itself if this is the only decl. Decl subclasses that can be redeclared should override this method so that Decl::redecl_iterator can iterate over them.

Declared at: clang/include/clang/AST/DeclCXX.h:3050

clang::NamespaceAliasDecl* getPreviousDeclImpl()

Description

Implementation of getPreviousDecl(), to be overridden by any subclass that has a redeclaration chain.

Declared at: clang/include/clang/AST/DeclCXX.h:3051

clang::NestedNameSpecifier* getQualifier() const

Description

Retrieve the nested-name-specifier that qualifies the name of the namespace.

Declared at: clang/include/clang/AST/DeclCXX.h:3087

clang::NestedNameSpecifierLoc getQualifierLoc()
    const

Description

Retrieve the nested-name-specifier that qualifies the name of the namespace, with source-location information.

Declared at: clang/include/clang/AST/DeclCXX.h:3083

clang::SourceRange getSourceRange() const

Description

Source range that this declaration covers.

Declared at: clang/include/clang/AST/DeclCXX.h:3117

clang::SourceLocation getTargetNameLoc() const

Description

Returns the location of the identifier in the named namespace.

Declared at: clang/include/clang/AST/DeclCXX.h:3111