|
Asio Extensions
Additional functionality built on top of (Boost.)Asio
|
Base class for composed operations. More...
#include <asioext/composed_operation.hpp>
Inheritance diagram for asioext::composed_operation< Handler >:Public Member Functions | |
| composed_operation (Handler &&handler) | |
Public Attributes | |
| Handler | handler_ |
Base class for composed operations.
This class template is intended to be used as a base class for custom composed operation types that wrap a user-provided handler. As such, it expects child classes to implement operator().
It wraps the given handler object and provides overloads for asio's hooks that forward to the real handler's hooks (if implemented).
For a detailed description of composed operations, see [async.reqmts.async.composed] inside the Networking TS.
Implemented hooks:
This class does not provide support for asio::associated_allocator<> and asio::associated_executor<> (Asio 1.11.0+). The user is required to manually specialize these templates in the asio namespace.
Example specializations:
operator() is executed by the user-specified executor / invocation hook (see above). It is not suitable for operations that are to be executed in a service-provided context (e.g. a private io_service).
|
inline |
| Handler asioext::composed_operation< Handler >::handler_ |