108 auto process_data(std::span<const uint8_t> data) -> void;
119 auto create_text_message(std::string&&
text) -> std::vector<uint8_t>;
130 auto create_binary_message(std::vector<uint8_t>&& data)
131 -> std::vector<uint8_t>;
142 auto create_ping(std::vector<uint8_t>&& payload = {})
143 -> std::vector<uint8_t>;
153 auto create_pong(std::vector<uint8_t>&& payload = {})
154 -> std::vector<uint8_t>;
165 auto create_close(
ws_close_code code, std::string&& reason =
"")
166 -> std::vector<uint8_t>;
176 auto set_message_callback(std::function<
void(
const ws_message&)> callback)
187 auto set_ping_callback(
188 std::function<
void(
const std::vector<uint8_t>&)> callback) -> void;
198 auto set_pong_callback(
199 std::function<
void(
const std::vector<uint8_t>&)> callback) -> void;
209 auto set_close_callback(
210 std::function<
void(
ws_close_code,
const std::string&)> callback) -> void;
230 auto process_frames() -> void;
241 const std::vector<uint8_t>& payload) -> void;
252 const std::vector<uint8_t>& payload) -> void;
261 auto handle_ping(
const std::vector<uint8_t>& payload) -> void;
270 auto handle_pong(
const std::vector<uint8_t>& payload) -> void;
279 auto handle_close(
const std::vector<uint8_t>& payload) -> void;
289 static auto is_valid_utf8(
const std::vector<uint8_t>& data) -> bool;