mirror of
https://github.com/boostorg/asio.git
synced 2025-05-12 14:11:39 +00:00
The as_tuple completion token adapter can be used to specify that the completion handler arguments should be combined into a single tuple argument. The as_tuple adapter may be used in conjunction with use_awaitable and structured bindings as follows: auto [e, n] = co_await socket.async_read_some( asio::buffer(data), as_tuple(use_awaitable)); Alternatively, it may be used as a default completion token like so: using default_token = as_tuple_t<use_awaitable_t<>>; using tcp_socket = default_token::as_default_on_t<tcp::socket>; // ... awaitable<void> do_read(tcp_socket socket) { // ... auto [e, n] = co_await socket.async_read_some(asio::buffer(data)); // ... }