12 #ifndef ASIO_DETAIL_WIN_IOCP_HANDLE_WRITE_OP_HPP 13 #define ASIO_DETAIL_WIN_IOCP_HANDLE_WRITE_OP_HPP 15 #if defined(_MSC_VER) && (_MSC_VER >= 1200) 17 #endif // defined(_MSC_VER) && (_MSC_VER >= 1200) 21 #if defined(ASIO_HAS_IOCP) 37 template <
typename ConstBufferSequence,
typename Handler>
38 class win_iocp_handle_write_op :
public operation 43 win_iocp_handle_write_op(
const ConstBufferSequence&
buffers, Handler& handler)
44 :
operation(&win_iocp_handle_write_op::do_complete),
54 win_iocp_handle_write_op* o(static_cast<win_iocp_handle_write_op*>(base));
55 ptr p = { asio::detail::addressof(o->handler_), o, o };
59 #if defined(ASIO_ENABLE_BUFFER_DEBUGGING) 64 ConstBufferSequence>::validate(o->buffers_);
66 #endif // defined(ASIO_ENABLE_BUFFER_DEBUGGING) 74 detail::binder2<Handler, asio::error_code, std::size_t>
75 handler(o->handler_, ec, bytes_transferred);
76 p.h = asio::detail::addressof(handler.handler_);
90 ConstBufferSequence buffers_;
99 #endif // defined(ASIO_HAS_IOCP) 101 #endif // ASIO_DETAIL_WIN_IOCP_HANDLE_WRITE_OP_HPP
#define ASIO_HANDLER_INVOCATION_END
Holds a buffer that cannot be modified.
asio::basic_streambuf< Allocator > & b
null_fenced_block fenced_block
class task_io_service io_service_impl
void invoke(Function &function, Context &context)
const MutableBufferSequence & buffers
#define ASIO_HANDLER_INVOCATION_BEGIN(args)
Class to represent an error code value.
task_io_service_operation operation
#define ASIO_DEFINE_HANDLER_PTR(op)
#define ASIO_HANDLER_COMPLETION(args)
#define ASIO_MOVE_CAST(type)