|
| 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 |
| |
|
| 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 > |
| async_result< std::decay_t< CompletionToken >, void(std::error_code)>::return_type | async_wait (wait_type w, CompletionToken &&token) |
| |
|
| static constexpr message_flags | message_peek = impl::socket::message_peek |
| |
| static constexpr message_flags | message_out_of_band |
| |
| static constexpr message_flags | message_do_not_route |
| |
| static constexpr wait_type | wait_read = wait_type::wait_read |
| |
| static constexpr wait_type | wait_write = wait_type::wait_write |
| |
| static constexpr wait_type | wait_error = wait_type::wait_error |
| |
| static constexpr shutdown_type | shutdown_receive |
| |
| static constexpr shutdown_type | shutdown_send = shutdown_type::shutdown_send |
| |
| static constexpr shutdown_type | shutdown_both = shutdown_type::shutdown_both |
| |
| static const int | max_listen_connections {SOMAXCONN} |
| |
| constexpr | basic_socket_impl (io_context &ctx) noexcept |
| |
| | basic_socket_impl (const basic_socket_impl &)=delete |
| |
| basic_socket_impl & | operator= (const basic_socket_impl &)=delete |
| |
| | basic_socket_impl (basic_socket_impl &&rhs)=default |
| |
| basic_socket_impl & | operator= (basic_socket_impl &&rhs) noexcept |
| |
| | ~basic_socket_impl () |
| |
| stdx::expected< void, error_type > | open (const protocol_type &protocol=protocol_type(), int flags=0) |
| |
| stdx::expected< void, error_type > | assign (const protocol_type &protocol, const native_handle_type &native_handle) |
| |
| stdx::expected< void, error_type > | bind (const endpoint_type &endpoint) |
| |
| stdx::expected< socket_type, error_type > | accept (io_context &io_ctx, struct sockaddr *endpoint_data, socklen_t *endpoint_size, int flags=0) |
| |
| stdx::expected< socket_type, error_type > | accept (io_context &io_ctx, int flags=0) |
| |
| stdx::expected< socket_type, error_type > | accept (io_context &io_ctx, endpoint_type &endpoint, int flags=0) |
| |
| stdx::expected< void, error_type > | listen (int backlog=socket_base::max_listen_connections) |
| |
| 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< endpoint_type, error_type > | local_endpoint () const |
| |
| stdx::expected< endpoint_type, error_type > | remote_endpoint () const |
| |
| template<class IoControlCommand > |
| stdx::expected< void, error_type > | io_control (IoControlCommand &cmd) const |
| |
| stdx::expected< size_t, error_type > | available () const |
| |
| stdx::expected< bool, error_type > | at_mark () const |
| |
| stdx::expected< void, error_type > | shutdown (socket_base::shutdown_type st) const |
| |
| stdx::expected< void, std::error_code > | wait (socket_base::wait_type wt) |
| |
| constexpr | basic_socket_impl_base (io_context &ctx) |
| |
| | basic_socket_impl_base (const basic_socket_impl_base &rhs)=delete |
| |
| basic_socket_impl_base & | operator= (const basic_socket_impl_base &rhs)=delete |
| |
| | basic_socket_impl_base (basic_socket_impl_base &&rhs) noexcept |
| |
| basic_socket_impl_base & | operator= (basic_socket_impl_base &&rhs) noexcept |
| |
| | ~basic_socket_impl_base ()=default |
| |
| constexpr native_handle_type | native_handle () const noexcept |
| |
| constexpr bool | is_open () const noexcept |
| |
| constexpr 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) |
| |
| executor_type | get_executor () noexcept |
| |
| stdx::expected< void, std::error_code > | close () |
| |
| stdx::expected< void, std::error_code > | cancel () |
| |
| stdx::expected< native_handle_type, std::error_code > | release () |
| |
| native_handle_type | native_handle_ {impl::socket::kInvalidSocket} |
| |
| bool | non_blocking_ {false} |
| |
| char | native_non_blocking_ |
| |
| io_context * | io_ctx_ |
| |