BDE 4.14.0 Production release
|
#include <bdlf_bind.h>
Public Types | |
typedef Traits::ResultType | ResultType |
The return type of this binder object. | |
Public Member Functions | |
BSLMF_NESTED_TRAIT_DECLARATION (Bind_ImplExplicit, bslma::UsesBslmaAllocator) | |
Bind_ImplExplicit (typename bslmf::ForwardingType< t_FUNC >::Type func, t_BOUND_TUPLE const &list, bslma::Allocator *allocator) | |
Bind_ImplExplicit (typename bslmf::ForwardingType< t_FUNC >::Type func, bslmf::MovableRef< t_BOUND_TUPLE > list, bslma::Allocator *allocator) | |
Bind_ImplExplicit (const Bind_ImplExplicit &other, bslma::Allocator *allocator) | |
Bind_ImplExplicit (bslmf::MovableRef< Bind_ImplExplicit > other, bslma::Allocator *basicAllocator=0) | |
template<class t_ARG_TUPLE > | |
ResultType | invoke (t_ARG_TUPLE &arguments) const |
ResultType | operator() () const |
ResultType | operator() (P1 p1) const |
ResultType | operator() (P1 p1, P2 p2) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10, P11 p11) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10, P11 p11, P12 p12) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10, P11 p11, P12 p12, P13 p13) const |
ResultType | operator() (P1 p1, P2 p2, P3 p3, P4 p4, P5 p5, P6 p6, P7 p7, P8 p8, P9 p9, P10 p10, P11 p11, P12 p12, P13 p13, P14 p14) const |
This class implements the storage and functionality required for a binder that invokes an object of type t_FUNC
with a list of invocation parameters of type t_BOUND_TUPLE
. The return type of the invocation is determined by a combination of type t_RET
and t_FUNC
. This implementation is preferred to the more generic Bind_Impl
above, because it allows to match the signature more closely. However, this implementation can only be used when the type of binder is "explicit" (see below). Note that it does not yet allow to cast the bound arguments to their respective argument type at binding time; the bound arguments are still converted to the signature at invocation time.
A binder is explicit if:
Bind
objects in the bound arguments.Note that this class is an implementation detail of Bind
. Do not use this class outside this component.
See bdlf_bind
typedef Traits::ResultType bdlf::Bind_ImplExplicit< t_RET, t_FUNC, t_BOUND_TUPLE >::ResultType |
|
inline |
Construct a Bind_Impl
object bound to the specified invocable object func
using the invocation parameters specified in list
.
|
inline |
Construct a Bind_Impl
object bound to the specified invocable object func
using the invocation parameters specified in list
.
|
inline |
|
inline |
bdlf::Bind_ImplExplicit< t_RET, t_FUNC, t_BOUND_TUPLE >::BSLMF_NESTED_TRAIT_DECLARATION | ( | Bind_ImplExplicit< t_RET, t_FUNC, t_BOUND_TUPLE > | , |
bslma::UsesBslmaAllocator | |||
) |
|
inline |
Invoke the bound functor using the invocation parameters provided at construction of this Bind
object. Substituting place-holders for their respective values in the specified arguments
.
|
inline |
Invoke the bound functor using only the invocation parameters provided at construction of this Bind
object and return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for argument 1 with the value of the specified argument p1
. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 and 2 with the value of the specified arguments p1
, and p2
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1, 2, and 3 with the values of the specified arguments p1
, p2
and p3
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 4 with the values of the specified arguments p1
- p4
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 5 with the values of the specified arguments p1
- p5
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 6 with the values of the specified arguments p1
- p7
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 7 with the values of the specified arguments p1
- p7
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 8 with the values of the specified arguments p1
- p8
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 9 with the values of the specified arguments p1
- p9
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 10 with the values of the specified arguments p1
- p10
respectively. Return the result.
|
inline |
invoke the bound functor using the invocation template provided at construction of this bdlf_bind object, substituting place-holders for arguments 1 - 11 with the values of the specified arguments p1
p11
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 12 with the values of the specified arguments p1
- p12
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 13 with the values of the specified arguments p1
- p13
respectively. Return the result.
|
inline |
Invoke the bound functor using the invocation template provided at construction of this Bind
object, substituting place-holders for arguments 1 - 14 with the values of the specified arguments p1
- p14
respectively. Return the result.