11 #ifndef ASIO_DETAIL_WRAPPED_HANDLER_HPP 12 #define ASIO_DETAIL_WRAPPED_HANDLER_HPP 14 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 16 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 30 template <
typename Dispatcher,
typename Handler>
39 template <
typename Dispatcher,
typename Handler>
42 return dispatcher.running_in_this_thread();
46 template <
typename Dispatcher,
typename Handler,
54 : dispatcher_(dispatcher),
59 #if defined(ASIO_HAS_MOVE) 71 #endif // defined(ASIO_HAS_MOVE) 80 dispatcher_.dispatch(handler_);
83 template <
typename Arg1>
89 template <
typename Arg1>
95 template <
typename Arg1,
typename Arg2>
101 template <
typename Arg1,
typename Arg2>
107 template <
typename Arg1,
typename Arg2,
typename Arg3>
108 void operator()(
const Arg1& arg1,
const Arg2& arg2,
const Arg3& arg3)
113 template <
typename Arg1,
typename Arg2,
typename Arg3>
114 void operator()(
const Arg1& arg1,
const Arg2& arg2,
const Arg3& arg3)
const 119 template <
typename Arg1,
typename Arg2,
typename Arg3,
typename Arg4>
120 void operator()(
const Arg1& arg1,
const Arg2& arg2,
const Arg3& arg3,
123 dispatcher_.dispatch(
127 template <
typename Arg1,
typename Arg2,
typename Arg3,
typename Arg4>
128 void operator()(
const Arg1& arg1,
const Arg2& arg2,
const Arg3& arg3,
129 const Arg4& arg4)
const 131 dispatcher_.dispatch(
135 template <
typename Arg1,
typename Arg2,
typename Arg3,
typename Arg4,
137 void operator()(
const Arg1& arg1,
const Arg2& arg2,
const Arg3& arg3,
138 const Arg4& arg4,
const Arg5& arg5)
140 dispatcher_.dispatch(
144 template <
typename Arg1,
typename Arg2,
typename Arg3,
typename Arg4,
146 void operator()(
const Arg1& arg1,
const Arg2& arg2,
const Arg3& arg3,
147 const Arg4& arg4,
const Arg5& arg5)
const 149 dispatcher_.dispatch(
158 template <
typename Handler,
typename Context>
174 #if defined(ASIO_HAS_MOVE) 186 #endif // defined(ASIO_HAS_MOVE) 203 template <
typename Dispatcher,
typename Handler,
typename IsContinuation>
211 template <
typename Dispatcher,
typename Handler,
typename IsContinuation>
216 pointer, size, this_handler->
handler_);
219 template <
typename Dispatcher,
typename Handler,
typename IsContinuation>
226 template <
typename Function,
typename Dispatcher,
227 typename Handler,
typename IsContinuation>
236 template <
typename Function,
typename Dispatcher,
237 typename Handler,
typename IsContinuation>
246 template <
typename Handler,
typename Context>
254 template <
typename Handler,
typename Context>
259 pointer, size, this_handler->
context_);
262 template <
typename Dispatcher,
typename Context>
270 template <
typename Function,
typename Handler,
typename Context>
278 template <
typename Function,
typename Handler,
typename Context>
291 #endif // ASIO_DETAIL_WRAPPED_HANDLER_HPP
void asio_handler_deallocate(void *pointer, std::size_t size, binder1< Handler, Arg1 > *this_handler)
void operator()(const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3, const Arg4 &arg4, const Arg5 &arg5) const
void operator()(const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3, const Arg4 &arg4)
rewrapped_handler(const Handler &handler, const Context &context)
void * asio_handler_allocate(std::size_t size, binder1< Handler, Arg1 > *this_handler)
wrapped_handler(Dispatcher dispatcher, Handler &handler)
void operator()(const Arg1 &arg1, const Arg2 &arg2)
void operator()(const Arg1 &arg1) const
void invoke(Function &function, Context &context)
void operator()(const Arg1 &arg1)
void operator()(const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3, const Arg4 &arg4) const
void operator()(const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3)
void asio_handler_invoke(Function &function, binder1< Handler, Arg1 > *this_handler)
rewrapped_handler(Handler &handler, const Context &context)
bool is_continuation(Context &context)
void operator()(const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3) const
void operator()(const Arg1 &arg1, const Arg2 &arg2, const Arg3 &arg3, const Arg4 &arg4, const Arg5 &arg5)
void deallocate(void *p, std::size_t s, Handler &h)
void * allocate(std::size_t s, Handler &h)
#define ASIO_MOVE_CAST(type)
binder1< Handler, Arg1 > bind_handler(Handler handler, const Arg1 &arg1)
void operator()(const Arg1 &arg1, const Arg2 &arg2) const
bool operator()(Dispatcher &dispatcher, Handler &) const
bool asio_handler_is_continuation(binder1< Handler, Arg1 > *this_handler)
bool operator()(Dispatcher &, Handler &handler) const