use libmhash::prelude::*;
fn main() {
let mut server = Builder::new()
.on_result(Some(|r: &HasherResult<HasherTag>| println!("{:#?}", r)))
.build()
.unwrap();
let mut sender = server.data_sender();
std::thread::spawn(move || {
let mut hashers = vec![];
hashers.push(HasherWrapper::new(
HasherTag::SHA1,
libmhash::paranoid_hash::SHA1::new(),
));
hashers.push(HasherWrapper::create_from_tag(HasherTag::MD5));
let mut fragment_sender = sender.fragment_sender("Temp Data", hashers);
let mut download_buffer = [0u8; 128];
for i in 0..128u8 {
download_buffer.fill(i);
fragment_sender.push_data(&download_buffer);
}
fragment_sender.push_last_data(&[]);
sender.end();
});
server.compute();
}