Quick Links:

bal | bbl | bdl | bsl

Public Types

bdlf::Bind_ImplSelector< RET, FUNC, LIST > Struct Template Reference

#include <bdlf_bind.h>

List of all members.

Public Types

enum  { k_IS_EXPLICIT }
typedef bsl::conditional
< k_IS_EXPLICIT,
Bind_ImplExplicit< RET, FUNC,
LIST >, Bind_Impl< RET, FUNC,
LIST > >::type 
Type

Detailed Description

template<class RET, class FUNC, class LIST>
struct bdlf::Bind_ImplSelector< RET, FUNC, LIST >

This utility is used to select the best bind implementation for the given function and invocation template. Bind_ImplExplicit is selected if the binder is explicit, else Bind_Impl is selected. A binder is explicit when:

  1. The function signature can be determined completely (return and argument types, e.g., free or member function pointers).
  2. There are no duplicate references to the same placeholder nor any nested Bind objects in the bound arguments.
  3. There are no ellipsis argument in the signature of the function.

See Component bdlf_bind


Member Typedef Documentation

template<class RET, class FUNC, class LIST>
typedef bsl::conditional<k_IS_EXPLICIT, Bind_ImplExplicit<RET,FUNC,LIST>, Bind_Impl<RET,FUNC,LIST> >::type bdlf::Bind_ImplSelector< RET, FUNC, LIST >::Type

Member Enumeration Documentation

template<class RET, class FUNC, class LIST>
anonymous enum
Enumerator:
k_IS_EXPLICIT 

The documentation for this struct was generated from the following file: