template<typename R, typename C, typename P BOOST_PP_ENUM_TRAILING_PARAMS( n, typename A)> \
static std::function<fc::future<R>( BOOST_PP_ENUM_PARAMS(n,
A) ) > \
functor(
P p,
R (C::*mem_func)(BOOST_PP_ENUM_PARAMS(n,
A)) IS_CONST, fc::thread* c = 0) { \
return [=](BOOST_PP_ENUM_BINARY_PARAMS(n,
A,
a))->fc::future<R>{ \
return c->async( [=](){
return (
p->*mem_func)(BOOST_PP_ENUM_PARAMS(n,
a)); } ); }; \
}
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & a
10 #define RPC_MEMBER_FUNCTOR(z,n,IS_CONST) \
11 template<typename R, typename C, typename P BOOST_PP_ENUM_TRAILING_PARAMS( n, typename A)> \
12 static std::function<fc::future<R>( BOOST_PP_ENUM_PARAMS(n,A) ) > \
13 functor( P p, R (C::*mem_func)(BOOST_PP_ENUM_PARAMS(n,A)) IS_CONST, fc::thread* c = 0) { \
14 return [=](BOOST_PP_ENUM_BINARY_PARAMS(n,A,a))->fc::future<R>{ \
15 return c->async( [=](){ return (p->*mem_func)(BOOST_PP_ENUM_PARAMS(n,a)); } ); }; \
16 }