BDE 4.14.0 Production release
|
#include <bdlf_bind.h>
Public Types | |
typedef Traits::ResultType | ResultType |
Public Member Functions | |
BSLMF_NESTED_TRAIT_DECLARATION (Bind_Impl, bslma::UsesBslmaAllocator) | |
Bind_Impl (typename bslmf::ForwardingType< t_FUNC >::Type func, t_BOUND_TUPLE const &list, bslma::Allocator *basicAllocator=0) | |
Bind_Impl (typename bslmf::ForwardingType< t_FUNC >::Type func, bslmf::MovableRef< t_BOUND_TUPLE > list, bslma::Allocator *basicAllocator=0) | |
Bind_Impl (const Bind_Impl &other, bslma::Allocator *basicAllocator=0) | |
Bind_Impl (bslmf::MovableRef< Bind_Impl > other, bslma::Allocator *basicAllocator=0) | |
template<class t_ARG_TUPLE > | |
ResultType | invoke (t_ARG_TUPLE &arguments) const |
ResultType | operator() () const |
template<class P1 > | |
ResultType | operator() (P1 &p1) const |
template<class P1 > | |
ResultType | operator() (P1 const &p1) const |
template<class P1 , class P2 > | |
ResultType | operator() (P1 &p1, P2 &p2) const |
template<class P1 , class P2 > | |
ResultType | operator() (P1 const &p1, P2 const &p2) const |
template<class P1 , class P2 , class P3 > | |
ResultType | operator() (P1 &p1, P2 &p2, P3 &p3) const |
template<class P1 , class P2 , class P3 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3) const |
template<class P1 , class P2 , class P3 , class P4 > | |
ResultType | operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4) const |
template<class P1 , class P2 , class P3 , class P4 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 > | |
ResultType | operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 > | |
ResultType | operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5, P6 &p6) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 > | |
ResultType | operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5, P6 &p6, P7 &p7) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6, P7 const &p7) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 > | |
ResultType | operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5, P6 &p6, P7 &p7, P8 &p8) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6, P7 const &p7, P8 const &p8) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 > | |
ResultType | operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5, P6 &p6, P7 &p7, P8 &p8, P9 &p9) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6, P7 const &p7, P8 const &p8, P9 const &p9) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 > | |
ResultType | operator() (P1 &p1, P2 &p2, P3 &p3, P4 &p4, P5 &p5, P6 &p6, P7 &p7, P8 &p8, P9 &p9, P10 &p10) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6, P7 const &p7, P8 const &p8, P9 const &p9, P10 const &p10) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 > | |
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 |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6, P7 const &p7, P8 const &p8, P9 const &p9, P10 const &p10, P11 const &p11) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 , class P12 > | |
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 |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 , class P12 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6, P7 const &p7, P8 const &p8, P9 const &p9, P10 const &p10, P11 const &p11, P12 const &p12) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 , class P12 , class P13 > | |
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 |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 , class P12 , class P13 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6, P7 const &p7, P8 const &p8, P9 const &p9, P10 const &p10, P11 const &p11, P12 const &p12, P13 const &p13) const |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 , class P12 , class P13 , class P14 > | |
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 |
template<class P1 , class P2 , class P3 , class P4 , class P5 , class P6 , class P7 , class P8 , class P9 , class P10 , class P11 , class P12 , class P13 , class P14 > | |
ResultType | operator() (P1 const &p1, P2 const &p2, P3 const &p3, P4 const &p4, P5 const &p5, P6 const &p6, P7 const &p7, P8 const &p8, P9 const &p9, P10 const &p10, P11 const &p11, P12 const &p12, P13 const &p13, P14 const &p14) const |
Either this class
or Bind_ImplExplicit
is used as the base class
of Bind
, where Bind_ImplExplicit
is used only if certain conditions on the template parameters are met, and this class
is more resilient and used in the more general case. This class
is not to be directly used outside this component. 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
. Note that this class is a generic binder implementation; this component provides more type safe implementation Bind_ImplExplicit
that will be used under certain conditions.
See bdlf_bind
typedef Traits::ResultType bdlf::Bind_Impl< 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
. Optionally specify a basicAllocator
used to supply memory. If basicAllocator
is 0, the currently installed default allocator is used.
|
inline |
|
inline |
Construct a Bind_Impl
object bound to the same invocable object func
and using the same invocation parameters as the specified other
object. Optionally specify a basicAllocator
used to supply memory. If basicAllocator
is 0, the currently installed default allocator is used.
|
inline |
Construct a Bind_Impl
object bound to the same invocable object func
and using the invocation parameters moved from the specified other
object. Optionally specify a basicAllocator
used to supply memory. If basicAllocator
is 0, the currently installed default allocator is used.
bdlf::Bind_Impl< t_RET, t_FUNC, t_BOUND_TUPLE >::BSLMF_NESTED_TRAIT_DECLARATION | ( | Bind_Impl< 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 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.
|
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 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.