Expand description

The encoder and decoder of the ZLIB format.

The ZLIB format is defined in RFC-1950.


use std::io::{self, Read};
use libflate::zlib::Encoder;
use libflate::non_blocking::zlib::Decoder;

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

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

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


ZLIB decoder which supports non-blocking I/O.