pipes-lzma-0.1.1.1: LZMA compressors and decompressors for the Pipes package

Safe HaskellNone
LanguageHaskell2010

Pipes.Lzma

Contents

Synopsis

Simple interface

compress :: forall m r. MonadIO m => Producer ByteString m r -> Producer ByteString m r Source #

Compress a ByteString.

Compression

compressWith :: forall m r. MonadIO m => CompressParams -> Producer ByteString m r -> Producer ByteString m r Source #

Compress a ByteString with a given set of CompressParams.

Parameters

defaultCompressParams :: CompressParams #

The default set of parameters for compression. This is typically used with the compressWith function with specific parameters overridden.

data CompressionLevel :: * #

Compression level presets that define the tradeoff between computational complexity and compression ratio

CompressionLevel0 has the lowest compression ratio as well as the lowest memory requirements, whereas CompressionLevel9 has the highest compression ratio and can require over 600MiB during compression (and over 60MiB during decompression). The man-page for xz(1) contains more detailed information with tables describing the properties of all compression level presets.

CompressionLevel6 is the default setting in defaultCompressParams as it provides a good trade-off and matches the default of the xz(1) tool.

compressLevelExtreme :: CompressParams -> Bool #

CompressParams field: Enable slower variant of the lzmaCompLevel preset, see xz(1) man-page for details.

compressIntegrityCheck :: CompressParams -> IntegrityCheck #

CompressParams field: Specify type of integrity check

Decompression

decompressWith :: forall m r. MonadIO m => DecompressParams -> Producer ByteString m r -> Producer ByteString m (Producer ByteString m r) Source #

Decompress a ByteString with a given set of DecompressParams.

Parameters

defaultDecompressParams :: DecompressParams #

The default set of parameters for decompression. This is typically used with the decompressWith function with specific parameters overridden.

decompressTellNoCheck :: DecompressParams -> Bool #

DecompressParams field: If set, abort if decoded stream has no integrity check.

decompressTellUnsupportedCheck :: DecompressParams -> Bool #

DecompressParams field: If set, abort (via LzmaRetGetCheck) if decoded stream integrity check is unsupported.

decompressTellAnyCheck :: DecompressParams -> Bool #

DecompressParams field: If set, abort (via LzmaRetGetCheck) as soon as the type of the integrity check has been detected.

decompressConcatenated :: DecompressParams -> Bool #

DecompressParams field: If set, concatenated files as decoded seamless.

decompressAutoDecoder :: DecompressParams -> Bool #

DecompressParams field: If set, legacy .lzma-encoded streams are allowed too.

decompressMemLimit :: DecompressParams -> Word64 #

DecompressParams field: decompressor memory limit. Set to maxBound to disable memory limit.