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


-- | Bindings to the Google Snappy library for fast compression/decompression
--   
--   This library provides fast, pure Haskell bindings to Google's Snappy
--   compression and decompression library:
--   <a>http://code.google.com/p/snappy/</a>
@package snappy
@version 0.2.0.2


-- | This module provides fast, pure Haskell bindings to Google's Snappy
--   compression and decompression library:
--   <a>http://code.google.com/p/snappy/</a>
--   
--   These functions operate on strict bytestrings, and thus use as much
--   memory as both the entire compressed and uncompressed data.
module Codec.Compression.Snappy

-- | Compress data into the Snappy format.
compress :: ByteString -> ByteString

-- | Decompress data in the Snappy format.
--   
--   If the input is not compressed or is corrupt, an exception will be
--   thrown.
decompress :: ByteString -> ByteString


-- | This module provides fast, pure zero-copy compression and
--   decompression of lazy <a>ByteString</a> data using the Snappy format.
--   
--   Although these functions operate on lazy <a>ByteString</a>s, they
--   consume the data <i>strictly</i>: they do not produce any output until
--   they have consumed all of the input, and they produce the output in a
--   single large chunk.
--   
--   If your data is already in the form of a lazy <a>ByteString</a>, it is
--   likely more efficient to use these functions than to convert your data
--   to and from strict ByteStrings, as you can avoid the additional
--   allocation and copying that would entail.
module Codec.Compression.Snappy.Lazy

-- | Compress data into the Snappy format.
compress :: ByteString -> ByteString

-- | Decompress data in the Snappy format.
--   
--   If the input is not compressed or is corrupt, an exception will be
--   thrown.
decompress :: ByteString -> ByteString
instance Foreign.Storable.Storable Codec.Compression.Snappy.Lazy.BS
