pipes-zlib-0.4.4: Zlib and GZip compression and decompression for Pipes streams

Safe HaskellNone
LanguageHaskell98

Pipes.Zlib

Contents

Description

This module exports utilities to compress and decompress pipes streams using the zlib compression codec.

If you want to compress or decompress GZip streams, use the Pipes.GZip module instead.

Synopsis

Streams

decompress Source

Arguments

:: MonadIO m 
=> WindowBits 
-> Proxy x' x () ByteString m r

Compressed stream

-> Proxy x' x () ByteString m r

Decompressed stream

Decompress bytes flowing from a Producer.

See the Codec.Compression.Zlib module for details about WindowBits.

decompress :: MonadIO m
           => WindowBits
           => Producer ByteString m r
           -> Producer ByteString m r

decompress' Source

Arguments

:: MonadIO m 
=> WindowBits 
-> Producer ByteString m r

Compressed stream

-> Producer ByteString m (Either (Producer ByteString m r) r)

Decompressed stream, ending with either leftovers or a result

Decompress bytes flowing from a Producer, returning any leftover input that follows the compressed stream.

compress Source

Arguments

:: MonadIO m 
=> CompressionLevel 
-> WindowBits 
-> Proxy x' x () ByteString m r

Decompressed stream

-> Proxy x' x () ByteString m r

Compressed stream

Compress bytes flowing from a Producer.

See the Codec.Compression.Zlib module for details about CompressionLevel and WindowBits.

compress :: MonadIO m
         => CompressionLevel
         -> WindowBits
         -> Producer ByteString m r
         -> Producer ByteString m r

Compression levels

compressionLevel :: Int -> CompressionLevel Source

A specific compression level between 0 and 9.

Window size

The following are re-exported from Codec.Compression.Zlib for your convenience.

defaultWindowBits :: WindowBits

The default WindowBits is 15 which is also the maximum size.