Home

Awesome

crates.io Documentation CI master Maintenance

static-bytes

The aim of this crate is to improve user experience when working with static bytes. Look at this pseudo code example to understand problem with &mut [u8] and bytes::buf::BufMut

let mut fixed_storage = [u8; 16];
let mut slice = fixed_storage[..];
let len_before = slice.len();
// declaration fn encode(&self, buf: &mut dyn BufMut);
frame.encode(&mut slice);
let len = len_before - slice.len();
let filled_bytes = fixed_storage[..len];

There are two problems with code above:

You can resolve both with SafeBytesSlice. For example usage see docs.

Compatibility with bytes

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

This project try follow rules:

This README was generated with cargo-readme from template