vexil-runtime
Runtime support library for code generated by the Vexil schema compiler.
This crate is a dependency of generated Rust code, not of hand-written application code.
You typically add it when using vexil-codegen-rust.
What's included
BitWriter/BitReader— LSB-first bit-level I/O for sub-byte integer types (u1..u7)Pack/Unpacktraits — implemented by generated structs and enums- LEB128 — unsigned and signed variable-length integer encoding
- ZigZag — signed integer encoding (
i32/i64→ unsigned zigzag) WireError— structured error type for decode failures
Wire format
Vexil uses LSB-first bit packing. A u3 field occupies exactly 3 bits on the wire.
Fields are packed left-to-right within a byte, with no padding between fields unless
the total bit count is not byte-aligned.
License
Licensed under either of MIT or Apache-2.0 at your option.