Crates.io | bra |
lib.rs | bra |
version | 0.1.1 |
source | src |
created_at | 2019-02-26 16:23:24.890051 |
updated_at | 2021-01-03 15:05:45.188156 |
description | Buffered random access to sequential data sources |
homepage | |
repository | https://github.com/Enet4/bra-rs |
max_upload_size | |
id | 117396 |
size | 27,472 |
Buffered Random Access (BRA) provides easy random memory access to a sequential source of data in Rust. This is achieved by greedily retaining all memory read from a given source.
Please see the documentation for additional info.
use std::io::Read;
use bra::GreedyAccessReader;
let reader = get_reader();
let mut reader = GreedyAccessReader::new(reader);
// random access to bytes!
let k: u8 = reader.get(12)?;
// random slicing!
let s: &[u8] = reader.slice(20..48)?;
assert_eq!(s.len(), 28);
// also functions as a buffered reader
let mut chunk = [0; 20];
reader.read_exact(&mut chunk)?;
Licensed under either of
at your option.
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.