class UnresolvedUsingValueDecl

Declaration

class UnresolvedUsingValueDecl : public ValueDecl, public Mergeable { /* full declaration omitted */ };

Description

Represents a dependent using declaration which was not marked with\c typename. Unlike non-dependent using declarations, these *only* bring through non-types; otherwise they would break two-phase lookup.

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

Inherits from: ValueDecl, Mergeable

Member Variables

private clang::SourceLocation UsingLocation
The source location of the 'using' keyword
private clang::SourceLocation EllipsisLoc
If this is a pack expansion, the location of the '...'.
private clang::NestedNameSpecifierLoc QualifierLoc
The nested-name-specifier that precedes the name.
private clang::DeclarationNameLoc DNLoc
Provides source/type location info for the declaration name embedded in the ValueDecl base class.

Inherited from Decl:

protected NextInContextAndBits
protected Access
protected FromASTFile
protected IdentifierNamespace
protected CacheValidAndLinkage

Method Overview

  • public static clang::UnresolvedUsingValueDecl * Create(clang::ASTContext & C, clang::DeclContext * DC, clang::SourceLocation UsingLoc, clang::NestedNameSpecifierLoc QualifierLoc, const clang::DeclarationNameInfo & NameInfo, clang::SourceLocation EllipsisLoc)
  • public static clang::UnresolvedUsingValueDecl * CreateDeserialized(clang::ASTContext & C, unsigned int ID)
  • private UnresolvedUsingValueDecl(clang::DeclContext * DC, clang::QualType Ty, clang::SourceLocation UsingLoc, clang::NestedNameSpecifierLoc QualifierLoc, const clang::DeclarationNameInfo & NameInfo, clang::SourceLocation EllipsisLoc)
  • private void anchor()
  • public static bool classof(const clang::Decl * D)
  • public static bool classofKind(clang::Decl::Kind K)
  • public clang::UnresolvedUsingValueDecl * getCanonicalDecl()
  • public const clang::UnresolvedUsingValueDecl * getCanonicalDecl() const
  • public clang::SourceLocation getEllipsisLoc() const
  • public clang::DeclarationNameInfo getNameInfo() const
  • public clang::NestedNameSpecifier * getQualifier() const
  • public clang::NestedNameSpecifierLoc getQualifierLoc() const
  • public clang::SourceRange getSourceRange() const
  • public clang::SourceLocation getUsingLoc() const
  • public bool isAccessDeclaration() const
  • public bool isPackExpansion() const
  • public void setUsingLoc(clang::SourceLocation L)

Inherited from ValueDecl:

Inherited from NamedDecl:

Inherited from Decl:

Methods

static clang::UnresolvedUsingValueDecl* Create(
    clang::ASTContext& C,
    clang::DeclContext* DC,
    clang::SourceLocation UsingLoc,
    clang::NestedNameSpecifierLoc QualifierLoc,
    const clang::DeclarationNameInfo& NameInfo,
    clang::SourceLocation EllipsisLoc)

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

Parameters

clang::ASTContext& C
clang::DeclContext* DC
clang::SourceLocation UsingLoc
clang::NestedNameSpecifierLoc QualifierLoc
const clang::DeclarationNameInfo& NameInfo
clang::SourceLocation EllipsisLoc

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

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

Parameters

clang::ASTContext& C
unsigned int ID

UnresolvedUsingValueDecl(
    clang::DeclContext* DC,
    clang::QualType Ty,
    clang::SourceLocation UsingLoc,
    clang::NestedNameSpecifierLoc QualifierLoc,
    const clang::DeclarationNameInfo& NameInfo,
    clang::SourceLocation EllipsisLoc)

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

Parameters

clang::DeclContext* DC
clang::QualType Ty
clang::SourceLocation UsingLoc
clang::NestedNameSpecifierLoc QualifierLoc
const clang::DeclarationNameInfo& NameInfo
clang::SourceLocation EllipsisLoc

void anchor()

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

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

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

Parameters

const clang::Decl* D

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

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

Parameters

clang::Decl::Kind K

clang::UnresolvedUsingValueDecl*
getCanonicalDecl()

Description

Retrieves the canonical declaration of this declaration.

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

const clang::UnresolvedUsingValueDecl*
getCanonicalDecl() const

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

clang::SourceLocation getEllipsisLoc() const

Description

Get the location of the ellipsis if this is a pack expansion.

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

clang::DeclarationNameInfo getNameInfo() const

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

clang::NestedNameSpecifier* getQualifier() const

Description

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

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

clang::NestedNameSpecifierLoc getQualifierLoc()
    const

Description

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

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

clang::SourceRange getSourceRange() const

Description

Source range that this declaration covers.

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

clang::SourceLocation getUsingLoc() const

Description

Returns the source location of the 'using' keyword.

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

bool isAccessDeclaration() const

Description

Return true if it is a C++03 access declaration (no 'using').

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

bool isPackExpansion() const

Description

Determine whether this is a pack expansion.

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

void setUsingLoc(clang::SourceLocation L)

Description

Set the source location of the 'using' keyword.

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

Parameters

clang::SourceLocation L