| Crates.io | bufkit |
| lib.rs | bufkit |
| version | 0.5.1 |
| created_at | 2025-07-31 16:49:29.968908+00 |
| updated_at | 2025-08-21 07:35:23.779911+00 |
| description | Memory-backed buffer toolkit with Chunk/ChunkMut traits for predictable, explicit, and retry-friendly access; ideal for Sans-I/O style protocol parsers, database engines, and embedded systems. |
| homepage | https://github.com/al8n/bufkit |
| repository | https://github.com/al8n/bufkit |
| max_upload_size | |
| id | 1775345 |
| size | 367,534 |
no_std-friendly, memory-backed buffer toolkit designed for Sans-I/O style encoding and decoding.
Provides Chunk (read-only view), ChunkMut (mutable view), and helpers for explicit, convenient bounds-checked access.
bufkit is a small, focused toolkit for working with in-memory buffers in a predictable, controlled way.
It’s Sans-I/O friendly — meaning it’s easy to integrate into network protocol parsers, database engines, binary file format decoders/encoders, and embedded systems that follow the Sans-I/O design pattern — but it doesn’t implement any I/O itself.
Option, or detailed Result with requested vs. available byte counts.Chunk/ChunkMut views into the same buffer.no_std & no_alloc ready – works in embedded and constrained environments.try_* methods enable robust partial read/write handling.[dependencies]
bufkit = "0.5"
| Feature | Default? | Description |
|---|---|---|
std |
Yes | Enables std integration |
alloc |
No | Enables heap-allocated buffer support |
varint |
No | LEB128 encoding & decoding |
bytes_1 |
No | Enable integration with bytes 1.x |
bytes::{Buf, BufMut}: Buffer traits for the bytes may or may not be stored in contiguous memory.buffer-trait: A Buffer trait for reading into uninitialized buffers.bufkit is under the terms of both the MIT license and the
Apache License (Version 2.0).
See LICENSE-APACHE, LICENSE-MIT for details.
Copyright (c) 2025 Al Liu.