8 virtual void run() = 0;
29 template <
class Fxn,
class A>
48 template <
class Fxn,
class A,
class B>
61 : fxn_(fxn), a_(a), b_(b) {
69 template <
class Fxn,
class A,
class B,
class C>
83 TestFxn3(Fxn fxn,
const A& a,
const B& b,
const C& c)
84 : fxn_(fxn), a_(a), b_(b), c_(c) {
92 template <
class Fxn,
class Cls,
class A>
105 : fxn_(fxn), cls_(cls), a_(a) {
113 template <
class Fxn,
class Cls,
class A,
class B>
128 : fxn_(fxn), cls_(cls), a_(a), b_(b) {
132 (cls_->*fxn_)(a_,b_);
136 template <
class Fxn,
class Cls,
class A,
class B,
class C>
153 : fxn_(fxn), cls_(cls), a_(a), b_(b), c_(c) {
157 (cls_->*fxn_)(a_,b_,c_);
161 template <
typename Fxn>
168 template <
typename Fxn,
class A>
175 template <
typename Fxn,
class A,
class B>
182 template <
typename Fxn,
class A,
class B,
class C>
190 template <
typename Fxn,
class Cls,
class A>
197 template <
typename Fxn,
class Cls,
class A,
class B>
204 template <
typename Fxn,
class Cls,
class A,
class B,
class C>
206 member_fxn(Cls* cls, Fxn fxn,
const A& a,
const B& b,
const C& c)
TestFxn2(Fxn fxn, const A &a, const B &b)
TestMemberFxn1(Fxn fxn, Cls *cls, const A &a)
TestMemberFxn2(Fxn fxn, Cls *cls, const A &a, const B &b)
TestFxn * static_fxn(Fxn fxn)
TestMemberFxn3(Fxn fxn, Cls *cls, const A &a, const B &b, const C &c)
TestFxn * member_fxn(Cls *cls, Fxn fxn, const A &a)
TestFxn3(Fxn fxn, const A &a, const B &b, const C &c)
TestFxn1(Fxn fxn, const A &a)