pipes-zlib-0.2.0.0: Pipes to deal with zlib compressed data.

Safe HaskellNone

Control.Proxy.Zlib

Contents

Description

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

Synopsis

Streams

decompressD :: Proxy p => WindowBits -> () -> Pipe p ByteString ByteString IO rSource

Decompress bytes flowing downstream using the given WindowBits.

See the Codec.Zlib module for details about this values.

compressD :: Proxy p => CompressionLevel -> WindowBits -> () -> Pipe p ByteString ByteString IO rSource

Compress bytes flowing downstream.

See the Codec.Zlib module for details about these values.

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