| 
| using  | protocol_type = Protocol | 
|   | 
| using  | native_handle_type = impl::socket::native_handle_type | 
|   | 
| using  | endpoint_type = typename protocol_type::endpoint | 
|   | 
| using  | error_type = std::error_code | 
|   | 
| using  | executor_type = io_context::executor_type | 
|   | 
| using  | protocol_type = Protocol | 
|   | 
| using  | native_handle_type = impl::socket::native_handle_type | 
|   | 
| using  | error_type = impl::socket::error_type | 
|   | 
| using  | endpoint_type = typename protocol_type::endpoint | 
|   | 
| enum class   | shutdown_type { shutdown_receive = SHUT_RD
, shutdown_send = SHUT_WR
, shutdown_both = SHUT_RDWR
 } | 
|   | 
| using  | broadcast = socket_option::boolean< SOL_SOCKET, SO_BROADCAST > | 
|   | 
| using  | debug = socket_option::boolean< SOL_SOCKET, SO_DEBUG > | 
|   | 
| using  | do_not_route = socket_option::boolean< SOL_SOCKET, SO_DONTROUTE > | 
|   | 
| using  | error = socket_option::integer< SOL_SOCKET, SO_ERROR > | 
|   | 
| using  | keep_alive = socket_option::boolean< SOL_SOCKET, SO_KEEPALIVE > | 
|   | 
| using  | out_of_band_inline = socket_option::boolean< SOL_SOCKET, SO_OOBINLINE > | 
|   | 
| using  | receive_buffer_size = socket_option::integer< SOL_SOCKET, SO_RCVBUF > | 
|   | 
| using  | receive_low_watermark = socket_option::integer< SOL_SOCKET, SO_RCVLOWAT > | 
|   | 
| using  | reuse_address = socket_option::boolean< SOL_SOCKET, SO_REUSEADDR > | 
|   | 
| using  | send_buffer_size = socket_option::integer< SOL_SOCKET, SO_SNDBUF > | 
|   | 
| using  | send_low_watermark = socket_option::integer< SOL_SOCKET, SO_SNDLOWAT > | 
|   | 
| using  | message_flags = impl::socket::message_flags | 
|   | 
| using  | wait_type = impl::socket::wait_type | 
|   | 
 | 
|   | basic_stream_socket (io_context &ctx) | 
|   | 
|   | basic_stream_socket (io_context &ctx, const protocol_type &proto) | 
|   | 
|   | basic_stream_socket (const basic_stream_socket &)=delete | 
|   | 
| basic_stream_socket &  | operator= (const basic_stream_socket &)=delete | 
|   | 
|   | basic_stream_socket (basic_stream_socket &&other)=default | 
|   | 
| basic_stream_socket &  | operator= (basic_stream_socket &&)=default | 
|   | 
|   | ~basic_stream_socket ()=default | 
|   | 
|   | basic_stream_socket (io_context &ctx, const protocol_type &protocol, const native_handle_type &native_handle) | 
|   | 
| template<class MutableBufferSequence >  | 
| stdx::expected< size_t, std::error_code >  | receive (const MutableBufferSequence &buffers, socket_base::message_flags flags) | 
|   | 
| template<class MutableBufferSequence >  | 
| stdx::expected< size_t, std::error_code >  | receive (const MutableBufferSequence &buffers) | 
|   | 
| template<class MutableBufferSequence >  | 
| stdx::expected< size_t, std::error_code >  | read_some (const MutableBufferSequence &buffers) | 
|   | 
| template<class ConstBufferSequence >  | 
| stdx::expected< size_t, std::error_code >  | send (const ConstBufferSequence &buffers, socket_base::message_flags flags) | 
|   | 
| template<class ConstBufferSequence >  | 
| stdx::expected< size_t, std::error_code >  | send (const ConstBufferSequence &buffers) | 
|   | 
| template<class ConstBufferSequence >  | 
| stdx::expected< size_t, std::error_code >  | write_some (const ConstBufferSequence &buffers) | 
|   | 
| stdx::expected< void, error_type >  | shutdown (socket_base::shutdown_type st) const | 
|   | 
| template<class MutableBufferSequence , class CompletionToken >  | 
| auto  | async_receive (const MutableBufferSequence &buffers, socket_base::message_flags flags, CompletionToken &&token) | 
|   | 
| template<class MutableBufferSequence , class CompletionToken >  | 
| auto  | async_receive (const MutableBufferSequence &buffers, CompletionToken &&token) | 
|   | 
| template<class ConstBufferSequence , class CompletionToken >  | 
| auto  | async_send (const ConstBufferSequence &buffers, socket_base::message_flags flags, CompletionToken &&token) | 
|   | 
| template<class ConstBufferSequence , class CompletionToken >  | 
| auto  | async_send (const ConstBufferSequence &buffers, CompletionToken &&token) | 
|   | 
| executor_type  | get_executor () noexcept | 
|   | 
| stdx::expected< void, error_type >  | assign (const protocol_type &protocol, const native_handle_type &native_handle) | 
|   | 
| stdx::expected< void, error_type >  | open (const protocol_type &protocol=protocol_type(), int flags=0) | 
|   | 
| stdx::expected< void, error_type >  | connect (const endpoint_type &endpoint) | 
|   | 
| template<class CompletionToken >  | 
| auto  | async_connect (const endpoint_type &endpoint, CompletionToken &&token) | 
|   | 
| stdx::expected< void, error_type >  | bind (const endpoint_type &endpoint) | 
|   | 
| native_handle_type  | native_handle () const noexcept | 
|   | 
| template<typename SettableSocketOption >  | 
| stdx::expected< void, error_type >  | set_option (const SettableSocketOption &option) | 
|   | 
| template<typename GettableSocketOption >  | 
| stdx::expected< void, error_type >  | get_option (GettableSocketOption &option) const | 
|   | 
| stdx::expected< void, error_type >  | close () | 
|   | 
| stdx::expected< void, error_type >  | cancel () | 
|   | 
| stdx::expected< native_handle_type, error_type >  | release () | 
|   | 
| constexpr bool  | is_open () const | 
|   | 
| stdx::expected< endpoint_type, error_type >  | local_endpoint () const | 
|   | 
| stdx::expected< endpoint_type, error_type >  | remote_endpoint () const | 
|   | 
| stdx::expected< size_t, error_type >  | available () const | 
|   | 
| bool  | non_blocking () const | 
|   | 
| stdx::expected< void, std::error_code >  | non_blocking (bool mode) | 
|   | 
| bool  | native_non_blocking () const | 
|   | 
| stdx::expected< void, std::error_code >  | native_non_blocking (bool mode) | 
|   | 
| stdx::expected< void, std::error_code >  | wait (socket_base::wait_type wt) | 
|   | 
| stdx::expected< void, error_type >  | shutdown (socket_base::shutdown_type st) const | 
|   | 
| template<typename CompletionToken >  | 
| auto  | async_wait (wait_type w, CompletionToken &&token) | 
|   |