deflate-rs
An rust implementation of a DEFLATE encoder. Not a direct port, but does take some inspiration from zlib and zopfli(for huffman code length generation).
So far, in-memory deflate encoding with and without zlib metadata (no zlib dictionary or gzip support yet) has been is implemented. No unsafe code has been used. Currently not very optimised, and is very slow on larger files.
Usage:
let data = ...;
let compressed = deflate_bytes;
Other deflate/zlib rust projects from various people
- libflate Bindings to miniz.c that are part of the rust distribution.
- flate2 FLATE, Gzip, and Zlib bindings for Rust
- Zopfli in Rust Rust port of zopfli
- inflate DEFLATE decoder implemented in rust
- miniz-rs Direct rust translation of miniz.c
License
deflate is distributed under the terms of both the MIT and Apache 2.0 licences.
bitstream.rs is © @nwin and was released under both MIT and Apache 2.0
The test data (src/pg11.txt) is borrowed from Project Gutenberg and is available under public domain, or the Project Gutenberg Licence