|
clang
5.0.0
|
TemplateSpecCandidateSet - A set of generalized overload candidates, used in template specializations. More...
#include "clang/Sema/TemplateDeduction.h"
Public Types | |
| typedef SmallVector < TemplateSpecCandidate, 16 > ::iterator | iterator |
Public Member Functions | |
| TemplateSpecCandidateSet (SourceLocation Loc, bool ForTakingAddress=false) | |
| ~TemplateSpecCandidateSet () | |
| SourceLocation | getLocation () const |
| void | clear () |
| Clear out all of the candidates. More... | |
| iterator | begin () |
| iterator | end () |
| size_t | size () const |
| bool | empty () const |
| TemplateSpecCandidate & | addCandidate () |
| Add a new candidate with NumConversions conversion sequence slots to the overload set. More... | |
| void | NoteCandidates (Sema &S, SourceLocation Loc) |
| NoteCandidates - When no template specialization match is found, prints diagnostic messages containing the non-matching specializations that form the candidate set. More... | |
| void | NoteCandidates (Sema &S, SourceLocation Loc) const |
TemplateSpecCandidateSet - A set of generalized overload candidates, used in template specializations.
TODO: In the future, we may need to unify/generalize this with OverloadCandidateSet.
Definition at line 276 of file TemplateDeduction.h.
Definition at line 301 of file TemplateDeduction.h.
|
inline |
Definition at line 291 of file TemplateDeduction.h.
|
inline |
Definition at line 293 of file TemplateDeduction.h.
|
inline |
Add a new candidate with NumConversions conversion sequence slots to the overload set.
Definition at line 310 of file TemplateDeduction.h.
Referenced by clang::Sema::CheckVarTemplateId(), and getPatternForClassTemplateSpecialization().
|
inline |
Definition at line 302 of file TemplateDeduction.h.
Referenced by NoteCandidates().
| void TemplateSpecCandidateSet::clear | ( | ) |
Clear out all of the candidates.
TODO: This may be unnecessary.
Definition at line 10550 of file SemaOverload.cpp.
|
inline |
Definition at line 306 of file TemplateDeduction.h.
|
inline |
Definition at line 303 of file TemplateDeduction.h.
Referenced by NoteCandidates().
|
inline |
Definition at line 295 of file TemplateDeduction.h.
Referenced by clang::Sema::CheckVarTemplateId(), and getPatternForClassTemplateSpecialization().
| void TemplateSpecCandidateSet::NoteCandidates | ( | Sema & | S, |
| SourceLocation | Loc | ||
| ) |
NoteCandidates - When no template specialization match is found, prints diagnostic messages containing the non-matching specializations that form the candidate set.
This is analoguous to OverloadCandidateSet::NoteCandidates() with OCD == OCD_AllCandidates and Cand->Viable == false.
Definition at line 10560 of file SemaOverload.cpp.
References begin(), clang::Sema::Diag(), clang::Sema::Diags, E, end(), clang::DiagnosticsEngine::getShowOverloads(), I, clang::TemplateSpecCandidate::NoteDeductionFailure(), clang::Ovl_Best, size(), and clang::TemplateSpecCandidate::Specialization.
Referenced by clang::Sema::getMostSpecialized(), and NoteCandidates().
|
inline |
Definition at line 317 of file TemplateDeduction.h.
References NoteCandidates().
|
inline |
Definition at line 305 of file TemplateDeduction.h.
Referenced by NoteCandidates().
1.8.6