#bytes #read #write #io

simple-bytes

A small and easy crate to mutate or read u8 slices

12 releases

0.2.11 Jun 12, 2022
0.2.10 Jun 12, 2022
0.2.9 Jan 22, 2022
0.2.7 Nov 26, 2021
0.1.1 Nov 24, 2020

#888 in Network programming

Download history 5/week @ 2022-11-24 2/week @ 2022-12-01 20/week @ 2022-12-08 4/week @ 2022-12-15 6/week @ 2022-12-22 26/week @ 2022-12-29 10/week @ 2023-01-05 10/week @ 2023-01-12 35/week @ 2023-01-19 25/week @ 2023-01-26 26/week @ 2023-02-02 59/week @ 2023-02-09 52/week @ 2023-02-16 26/week @ 2023-02-23 10/week @ 2023-03-02 34/week @ 2023-03-09

133 downloads per month
Used in 4 crates

MIT/Apache

42KB
1K SLoC

CI crates.io docs.rs

A small and easy crate to mutate or read u8 slices.

Reads or writes any number using the byte order "big-endian".

Read a slice

use simple_bytes::{Bytes, BytesRead};

let bytes: Vec<u8> = (0..255).collect();
let mut slice: Bytes = bytes.as_slice().into();

assert_eq!(0, slice.read_u8());
assert_eq!(1, slice.read_u8());
assert_eq!(515, slice.read_u16());

Write to a slice

use simple_bytes::{BytesMut, BytesRead, BytesWrite};

let mut bytes = [0u8; 10];
let mut slice = BytesMut::from(bytes.as_mut());

slice.write_u8(1);
slice.write_f32(1.234);
slice.write(&[1u8, 2u8]);
assert_eq!(3, slice.remaining().len());

No runtime deps