[go: up one dir, main page]

libflate/
lib.rs

1//! A Rust implementation of DEFLATE algorithm and related formats (ZLIB, GZIP).
2
3#![forbid(unsafe_code)]
4#![warn(missing_docs)]
5#![cfg_attr(not(feature = "std"), no_std)]
6
7pub use finish::Finish;
8extern crate alloc;
9
10macro_rules! invalid_data_error {
11    ($fmt:expr) => {
12        invalid_data_error!($fmt, "")
13    };
14    ($fmt:expr, $($arg:tt)*) => {
15        ::core2::io::Error::new(::core2::io::ErrorKind::InvalidData, $fmt)
16    };
17}
18
19macro_rules! finish_try {
20    ($e:expr) => {
21        match $e.unwrap() {
22            (inner, None) => inner,
23            (inner, error) => return crate::finish::Finish::new(inner, error),
24        }
25    };
26}
27
28pub mod deflate;
29pub mod finish;
30pub mod gzip;
31pub mod lz77;
32pub mod non_blocking;
33pub mod zlib;
34
35mod bit;
36mod checksum;
37mod huffman;
38mod util;