Network System 0.1.1
High-performance modular networking library for scalable client-server applications
Loading...
Searching...
No Matches
kcenon::network::concepts::NetworkClient Concept Reference

A type that satisfies basic network client requirements. More...

#include <network_concepts.h>

Concept definition

template<typename T>
concept kcenon::network::concepts::NetworkClient = requires(T t, std::vector<uint8_t> data) {
{ t.is_connected() } -> std::convertible_to<bool>;
{ t.send_packet(std::move(data)) };
{ t.stop_client() };
}
A type that satisfies basic network client requirements.

Detailed Description

A type that satisfies basic network client requirements.

Types satisfying this concept can connect to servers, send data, and check connection status.

Example usage:

template<NetworkClient Client>
void use_client(Client& client) {
if (client.is_connected()) {
std::vector<uint8_t> data = {1, 2, 3};
client.send_packet(std::move(data));
}
}

Definition at line 233 of file network_concepts.h.