class UsingDirectiveDecl

Declaration

class UsingDirectiveDecl : public NamedDecl { /* full declaration omitted */ };

Description

Represents C++ using-directive. For example:

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

Inherits from: NamedDecl

Member Variables

private clang::SourceLocation UsingLoc
The location of the \c using keyword.
private clang::SourceLocation NamespaceLoc
The location of the \c namespace keyword.
private clang::NestedNameSpecifierLoc QualifierLoc
The nested-name-specifier that precedes the namespace.
private clang::NamedDecl* NominatedNamespace
The namespace nominated by this using-directive.
private clang::DeclContext* CommonAncestor
Enclosing context containing both using-directive and nominated namespace.

Inherited from Decl:

protected NextInContextAndBits
protected Access
protected FromASTFile
protected IdentifierNamespace
protected CacheValidAndLinkage

Method Overview

  • public static clang::UsingDirectiveDecl * Create(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation UsingLoc, clang::SourceLocation NamespaceLoc, clang::NestedNameSpecifierLoc QualifierLoc, clang::SourceLocation IdentLoc, clang::NamedDecl * Nominated, clang::DeclContext * CommonAncestor)
  • public static clang::UsingDirectiveDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
  • private UsingDirectiveDecl(clang::DeclContext * DC, clang::SourceLocation UsingLoc, clang::SourceLocation NamespcLoc, clang::NestedNameSpecifierLoc QualifierLoc, clang::SourceLocation IdentLoc, clang::NamedDecl * Nominated, clang::DeclContext * CommonAncestor)
  • private void anchor()
  • public static bool classof(const clang::Decl * D)
  • public static bool classofKind(clang::Decl::Kind K)
  • public clang::DeclContext * getCommonAncestor()
  • public const clang::DeclContext * getCommonAncestor() const
  • public clang::SourceLocation getIdentLocation() const
  • private static clang::DeclarationName getName()
  • public clang::SourceLocation getNamespaceKeyLocation() const
  • public const clang::NamespaceDecl * getNominatedNamespace() const
  • public clang::NamespaceDecl * getNominatedNamespace()
  • public const clang::NamedDecl * getNominatedNamespaceAsWritten() const
  • public clang::NamedDecl * getNominatedNamespaceAsWritten()
  • public clang::NestedNameSpecifier * getQualifier() const
  • public clang::NestedNameSpecifierLoc getQualifierLoc() const
  • public clang::SourceRange getSourceRange() const
  • public clang::SourceLocation getUsingLoc() const

Inherited from NamedDecl:

Inherited from Decl:

Methods

static clang::UsingDirectiveDecl* Create(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::SourceLocation UsingLoc,
    clang::SourceLocation NamespaceLoc,
    clang::NestedNameSpecifierLoc QualifierLoc,
    clang::SourceLocation IdentLoc,
    clang::NamedDecl* Nominated,
    clang::DeclContext* CommonAncestor)

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

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::SourceLocation UsingLoc
clang::SourceLocation NamespaceLoc
clang::NestedNameSpecifierLoc QualifierLoc
clang::SourceLocation IdentLoc
clang::NamedDecl* Nominated
clang::DeclContext* CommonAncestor

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

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

Parameters

clang::ASTContext& C
unsigned int ID

UsingDirectiveDecl(
    clang::DeclContext* DC,
    clang::SourceLocation UsingLoc,
    clang::SourceLocation NamespcLoc,
    clang::NestedNameSpecifierLoc QualifierLoc,
    clang::SourceLocation IdentLoc,
    clang::NamedDecl* Nominated,
    clang::DeclContext* CommonAncestor)

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

Parameters

clang::DeclContext* DC
clang::SourceLocation UsingLoc
clang::SourceLocation NamespcLoc
clang::NestedNameSpecifierLoc QualifierLoc
clang::SourceLocation IdentLoc
clang::NamedDecl* Nominated
clang::DeclContext* CommonAncestor

void anchor()

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

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

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

Parameters

const clang::Decl* D

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

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

Parameters

clang::Decl::Kind K

clang::DeclContext* getCommonAncestor()

Description

Returns the common ancestor context of this using-directive and its nominated namespace.

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

const clang::DeclContext* getCommonAncestor()
    const

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

clang::SourceLocation getIdentLocation() const

Description

Returns the location of this using declaration's identifier.

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

static clang::DeclarationName getName()

Description

Returns special DeclarationName used by using-directives. This is only used by DeclContext for storing UsingDirectiveDecls in its lookup structure.

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

clang::SourceLocation getNamespaceKeyLocation()
    const

Description

Returns the location of the \c namespace keyword.

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

const clang::NamespaceDecl*
getNominatedNamespace() const

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

clang::NamespaceDecl* getNominatedNamespace()

Description

Returns the namespace nominated by this using-directive.

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

const clang::NamedDecl*
getNominatedNamespaceAsWritten() const

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

clang::NamedDecl* getNominatedNamespaceAsWritten()

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

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:2964

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:2960

clang::SourceRange getSourceRange() const

Description

Source range that this declaration covers.

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

clang::SourceLocation getUsingLoc() const

Description

Return the location of the \c using keyword.

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