speed optimizations + progress bar

This commit is contained in:
2021-11-25 22:43:39 +01:00
parent 5e82c65c18
commit 5fedc032a9
8 changed files with 183 additions and 44 deletions

View File

@@ -18,8 +18,18 @@ fn main() -> Result<()> {
let packed_data = if fast {
upkr::pack_fast(&data)
} else {
upkr::pack(&data)
let mut pb = pbr::ProgressBar::new(data.len() as u64);
pb.set_units(pbr::Units::Bytes);
let packed_data = upkr::pack(
&data,
Some(&mut |pos| {
pb.set(pos as u64);
}),
);
pb.finish();
packed_data
};
println!("Compressed {} bytes to {} bytes ({}%)", data.len(), packed_data.len(), packed_data.len() as f32 * 100. / data.len() as f32);
File::create(outfile)?.write_all(&packed_data)?;
}
Some("unpack") => {