Files
2026-08-05 17:14:04 +02:00
..
2026-08-05 17:14:04 +02:00
2026-08-01 22:43:09 +02:00
2026-08-01 22:43:09 +02:00

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.