clang API Documentation
A reference to a name which we were able to look up during parsing but could not resolve to a specific declaration. More...
#include <ExprCXX.h>
A reference to a name which we were able to look up during parsing but could not resolve to a specific declaration.
This arises in several ways: we might be waiting for argument-dependent lookup; the name might resolve to an overloaded function; and eventually: the lookup might have included a function template.
These never include UnresolvedUsingValueDecls, which are always class members and therefore appear only in UnresolvedMemberLookupExprs.
child_range clang::UnresolvedLookupExpr::children | ( | ) | [inline] |
Reimplemented from clang::Stmt.
static bool clang::UnresolvedLookupExpr::classof | ( | const Stmt * | T | ) | [inline, static] |
Reimplemented from clang::OverloadExpr.
Definition at line 2577 of file ExprCXX.h.
References clang::Stmt::getStmtClass().
static UnresolvedLookupExpr* clang::UnresolvedLookupExpr::Create | ( | const ASTContext & | C, |
CXXRecordDecl * | NamingClass, | ||
NestedNameSpecifierLoc | QualifierLoc, | ||
const DeclarationNameInfo & | NameInfo, | ||
bool | ADL, | ||
bool | Overloaded, | ||
UnresolvedSetIterator | Begin, | ||
UnresolvedSetIterator | End | ||
) | [inline, static] |
Definition at line 2526 of file ExprCXX.h.
References AttributeLangSupport::C.
Referenced by clang::Sema::BuildDeclarationNameExpr(), clang::Sema::BuildForRangeBeginEndCall(), clang::Sema::BuildTemplateIdExpr(), clang::Sema::CreateOverloadedArraySubscriptExpr(), clang::Sema::CreateOverloadedBinOp(), and clang::Sema::CreateOverloadedUnaryOp().
UnresolvedLookupExpr * UnresolvedLookupExpr::Create | ( | const ASTContext & | C, |
CXXRecordDecl * | NamingClass, | ||
NestedNameSpecifierLoc | QualifierLoc, | ||
SourceLocation | TemplateKWLoc, | ||
const DeclarationNameInfo & | NameInfo, | ||
bool | ADL, | ||
const TemplateArgumentListInfo * | Args, | ||
UnresolvedSetIterator | Begin, | ||
UnresolvedSetIterator | End | ||
) | [static] |
Definition at line 288 of file ExprCXX.cpp.
References clang::ASTContext::Allocate(), clang::SourceLocation::isValid(), clang::TemplateArgumentListInfo::size(), and clang::ASTTemplateKWAndArgsInfo::sizeFor().
UnresolvedLookupExpr * UnresolvedLookupExpr::CreateEmpty | ( | const ASTContext & | C, |
bool | HasTemplateKWAndArgsInfo, | ||
unsigned | NumTemplateArgs | ||
) | [static] |
Definition at line 309 of file ExprCXX.cpp.
References clang::ASTContext::Allocate(), clang::OverloadExpr::HasTemplateKWAndArgsInfo, and clang::ASTTemplateKWAndArgsInfo::sizeFor().
SourceLocation clang::UnresolvedLookupExpr::getLocEnd | ( | ) | const [inline] |
Reimplemented from clang::Stmt.
Definition at line 2569 of file ExprCXX.h.
References clang::DeclarationNameInfo::getLocEnd(), clang::OverloadExpr::getNameInfo(), clang::OverloadExpr::getRAngleLoc(), and clang::OverloadExpr::hasExplicitTemplateArgs().
SourceLocation clang::UnresolvedLookupExpr::getLocStart | ( | ) | const [inline] |
Reimplemented from clang::Stmt.
Definition at line 2564 of file ExprCXX.h.
References clang::DeclarationNameInfo::getLocStart(), clang::OverloadExpr::getNameInfo(), and clang::OverloadExpr::getQualifierLoc().
Referenced by clang::Sema::BuildForRangeBeginEndCall().
CXXRecordDecl* clang::UnresolvedLookupExpr::getNamingClass | ( | ) | const [inline] |
Gets the 'naming class' (in the sense of C++0x [class.access.base]p5) of the lookup. This is the scope that was looked in to find these results.
Reimplemented from clang::OverloadExpr.
Definition at line 2562 of file ExprCXX.h.
Referenced by clang::Sema::CheckUnresolvedLookupAccess().
bool clang::UnresolvedLookupExpr::isOverloaded | ( | ) | const [inline] |
bool clang::UnresolvedLookupExpr::requiresADL | ( | ) | const [inline] |
True if this declaration should be extended by argument-dependent lookup.
Definition at line 2554 of file ExprCXX.h.
Referenced by clang::Sema::AddOverloadedCallCandidates(), clang::Sema::buildOverloadedCallSet(), and isParenthesizedADLCallee().
friend class ASTStmtReader [friend] |
Reimplemented from clang::OverloadExpr.