-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/

-- | Enumerator interface for zlib compression
--   
--   zlib-enum is a stop-gap package to provide enumeratees for zlib
--   compression/decompression.
@package zlib-enum
@version 0.2.3.1

module Codec.Zlib.Enum

-- | Compress (deflate) a stream of ByteStrings. The
--   WindowBits also control the format (zlib vs. gzip).
compress :: MonadIO m => Int -> WindowBits -> Enumeratee ByteString ByteString m a

-- | Decompress (inflate) a stream of ByteStrings. For example:
--   
--   
--   run $ enumFile "test.z" $$ decompress defaultWindowBits $$ printChunks True
--   
decompress :: MonadIO m => WindowBits -> Enumeratee ByteString ByteString m a

-- | Gzip compression with default parameters.
gzip :: MonadIO m => Enumeratee ByteString ByteString m a

-- | Gzip decompression with default parameters.
ungzip :: MonadIO m => Enumeratee ByteString ByteString m a
data WindowBits :: *
WindowBits :: Int -> WindowBits
defaultWindowBits :: WindowBits

-- | Exception that can be thrown from the FFI code. The parameter is the
--   numerical error code from the zlib library. Quoting the zlib.h file
--   directly:
--   
--   
--   
- #define Z_OK 0
--   
- #define Z_STREAM_END 1
--   
- #define Z_NEED_DICT 2
--   
- #define Z_ERRNO (-1)
--   
- #define Z_STREAM_ERROR (-2)
--   
- #define Z_DATA_ERROR (-3)
--   
- #define Z_MEM_ERROR (-4)
--   
- #define Z_BUF_ERROR (-5)
--   
- #define Z_VERSION_ERROR (-6)
--   
data ZlibException :: *
