Registry / serialization / deku
library0.20.3rscratesunverified

Bit level serialization/deserialization proc-macro for structs.

# Cargo.toml [dependencies] deku = "0.20.3"
INSTALL
IMPORT
SIG · DEKU
D
deku
serializationrustv0.20.3
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

DekuRead
use deku::DekuRead;

Defines a struct with bit-level deserialization using Deku.

use deku::DekuRead; #[derive(DekuRead)] struct MyStruct { field: u8, } fn main() { let data = vec![0x42]; let (_, val) = MyStruct::from_bytes((&data, 0)).unwrap(); println!("{:?}", val); }
Debug
Known issues
gotchaBit order and endianness must be explicitly specified; defaults may surprise.
fix
Use attributes like `#[deku(bits = "8")]` and `#[deku(endian = "big")]`.
affects: >=0.15.0
Upgrade
Version history
0.20.3latest on crates.io
Audit
Dependencies

No dependency data recorded yet.

Agent activity
17 hits · last 30 days
node
14
Amazon
2
Resources
deku — cargo add deku · libregistry