9 releases (4 stable)
| 3.0.0 | Sep 24, 2025 |
|---|---|
| 2.0.0 | Jul 9, 2025 |
| 1.2.0 | Aug 20, 2024 |
| 1.0.0 | Mar 21, 2024 |
| 0.1.1 | Jul 1, 2021 |
#15 in #stratum
5,987 downloads per month
Used in 25 crates
(2 directly)
155KB
3K
SLoC
binary_codec_sv2
binary_codec_sv2 is a no_std Rust crate that helps serialize and de-serialize binary data into and from Stratum V2 types.
Key Features
- Comprehensive Encoding and Decoding: Provides traits (
Encodable,Decodable) for converting between Rust and SV2 data types/structures. - Support for Complex Data Structures: Handles primitives, nested structures, and protocol-specific types like
U24,U256,Str0255and rest. - Error Handling: Robust mechanisms for managing encoding/decoding failures, including size mismatches and invalid data.
no_stdCompatibility: Fully supports constrained environments without the Rust standard library.
Sv2 Type Mapping
The crate supports the following mappings between Rust and SV2 types
| Rust Type | Sv2 Type |
|---|---|
bool |
BOOL |
u8 |
U8 |
u16 |
U16 |
U24 |
U24 |
u32 |
U32 |
u64 |
U64 |
f32 |
F32 |
Str0255 |
STRO_255 |
Signature |
SIGNATURE |
[u8] |
BYTES |
Seq0255 |
SEQ0_255[T] |
Seq064K |
SEQ0_64K[T] |
Installation
Add binary_codec_sv2 to your project by running:
cargo add binary_codec_sv2
Dependencies
~0–280KB