clang API Documentation

Public Types | Public Member Functions
clang::OverloadCandidateSet Class Reference

#include <Overload.h>

List of all members.

Public Types

enum  CandidateSetKind { CSK_Normal, CSK_Operator }
typedef SmallVectorImpl
< OverloadCandidate >
::iterator 
iterator

Public Member Functions

 OverloadCandidateSet (SourceLocation Loc, CandidateSetKind CSK)
 ~OverloadCandidateSet ()
SourceLocation getLocation () const
CandidateSetKind getKind () const
bool isNewCandidate (Decl *F)
 Determine when this overload candidate will be new to the overload set.
void clear ()
 Clear out all of the candidates.
iterator begin ()
iterator end ()
size_t size () const
bool empty () const
OverloadCandidateaddCandidate (unsigned NumConversions=0)
 Add a new candidate with NumConversions conversion sequence slots to the overload set.
OverloadingResult BestViableFunction (Sema &S, SourceLocation Loc, OverloadCandidateSet::iterator &Best, bool UserDefinedConversion=false)
 Find the best viable function on this overload set, if it exists.
void NoteCandidates (Sema &S, OverloadCandidateDisplayKind OCD, ArrayRef< Expr * > Args, StringRef Opc="", SourceLocation Loc=SourceLocation())

Detailed Description

OverloadCandidateSet - A set of overload candidates, used in C++ overload resolution (C++ 13.3).

Definition at line 683 of file Overload.h.


Member Typedef Documentation

Definition at line 732 of file Overload.h.


Member Enumeration Documentation

Enumerator:
CSK_Normal 

Normal lookup.

CSK_Operator 

Lookup for candidates for a call using operator syntax. Candidates that have no parameters of class type will be skipped unless there is a parameter of (reference to) enum type and the corresponding argument is of the same enum type.

Definition at line 685 of file Overload.h.


Constructor & Destructor Documentation

clang::OverloadCandidateSet::OverloadCandidateSet ( SourceLocation  Loc,
CandidateSetKind  CSK 
) [inline]

Definition at line 716 of file Overload.h.

Definition at line 718 of file Overload.h.


Member Function Documentation

Definition at line 721 of file Overload.h.

Referenced by clang::Sema::AddOverloadCandidate().

void OverloadCandidateSet::NoteCandidates ( Sema S,
OverloadCandidateDisplayKind  OCD,
ArrayRef< Expr * >  Args,
StringRef  Opc = "",
SourceLocation  OpLoc = SourceLocation() 
)

The documentation for this class was generated from the following files: