1#![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;