This commit is contained in:
mehbark 2025-10-03 16:10:03 -04:00
parent 8caa7d894f
commit a1f5e6843a
Signed by: mbk
GPG key ID: E333EC1335FFCCDB

View file

@ -6,8 +6,10 @@ mod rle;
#[cfg(test)] #[cfg(test)]
mod test; mod test;
use bitvec::vec::BitVec;
pub use compression_scheme::CompressionScheme; pub use compression_scheme::CompressionScheme;
pub use freq::Freq; pub use freq::Freq;
pub use rle::Rle;
fn main() -> Result<(), io::Error> { fn main() -> Result<(), io::Error> {
let mut buf = Vec::new(); let mut buf = Vec::new();
@ -15,11 +17,16 @@ fn main() -> Result<(), io::Error> {
println!("Original: {len_src}"); println!("Original: {len_src}");
// let len_rle = rle::Encoder::new(&buf).count() * 2; let mut bitbuf = BitVec::new();
// println!(" Rle'd: {len_rle}");
// let len_freq = len_freq_table + len_freq_bits; let () = Rle::encode(&buf, &mut bitbuf);
// println!(" Freq'd: {len_freq}"); let len_rle = bitbuf.len().div_ceil(8);
println!(" Rle'd: {len_rle}");
bitbuf.clear();
let header = Freq::encode(&buf, &mut bitbuf);
let len_freq = Freq::header_size(&header) + bitbuf.len().div_ceil(8);
println!(" Freq'd: {len_freq}");
Ok(()) Ok(())
} }