A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://clang.llvm.org/doxygen/classclang_1_1OverloadCandidateSet.html below:

clang: clang::OverloadCandidateSet Class Reference

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

#include "clang/Sema/Overload.h"

struct   OperatorRewriteInfo   Information about operator rewrites to consider when adding operator functions to a candidate set. More...
    OverloadCandidateSet (SourceLocation Loc, CandidateSetKind CSK, OperatorRewriteInfo RewriteInfo={})     OverloadCandidateSet (const OverloadCandidateSet &)=delete   OverloadCandidateSetoperator= (const OverloadCandidateSet &)=delete     ~OverloadCandidateSet ()   SourceLocation  getLocation () const   CandidateSetKind  getKind () const   OperatorRewriteInfo  getRewriteInfo () const   bool  shouldDeferDiags (Sema &S, ArrayRef< Expr * > Args, SourceLocation OpLoc)   Whether diagnostics should be deferred.
  bool  isNewCandidate (Decl *F, OverloadCandidateParamOrder PO=OverloadCandidateParamOrder::Normal)   Determine when this overload candidate will be new to the overload set.
  void  exclude (Decl *F)   Exclude a function from being considered by overload resolution.
  void  clear (CandidateSetKind CSK)   Clear out all of the candidates.
  iterator  begin ()   iterator  end ()   size_t  size () const   bool  empty () const   ConversionSequenceList  allocateConversionSequences (unsigned NumConversions)   Allocate storage for conversion sequences for NumConversions conversions.
  OverloadCandidateaddCandidate (unsigned NumConversions=0, ConversionSequenceList Conversions={})   Add a new candidate with NumConversions conversion sequence slots to the overload set.
  OverloadingResult  BestViableFunction (Sema &S, SourceLocation Loc, OverloadCandidateSet::iterator &Best)   Find the best viable function on this overload set, if it exists.
  SmallVector< OverloadCandidate *, 32 >  CompleteCandidates (Sema &S, OverloadCandidateDisplayKind OCD, ArrayRef< Expr * > Args, SourceLocation OpLoc=SourceLocation(), llvm::function_ref< bool(OverloadCandidate &)> Filter=[](OverloadCandidate &) { return true;})   void  NoteCandidates (PartialDiagnosticAt PA, Sema &S, OverloadCandidateDisplayKind OCD, ArrayRef< Expr * > Args, StringRef Opc="", SourceLocation Loc=SourceLocation(), llvm::function_ref< bool(OverloadCandidate &)> Filter=[](OverloadCandidate &) { return true;})   When overload resolution fails, prints diagnostic messages containing the candidates in the candidate set.
  void  NoteCandidates (Sema &S, ArrayRef< Expr * > Args, ArrayRef< OverloadCandidate * > Cands, StringRef Opc="", SourceLocation OpLoc=SourceLocation())   LangAS  getDestAS ()   void  setDestAS (LangAS AS)  

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

Definition at line 1021 of file Overload.h.

◆ iterator ◆ CandidateSetKind Enumerator CSK_Normal 

Normal lookup.

CSK_Operator 

C++ [over.match.oper]: Lookup of operator function candidates in 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.

CSK_InitByUserDefinedConversion 

C++ [over.match.copy]: Copy-initialization of an object of class type by user-defined conversion.

CSK_InitByConstructor 

C++ [over.match.ctor], [over.match.list] Initialization of an object of class type by constructor, using either a parenthesized or braced list of arguments.

CSK_AddressOfOverloadSet 

C++ [over.match.call.general] Resolve a call through the address of an overload set.

Definition at line 1023 of file Overload.h.

◆ OverloadCandidateSet() [1/2] ◆ OverloadCandidateSet() [2/2] ◆ ~OverloadCandidateSet() clang::OverloadCandidateSet::~OverloadCandidateSet ( ) inline

Definition at line 1171 of file Overload.h.

◆ addCandidate() ◆ allocateConversionSequences() ◆ begin() iterator clang::OverloadCandidateSet::begin ( ) inline ◆ BestViableFunction()

Find the best viable function on this overload set, if it exists.

Computes the best viable function (C++ 13.3.3) within an overload candidate set.

Parameters
Loc The location of the function name (or operator symbol) for which overload resolution occurs. Best If overload resolution was successful or found a deleted function, Best points to the candidate function found.
Returns
The result of overload resolution.

Definition at line 10861 of file SemaOverload.cpp.

References begin(), clang::OverloadCandidate::Best, clang::SemaCUDA::CFP_SameSide, clang::SemaCUDA::CFP_WrongSide, CSK_AddressOfOverloadSet, clang::Sema::CUDA(), clang::Sema::diagnoseEquivalentInternalLinkageDeclarations(), end(), clang::OverloadCandidate::Function, clang::Sema::getCurFunctionDecl(), clang::Sema::getLangOpts(), clang::SemaCUDA::IdentifyPreference(), clang::isBetterOverloadCandidate(), clang::Sema::isEquivalentInternalLinkageDeclaration(), Loc, clang::OverloadCandidate::NotValidBecauseConstraintExprHasError(), clang::OR_Ambiguous, clang::OR_Deleted, clang::OR_No_Viable_Function, clang::OR_Success, and clang::OverloadCandidate::Viable.

Referenced by clang::Sema::ActOnExplicitInstantiation(), clang::Sema::BuildCallToMemberFunction(), clang::Sema::BuildCallToObjectOfClassType(), clang::Sema::BuildForRangeBeginEndCall(), clang::Sema::BuildLiteralOperatorCall(), clang::Sema::BuildOverloadedArrowExpr(), clang::Sema::BuildOverloadedCallExpr(), clang::Sema::buildOverloadedCallSet(), ComputeSelectedDestructor(), clang::Sema::CreateOverloadedArraySubscriptExpr(), clang::Sema::CreateOverloadedBinOp(), clang::Sema::CreateOverloadedUnaryOp(), clang::Sema::DeduceTemplateSpecializationFromInitializer(), clang::InitializationSequence::Diagnose(), clang::Sema::DiagnoseEmptyLookup(), DiagnoseTwoPhaseLookup(), FindConditionalOverload(), FindConversionForRefInit(), clang::InitializationSequence::InitializeFrom(), IsInitializerListConstructorConversion(), IsUserDefinedConversion(), clang::Sema::LookupSpecialMember(), clang::Sema::PerformContextualImplicitConversion(), resolveAllocationOverload(), resolveBuiltinNewDeleteOverload(), ResolveConstructorOverload(), tryDiagnoseOverloadedCast(), TryRefInitWithConversionFunction(), TryTypoCorrectionForCall(), and TryUserDefinedConversion().

◆ clear() ◆ CompleteCandidates()

Definition at line 12655 of file SemaOverload.cpp.

References begin(), CompleteNonViableCandidate(), end(), clang::OCD_AllCandidates, clang::OCD_AmbiguousCandidates, clang::OCD_ViableCandidates, and size().

Referenced by clang::Sema::BuildOverloadedArrowExpr(), clang::Sema::CreateOverloadedBinOp(), clang::InitializationSequence::Diagnose(), clang::Sema::DiagnoseMultipleUserDefinedConversion(), NoteCandidates(), resolveAllocationOverload(), and shouldDeferDiags().

◆ empty() bool clang::OverloadCandidateSet::empty ( ) const inline

Definition at line 1204 of file Overload.h.

Referenced by clang::Sema::ActOnExplicitInstantiation(), clang::Sema::BuildCallToObjectOfClassType(), clang::Sema::BuildForRangeBeginEndCall(), clang::Sema::BuildOverloadedArrowExpr(), clang::Sema::buildOverloadedCallSet(), ComputeSelectedDestructor(), clang::Sema::CreateOverloadedArraySubscriptExpr(), clang::Sema::DiagnoseMultipleUserDefinedConversion(), FinishOverloadedCallExpr(), clang::SemaCodeCompletion::ProduceCallSignatureHelp(), tryDiagnoseOverloadedCast(), and TryReferenceInitializationCore().

◆ end() iterator clang::OverloadCandidateSet::end ( ) inline

Definition at line 1201 of file Overload.h.

Referenced by clang::Sema::AddArgumentDependentLookupCandidates(), BestViableFunction(), clang::Sema::BuildCallToObjectOfClassType(), chooseRecoveryType(), CompleteCandidates(), DiagnoseTwoPhaseLookup(), FindConversionForRefInit(), FinishOverloadedCallExpr(), markUnaddressableCandidatesUnviable(), NoteCandidates(), clang::TemplateSpecCandidateSet::NoteCandidates(), and TryUserDefinedConversion().

◆ exclude() void clang::OverloadCandidateSet::exclude ( DeclF ) inline ◆ getDestAS() LangAS clang::OverloadCandidateSet::getDestAS ( ) inline ◆ getKind() ◆ getLocation() ◆ getRewriteInfo() ◆ isNewCandidate() ◆ NoteCandidates() [1/2]

When overload resolution fails, prints diagnostic messages containing the candidates in the candidate set.

Definition at line 12719 of file SemaOverload.cpp.

References begin(), CompleteCandidates(), clang::SemaBase::Diag(), end(), MaybeDiagnoseAmbiguousConstraints(), NoteCandidates(), clang::OCD_AmbiguousCandidates, and shouldDeferDiags().

Referenced by clang::Sema::ActOnExplicitInstantiation(), clang::Sema::BuildCallToMemberFunction(), clang::Sema::BuildCallToObjectOfClassType(), clang::Sema::BuildCXXForRangeStmt(), clang::Sema::BuildLiteralOperatorCall(), BuildNonArrayForRange(), clang::Sema::BuildOverloadedArrowExpr(), CheckCXX98CompatAccessibleCopy(), ComputeSelectedDestructor(), CopyObject(), clang::Sema::CreateOverloadedArraySubscriptExpr(), clang::Sema::CreateOverloadedBinOp(), clang::Sema::CreateOverloadedUnaryOp(), clang::Sema::DeduceTemplateSpecializationFromInitializer(), clang::InitializationSequence::Diagnose(), clang::Sema::DiagnoseMultipleUserDefinedConversion(), clang::Sema::DiagnoseUseOfDeletedFunction(), FinishOverloadedCallExpr(), NoteCandidates(), resolveAllocationOverload(), resolveBuiltinNewDeleteOverload(), and tryDiagnoseOverloadedCast().

◆ NoteCandidates() [2/2]

Definition at line 12743 of file SemaOverload.cpp.

References clang::SemaBase::Diag(), clang::Sema::Diags, E, clang::OverloadCandidate::Function, clang::DiagnosticsEngine::getNumOverloadCandidatesToShow(), clang::DiagnosticsEngine::getShowOverloads(), int, clang::OverloadCandidate::IsSurrogate, NoteAmbiguousUserConversions(), NoteBuiltinOperatorCandidate(), NoteFunctionCandidate(), NoteSurrogateCandidate(), clang::DiagnosticsEngine::overloadCandidatesShown(), clang::Ovl_Best, shouldDeferDiags(), and clang::OverloadCandidate::Viable.

◆ operator=() ◆ setDestAS() void clang::OverloadCandidateSet::setDestAS ( LangAS  AS ) inline ◆ shouldDeferDiags() ◆ size() size_t clang::OverloadCandidateSet::size ( ) const inline

Definition at line 1203 of file Overload.h.

Referenced by clang::Sema::BuildCallToMemberFunction(), clang::Sema::BuildCallToObjectOfClassType(), clang::Sema::BuildLiteralOperatorCall(), clang::Sema::BuildOverloadedArrowExpr(), CompleteCandidates(), CopyObject(), clang::Sema::CreateOverloadedArraySubscriptExpr(), clang::Sema::CreateOverloadedBinOp(), clang::Sema::CreateOverloadedUnaryOp(), FindConversionForRefInit(), IsInitializerListConstructorConversion(), IsUserDefinedConversion(), clang::TemplateSpecCandidateSet::NoteCandidates(), TryConstructorInitialization(), TryRefInitWithConversionFunction(), and TryUserDefinedConversion().

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


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4