simple_bytes/
lib.rs

1
2//! A small and easy crate to mutate or read u8 slices.
3//!
4//! Reads or writes any number using the byte order "big-endian".
5//!
6//! ## Read a slice
7//!
8//! ```
9//! use simple_bytes::{Bytes, BytesRead};
10//! 
11//! let bytes: Vec<u8> = (0..255).collect();
12//! let mut slice: Bytes = bytes.as_slice().into();
13//!
14//! assert_eq!(0, slice.read_u8());
15//! assert_eq!(1, slice.read_u8());
16//! assert_eq!(515, slice.read_u16());
17//! ```
18//!
19//! ## Write to a slice
20//!
21//! ```
22//! use simple_bytes::{BytesMut, BytesRead, BytesWrite};
23//! 
24//! let mut bytes = [0u8; 10];
25//! let mut slice = BytesMut::from(bytes.as_mut());
26//!
27//! slice.write_u8(1);
28//! slice.write_f32(1.234);
29//! slice.write(&[1u8, 2u8]);
30//! assert_eq!(3, slice.remaining().len());
31//! ```
32
33mod util;
34
35mod cursor;
36pub use cursor::Cursor;
37
38mod offset;
39pub use offset::Offset;
40
41mod bytes;
42pub use bytes::Bytes;
43
44mod bytes_mut;
45pub use bytes_mut::BytesMut;
46
47mod bytes_owned;
48pub use bytes_owned::BytesOwned;
49
50mod bytes_array;
51pub use bytes_array::BytesArray;
52
53mod bytes_read;
54pub use bytes_read::{BytesRead, ReadError, BytesReadRef};
55
56mod bytes_write;
57pub use bytes_write::{BytesWrite, WriteError};
58
59mod bytes_seek;
60pub use bytes_seek::{BytesSeek, SeekError};