io
Transport-agnostic I/O primitives shared by the networking modules.
Header-only (tw::io), namespace tw::net.
| Path | Contents |
|---|---|
io/Read.hpp, io/Write.hpp |
Read<T> / Write<T> interfaces every stream implements (read_into, write, flush, plus read_exact helpers) |
io/BufferReader.hpp, io/BufferWriter.hpp |
Buffering decorators that wrap another Read<T> / Write<T> |
bytebuffer/ByteBuffer.hpp |
RingByteBuffer — circular buffer over a caller-owned std::span |
bytebuffer/ByteBufferReader.hpp, ByteBufferWriter.hpp |
Linear cursor read/write over a std::span |
bytebuffer/ByteBufferCodec.hpp, ByteBufferEncoder.hpp, ByteBufferDecoder.hpp |
Typed push/pop on top of RingByteBuffer, specialize ByteBufferCodec<T> for custom types |
NetworkError.hpp |
errno-backed error type returned by Read / Write |
This module owns no sockets and links no transport — it sits below tw::network
and tw::quicr so both can share buffers and stream interfaces without depending
on each other.