class OverloadExpr

Declaration

class OverloadExpr : public Expr { /* full declaration omitted */ };

Description

A reference to an overloaded function set, either an\c UnresolvedLookupExpr or an \c UnresolvedMemberExpr.

Declared at: clang/include/clang/AST/ExprCXX.h:2897

Inherits from: Expr

Member Variables

private clang::DeclarationNameInfo NameInfo
The common name of these declarations.
private clang::NestedNameSpecifierLoc QualifierLoc
The nested-name-specifier that qualifies the name, if any.

Inherited from Stmt:

protected

Method Overview

Inherited from Expr:

Inherited from ValueStmt:

Inherited from Stmt:

Methods

OverloadExpr(clang::Stmt::StmtClass SC,
             clang::Stmt::EmptyShell Empty,
             unsigned int NumResults,
             bool HasTemplateKWAndArgsInfo)

Declared at: clang/include/clang/AST/ExprCXX.h:2917

Parameters

clang::Stmt::StmtClass SC
clang::Stmt::EmptyShell Empty
unsigned int NumResults
bool HasTemplateKWAndArgsInfo

OverloadExpr(
    clang::Stmt::StmtClass SC,
    const clang::ASTContext& Context,
    clang::NestedNameSpecifierLoc QualifierLoc,
    clang::SourceLocation TemplateKWLoc,
    const clang::DeclarationNameInfo& NameInfo,
    const clang::TemplateArgumentListInfo*
        TemplateArgs,
    clang::UnresolvedSetIterator Begin,
    clang::UnresolvedSetIterator End,
    bool KnownDependent,
    bool KnownInstantiationDependent,
    bool KnownContainsUnexpandedParameterPack)

Declared at: clang/include/clang/AST/ExprCXX.h:2908

Parameters

clang::Stmt::StmtClass SC
const clang::ASTContext& Context
clang::NestedNameSpecifierLoc QualifierLoc
clang::SourceLocation TemplateKWLoc
const clang::DeclarationNameInfo& NameInfo
const clang::TemplateArgumentListInfo* TemplateArgs
clang::UnresolvedSetIterator Begin
clang::UnresolvedSetIterator End
bool KnownDependent
bool KnownInstantiationDependent
bool KnownContainsUnexpandedParameterPack

static bool classof(const clang::Stmt* T)

Declared at: clang/include/clang/AST/ExprCXX.h:3073

Parameters

const clang::Stmt* T

void copyTemplateArgumentsInto(
    clang::TemplateArgumentListInfo& List) const

Description

Copies the template arguments into the given structure.

Declared at: clang/include/clang/AST/ExprCXX.h:3068

Parameters

clang::TemplateArgumentListInfo& List

llvm::iterator_range<decls_iterator> decls() const

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

clang::OverloadExpr::decls_iterator decls_begin()
    const

Declared at: clang/include/clang/AST/ExprCXX.h:2989

clang::OverloadExpr::decls_iterator decls_end()
    const

Declared at: clang/include/clang/AST/ExprCXX.h:2992

static clang::OverloadExpr::FindResult find(
    clang::Expr* E)

Description

Finds the overloaded expression in the given expression \p E of OverloadTy.

Declared at: clang/include/clang/AST/ExprCXX.h:2957

Parameters

clang::Expr* E

Returns

the expression (which must be there) and true if it has the particular form of a member pointer expression

clang::SourceLocation getLAngleLoc() const

Description

Retrieve the location of the left angle bracket starting the explicit template argument list following the name, if any.

Declared at: clang/include/clang/AST/ExprCXX.h:3030

clang::DeclarationName getName() const

Description

Gets the name looked up.

Declared at: clang/include/clang/AST/ExprCXX.h:3006

const clang::DeclarationNameInfo& getNameInfo()
    const

Description

Gets the full name info.

Declared at: clang/include/clang/AST/ExprCXX.h:3003

clang::SourceLocation getNameLoc() const

Description

Gets the location of the name.

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

inline clang::CXXRecordDecl* getNamingClass()

Description

Gets the naming class of this lookup, if any. Defined after UnresolvedMemberExpr.

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

const clang::CXXRecordDecl* getNamingClass() const

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

unsigned int getNumDecls() const

Description

Gets the number of declarations in the unresolved set.

Declared at: clang/include/clang/AST/ExprCXX.h:3000

unsigned int getNumTemplateArgs() const

Declared at: clang/include/clang/AST/ExprCXX.h:3056

clang::NestedNameSpecifier* getQualifier() const

Description

Fetches the nested-name qualifier, if one was given.

Declared at: clang/include/clang/AST/ExprCXX.h:3012

clang::NestedNameSpecifierLoc getQualifierLoc()
    const

Description

Fetches the nested-name qualifier with source-location information, if one was given.

Declared at: clang/include/clang/AST/ExprCXX.h:3018

clang::SourceLocation getRAngleLoc() const

Description

Retrieve the location of the right angle bracket ending the explicit template argument list following the name, if any.

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

const clang::TemplateArgumentLoc*
getTemplateArgs() const

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

clang::SourceLocation getTemplateKeywordLoc()
    const

Description

Retrieve the location of the template keyword preceding this name, if any.

Declared at: clang/include/clang/AST/ExprCXX.h:3022

inline clang::ASTTemplateKWAndArgsInfo*
getTrailingASTTemplateKWAndArgsInfo()

Description

Return the optional template keyword and arguments info. Defined after UnresolvedMemberExpr.

Declared at: clang/include/clang/AST/ExprCXX.h:2928

const clang::ASTTemplateKWAndArgsInfo*
getTrailingASTTemplateKWAndArgsInfo() const

Declared at: clang/include/clang/AST/ExprCXX.h:2929

const clang::DeclAccessPair* getTrailingResults()
    const

Declared at: clang/include/clang/AST/ExprCXX.h:2922

inline clang::DeclAccessPair* getTrailingResults()

Description

Return the results. Defined after UnresolvedMemberExpr.

Declared at: clang/include/clang/AST/ExprCXX.h:2921

const clang::TemplateArgumentLoc*
getTrailingTemplateArgumentLoc() const

Declared at: clang/include/clang/AST/ExprCXX.h:2937

inline clang::TemplateArgumentLoc*
getTrailingTemplateArgumentLoc()

Description

Return the optional template arguments. Defined after UnresolvedMemberExpr.

Declared at: clang/include/clang/AST/ExprCXX.h:2936

bool hasExplicitTemplateArgs() const

Description

Determines whether this expression had explicit template arguments.

Declared at: clang/include/clang/AST/ExprCXX.h:3048

bool hasTemplateKWAndArgsInfo() const

Declared at: clang/include/clang/AST/ExprCXX.h:2941

bool hasTemplateKeyword() const

Description

Determines whether the name was preceded by the template keyword.

Declared at: clang/include/clang/AST/ExprCXX.h:3045

ArrayRef<clang::TemplateArgumentLoc>
template_arguments() const

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