15 #include "classdesc.h" 31 template <
class F>
struct Arity;
37 {
static const bool value=
false;};
41 {
static const bool value=
false;};
45 {
static const bool value=
false;};
68 template <
class F,
int>
struct Arg;
90 template <
class C,
class M>
97 template <
class C,
class M>
103 template <
class C,
class M,
int i>
110 #include "functiondb.h" 114 template <
class F,
class X,
int Arity>
122 binder1st(
const F& f,
const X& x): f(f), x(x) {}
128 template <
class F,
class X>
134 static const int arity=0;
136 binder1st(
const F& f,
const X& x): f(f), x(x) {}
141 template <
class F,
class X,
int A>
144 static const int V=A;
147 template <
class F,
class X,
int A>
150 typedef typename binder1st<F,X,A>::Ret T;
153 template <
class F,
class X>
159 template <
class O,
class M>
161 bind1st(
const M& member, O& obj,
dummy<1> dum=0)
166 template <
class F,
class Args>
172 {*r=apply_nonvoid_fn(f,args);}
174 template <
class F,
class Args>
176 apply(
void* r, F f, Args& args,
dummy<1> d=0)
177 {apply_void_fn(f,args);}
Definition: function.h:72
Definition: classdesc.h:326
Definition: function.h:48
Definition: function.h:59
Definition: function.h:115
is_member_function_ptr::value is true if F is a member function pointer
Definition: function.h:36
Definition: function.h:70
Arity::V (or ::value) is the number of arguments of
Definition: function.h:31
Return::T (or ::type) is the return type of F
Definition: function.h:33
Contains definitions related to classdesc functionality.
Definition: arrays.h:2514
is_nonmember_function_ptr::value is true if F is an ordinary function pointer
Definition: function.h:44
controlled template specialisation: stolen from boost::enable_if.
Definition: classdesc.h:249
Definition: classdesc.h:266
Definition: function.h:68
is_const_method::value is true if F is a pointer to a const method
Definition: function.h:40