BDE 4.14.0 Production release
|
#include <bdlf_bind.h>
Public Types | |
typedef bdlf::Bind< t_RET, t_FUNC, t_BOUND_TUPLE >::ResultType | ResultType |
The return type of this binder object. | |
Public Member Functions | |
BSLMF_NESTED_TRAIT_DECLARATION (BindWrapper, bslmf::HasPointerSemantics) | |
BSLMF_NESTED_TRAIT_DECLARATION (BindWrapper, bslmf::IsBitwiseMoveable) | |
BSLMF_NESTED_TRAIT_DECLARATION (BindWrapper, bsl::is_nothrow_move_constructible) | |
BindWrapper (typename bslmf::ForwardingType< t_FUNC >::Type func, const t_BOUND_TUPLE &tuple, bslma::Allocator *allocator=0) | |
BindWrapper (typename bslmf::ForwardingType< t_FUNC >::Type func, bslmf::MovableRef< t_BOUND_TUPLE > tuple, bslma::Allocator *allocator=0) | |
BindWrapper (const BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE > &original) | |
BindWrapper (bslmf::MovableRef< BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE > > original) BSLS_KEYWORD_NOEXCEPT | |
template<class t_ARG_TUPLE > | |
ResultType | invoke (t_ARG_TUPLE &arguments) const |
const bdlf::Bind< t_RET, t_FUNC, t_BOUND_TUPLE > & | operator* () const |
const bdlf::Bind< t_RET, t_FUNC, t_BOUND_TUPLE > * | operator-> () 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 |
This wrapper class provides a binder with shared pointer semantics to a non-modifiable binder (both operator*
and operator->
accessors) and forward its construction arguments to the underlying binder. Note that instances of this class should not be created explicitly, instead use the BindUtil
factory methods. Note also that instances of this class can be invoked directly, in order to meet user expectations that the result of BindUtil::bind
be an invocable just as the result of bdlf::BindUtil::bind
is; in that case, the invocation parameters are simply forwarded to the shared binder. Note finally that even though this wrapper has pointer semantics for the operator*
and operator->
, it has value semantics for the invocation: invoking a non-modifiable wrapper will forward the invocation to the non-modifiable binder shared by that wrapper, even though pointer semantics have it .
See bdlf_bind
typedef bdlf::Bind<t_RET,t_FUNC,t_BOUND_TUPLE>::ResultType bdlf::BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE >::ResultType |
|
inline |
Create a wrapper with shared pointer semantics around a binder constructed with the specified func
invocable and specified tuple
bound arguments. Optionally specify the allocator
.
|
inline |
Create a wrapper with shared pointer semantics around a binder constructed with the specified func
invocable and specified tuple
bound arguments. Optionally specify the allocator
.
|
inline |
Create a wrapper that shares ownership of the binder of the specified original
.
|
inline |
Create a wrapper that assumes ownership of the binder of the specified original
.
bdlf::BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE >::BSLMF_NESTED_TRAIT_DECLARATION | ( | BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE > | , |
bsl::is_nothrow_move_constructible | |||
) |
bdlf::BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE >::BSLMF_NESTED_TRAIT_DECLARATION | ( | BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE > | , |
bslmf::HasPointerSemantics | |||
) |
bdlf::BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE >::BSLMF_NESTED_TRAIT_DECLARATION | ( | BindWrapper< t_RET, t_FUNC, t_BOUND_TUPLE > | , |
bslmf::IsBitwiseMoveable | |||
) |
|
inline |
Invoke the bound object using the invocation parameters provided at construction of this bdlf::Bind
object, substituting place-holders for their respective values in the specified arguments
.
|
inline |
Invoke the bound object using only the invocation parameters provided at construction of this bdlf::Bind
object and return the result.
|
inline |
Invoke the bound object using the invocation template provided at construction of this bdlf::Bind
object, substituting place-holders for argument 1 with the value of the specified argument p1
. Return the result.
|
inline |
Invoke the bound object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object 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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::Bind
object, substituting place-holders for argument 1 with the value of the specified argument p1
. Return the result.
|
inline |
Invoke the bound object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object 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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::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 object using the invocation template provided at construction of this bdlf::Bind
object, substituting place-holders for arguments 1 - 14 with the values of the specified arguments p1
p14
respectively. Return the result.
|
inline |
Return a reference to the non-modifiable binder shared by this wrapper.
|
inline |
Return the address of the non-modifiable binder shared by this wrapper.