multifile/
multifile.rs

1use std::io::{Cursor, Read};
2
3use exact_reader::{File, MultiFile};
4
5fn into_file(value: Cursor<Vec<u8>>) -> File<Cursor<Vec<u8>>> {
6    let len = value.get_ref().len();
7    File {
8        file: value,
9        size: len,
10        filename: "cursor".to_string(),
11    }
12}
13
14fn main() {
15    let a: Cursor<Vec<u8>> = Cursor::new(vec![1u8, 2, 3]);
16    let b: Cursor<Vec<u8>> = Cursor::new(vec![4u8, 5, 6]);
17
18    let mut file = MultiFile::new(vec![into_file(a), into_file(b)]);
19    let mut buf = [0u8; 4];
20    file.read(&mut buf).unwrap();
21    assert_eq!(buf, [1, 2, 3, 4])
22}