4 releases
0.1.3 | Mar 18, 2019 |
---|---|
0.1.2 | Mar 10, 2019 |
0.1.1 | Mar 10, 2019 |
0.1.0 | Mar 9, 2019 |
#8 in #byteorder
16KB
203 lines
ByteArray
A library that supports Java
-like series processing.
This is useful when you already know the format of your data.
On the other hand, the processing of invalid data is relatively poor,
so it is not recommended to use it for uncertain data.
Installation
[dependencies]
byte_array = "0.1"
Usage
use byte_array::ByteArray;
fn main() {
// Create an empty ByteArray
let mut ba = ByteArray::new();
// Input data
let a: f64 = 3.14;
let b: u16 = 1234;
let c: String = String::from("hello");
// Write data to ByteArray
ba.write(&a);
// ( Using Operator <<= )
ba <<= &b;
ba <<= &c;
// Read data from ByteArray
ba.seek_first();
assert_eq!(a, ba.read::<f64>()); // 3.14
assert_eq!(b, ba.read_safe::<u16>().unwrap()); // 1234
assert_eq!(c, ba.read::<String>()); // "hello"
}
Supported Data Types
Data Type | Supported |
---|---|
bool | Yes |
u8 | Yes |
u16 | Yes |
u32 | Yes |
u64 | Yes |
u128 | Yes |
i8 | Yes |
i16 | Yes |
i32 | Yes |
i64 | Yes |
i128 | Yes |
f32 | Yes |
f64 | Yes |
--------------- | ----------- |
usize as u64 | Yes |
isize as i64 | Yes |
--------------- | ----------- |
Vec | Yes |
String | Yes |
ByteArray | Yes |
User-Defined | Optional |
Documentation
License
Distributed under MIT License since 2019.
Dependencies
~115KB