8 #ifndef CPPCMS_UTIL_MEM_BIND_H 9 #define CPPCMS_UTIL_MEM_BIND_H 15 template<
typename C,
typename P>
19 void operator()()
const { ((*object).*member)(); }
21 template<
typename C,
typename P,
typename P1>
23 void (C::*member)(P1);
25 void operator()(P1 p1)
const { ((*object).*member)(p1); }
27 template<
typename C,
typename P,
typename P1,
typename P2>
29 void (C::*member)(P1,P2);
31 void operator()(P1 p1,P2 p2)
const { ((*object).*member)(p1,p2); }
33 template<
typename C,
typename P,
typename P1,
typename P2,
typename P3>
35 void (C::*member)(P1,P2,P3);
37 void operator()(P1 p1,P2 p2,P3 p3)
const { ((*object).*member)(p1,p2,p3); }
39 template<
typename C,
typename P,
typename P1,
typename P2,
typename P3,
typename P4>
41 void (C::*member)(P1,P2,P3,P4);
43 void operator()(P1 p1,P2 p2,P3 p3,P4 p4)
const { ((*object).*member)(p1,p2,p3,p4); }
53 template<
typename C,
typename P>
54 details::binder0<C,P>
mem_bind(
void (C::*mem)(),P obj)
56 details::binder0<C,P> tmp={mem,obj};
63 template<
typename C,
typename P,
typename P1>
64 details::binder1<C,P,P1>
mem_bind(
void (C::*mem)(P1),P obj)
66 details::binder1<C,P,P1> tmp={mem,obj};
73 template<
typename C,
typename P,
typename P1,
typename P2>
74 details::binder2<C,P,P1,P2>
mem_bind(
void (C::*mem)(P1,P2),P obj)
76 details::binder2<C,P,P1,P2> tmp={mem,obj};
83 template<
typename C,
typename P,
typename P1,
typename P2,
typename P3>
84 details::binder3<C,P,P1,P2,P3>
mem_bind(
void (C::*mem)(P1,P2,P3),P obj)
86 details::binder3<C,P,P1,P2,P3> tmp={mem,obj};
93 template<
typename C,
typename P,
typename P1,
typename P2,
typename P3,
typename P4>
94 details::binder4<C,P,P1,P2,P3,P4>
mem_bind(
void (C::*mem)(P1,P2,P3,P4),P obj)
96 details::binder4<C,P,P1,P2,P3,P4> tmp={mem,obj};
This is the namespace where all CppCMS functionality is placed.
Definition: application.h:19
details::binder0< C, P > mem_bind(void(C::*mem)(), P obj)
Definition: mem_bind.h:54