Module libflate::zlib

source ·
Expand description

The encoder and decoder of the ZLIB format.

The ZLIB format is defined in RFC-1950.

§Examples

#[cfg(not(feature = "no_std"))]
use std::io::{Read, Write};
#[cfg(feature = "no_std")]
use core2::io::{Read, Write};
use libflate::zlib::{Encoder, Decoder};

// Encoding
let mut encoder = Encoder::new(Vec::new()).unwrap();
encoder.write_all(&b"Hello World!"[..]).unwrap();
let encoded_data = encoder.finish().into_result().unwrap();

// Decoding
let mut decoder = Decoder::new(&encoded_data[..]).unwrap();
let mut decoded_data = Vec::new();
decoder.read_to_end(&mut decoded_data).unwrap();

assert_eq!(decoded_data, b"Hello World!");

Structs§

Enums§

  • Compression levels defined by the ZLIB format.
  • zlib library specific parameter for defining behavior when Write::flush method is called.
  • LZ77 Window sizes defined by the ZLIB format.