|
AsyncBerkeley
Asynchronous Berkeley sockets. Simple.
|
The io::socket namespace provides a cross-platform abstraction for socket-level I/O operations.
More...
Classes | |
| class | message_buffer |
| A container for managing buffers for scatter-gather I/O operations. More... | |
| struct | message_header |
| Represents the header of a socket message. More... | |
| struct | socket_address |
| Represents a platform-independent socket address. More... | |
| struct | socket_dialog |
| A dialog that facilitates asynchronous operations on the socket by the executor. More... | |
| class | socket_handle |
| A thread-safe, move-only RAII wrapper for a native socket handle. More... | |
| struct | socket_message |
| Represents a complete socket message. More... | |
| class | socket_option |
| A generic wrapper for socket options. More... | |
Functions | |
| template<SocketAddress Addr = sockaddr_storage_type> | |
| auto | make_address (const Addr *addr=nullptr) -> socket_address< Addr > |
Creates a socket_address from a socket address structure. | |
| template<Multiplexer Mux> | |
| auto | operator<=> (const socket_dialog< Mux > &lhs, const socket_dialog< Mux > &rhs) -> std::strong_ordering |
Compares two socket_dialog objects. | |
| template<Multiplexer Mux> | |
| auto | operator== (const socket_dialog< Mux > &lhs, const socket_dialog< Mux > &rhs) -> bool |
Checks for equality between two socket_dialog objects. | |
| template<Multiplexer Mux> | |
| auto | operator<=> (const socket_dialog< Mux > &lhs, const socket_handle &rhs) -> std::strong_ordering |
Compares a socket_dialog and a socket_handle. | |
| template<Multiplexer Mux> | |
| auto | operator== (const socket_dialog< Mux > &lhs, const socket_handle &rhs) -> bool |
Checks for equality between a socket_dialog and a socket_handle. | |
| template<Multiplexer Mux> | |
| auto | operator<=> (const socket_dialog< Mux > &lhs, native_socket_type rhs) -> std::strong_ordering |
Compares a socket_dialog and a native_socket. | |
| template<Multiplexer Mux> | |
| auto | operator== (const socket_dialog< Mux > &lhs, native_socket_type rhs) -> bool |
Checks for equality between a socket_dialog and a native_socket. | |
The io::socket namespace provides a cross-platform abstraction for socket-level I/O operations.
| auto io::socket::make_address | ( | const Addr * | addr = nullptr | ) | -> socket_address<Addr> |
Creates a socket_address from a socket address structure.
| SockAddr | The type of the socket address structure. |
| addr | A pointer to the socket address structure. |
socket_address object. | auto io::socket::operator<=> | ( | const socket_dialog< Mux > & | lhs, |
| const socket_dialog< Mux > & | rhs | ||
| ) | -> std::strong_ordering |
Compares two socket_dialog objects.
| lhs | The left-hand side of the comparison. |
| rhs | The right-hand side of the comparison. |
std::strong_ordering indicating the result of the comparison. | std::invalid_argument | if the underlying socket of either side is nullptr. |
| auto io::socket::operator<=> | ( | const socket_dialog< Mux > & | lhs, |
| const socket_handle & | rhs | ||
| ) | -> std::strong_ordering |
Compares a socket_dialog and a socket_handle.
| lhs | The left-hand side of the comparison. |
| rhs | The right-hand side of the comparison. |
std::strong_ordering indicating the result of the comparison. | std::invalid_argument | if the underlying socket is nullptr. |
| auto io::socket::operator<=> | ( | const socket_dialog< Mux > & | lhs, |
| native_socket_type | rhs | ||
| ) | -> std::strong_ordering |
Compares a socket_dialog and a native_socket.
| lhs | The left-hand side of the comparison. |
| rhs | The right-hand side of the comparison. |
std::strong_ordering indicating the result of the comparison. | std::invalid_argument | if the underlying socket is nullptr. |
| auto io::socket::operator== | ( | const socket_dialog< Mux > & | lhs, |
| const socket_dialog< Mux > & | rhs | ||
| ) | -> bool |
Checks for equality between two socket_dialog objects.
| lhs | The left-hand side of the comparison. |
| rhs | The right-hand side of the comparison. |
true if the two objects are equal, false otherwise. | std::invalid_argument | if the underlying socket of either side is nullptr. |
| auto io::socket::operator== | ( | const socket_dialog< Mux > & | lhs, |
| const socket_handle & | rhs | ||
| ) | -> bool |
Checks for equality between a socket_dialog and a socket_handle.
| lhs | The left-hand side of the comparison. |
| rhs | The right-hand side of the comparison. |
true if the two objects are equal, false otherwise. | std::invalid_argument | if the underlying socket is nullptr. |
| auto io::socket::operator== | ( | const socket_dialog< Mux > & | lhs, |
| native_socket_type | rhs | ||
| ) | -> bool |
Checks for equality between a socket_dialog and a native_socket.
| lhs | The left-hand side of the comparison. |
| rhs | The right-hand side of the comparison. |
true if the two objects are equal, false otherwise. | std::invalid_argument | if the underlying socket is nullptr. |