pipes-zlib-0.3.1: Zlib compression and decompression for Pipes streams

Safe HaskellNone

Pipes.Zlib

Contents

Description

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

Synopsis

Streams

decompress :: MonadIO m => WindowBits -> Pipe ByteString ByteString m rSource

Decompress bytes flowing downstream.

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

compress :: MonadIO m => CompressionLevel -> WindowBits -> Pipe ByteString ByteString m rSource

Compress bytes flowing downstream.

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

Compression level

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

defaultCompression :: CompressionLevel

The default compression level is 6 (that is, biased towards higher compression at expense of speed).

noCompression :: CompressionLevel

No compression, just a block copy.

bestSpeed :: CompressionLevel

The fastest compression method (less compression)

bestCompression :: CompressionLevel

The slowest compression method (best compression).

compressionLevel :: Int -> CompressionLevel

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.

windowBits :: Int -> WindowBits

A specific compression window size, specified in bits in the range 8..15