#1 - quicr module
This commit is contained in:
@@ -0,0 +1,18 @@
|
||||
# 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.
|
||||
Reference in New Issue
Block a user