26#include <system_error>
57 { t.data() } -> std::convertible_to<const void*>;
58 { t.size() } -> std::convertible_to<std::size_t>;
77 { t.data() } -> std::convertible_to<void*>;
101 std::invocable<F, const std::vector<uint8_t>&>;
145template <
typename F,
typename Session>
160template <
typename F,
typename Session>
162 std::invocable<F, std::shared_ptr<Session>,
const std::vector<uint8_t>&>;
176template <
typename F,
typename Session>
178 std::invocable<F, std::shared_ptr<Session>, std::error_code>;
234 { t.is_connected() } -> std::convertible_to<bool>;
235 { t.send_packet(std::move(data)) };
258 { t.start_server(port) };
277 { t.get_session_id() } -> std::convertible_to<std::string>;
278 { t.start_session() };
279 { t.stop_session() };
303 { t.transform(data) } -> std::convertible_to<bool>;
322 { t.reverse_transform(data) } -> std::convertible_to<bool>;
346} && std::is_arithmetic_v<typename T::rep>;
A type that can serve as a network data buffer.
A callback type for handling connection state changes.
A callback type for handling received data.
A callback type for handling disconnection events with session ID.
A type that represents a time duration.
A callback type for handling network errors.
A mutable byte buffer that can be resized.
A type that satisfies basic network client requirements.
A type that satisfies basic network server requirements.
A type that represents a network session.
A callback type for reconnection attempt notifications.
A callback type for handling data received on a specific session.
A callback type for handling errors on a specific session.
A callback type for handling session events with a session pointer.
C++20 concepts for compile-time type validation in network_system.