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


-- | Conduit interface for lzma/xz compression.
--   
--   High level bindings to xz-utils.
@package lzma-conduit
@version 1.1.3.1

module Bindings.Lzma
type C'lzma_ret = CUInt
c'LZMA_OK :: (Num a) => a
c'LZMA_STREAM_END :: (Num a) => a
c'LZMA_NO_CHECK :: (Num a) => a
c'LZMA_UNSUPPORTED_CHECK :: (Num a) => a
c'LZMA_GET_CHECK :: (Num a) => a
c'LZMA_MEM_ERROR :: (Num a) => a
c'LZMA_MEMLIMIT_ERROR :: (Num a) => a
c'LZMA_FORMAT_ERROR :: (Num a) => a
c'LZMA_OPTIONS_ERROR :: (Num a) => a
c'LZMA_DATA_ERROR :: (Num a) => a
c'LZMA_BUF_ERROR :: (Num a) => a
c'LZMA_PROG_ERROR :: (Num a) => a
type C'lzma_action = CUInt
c'LZMA_RUN :: (Num a) => a
c'LZMA_SYNC_FLUSH :: (Num a) => a
c'LZMA_FULL_FLUSH :: (Num a) => a
c'LZMA_FINISH :: (Num a) => a
c'LZMA_TELL_NO_CHECK :: (Num a) => a
c'LZMA_TELL_UNSUPPORTED_CHECK :: (Num a) => a
c'LZMA_TELL_ANY_CHECK :: (Num a) => a
c'LZMA_CONCATENATED :: (Num a) => a
type C'lzma_check = CUInt
c'LZMA_CHECK_NONE :: (Num a) => a
c'LZMA_CHECK_CRC32 :: (Num a) => a
c'LZMA_CHECK_CRC64 :: (Num a) => a
c'LZMA_CHECK_SHA256 :: (Num a) => a
c'LZMA_PRESET_DEFAULT :: (Num a) => a
c'LZMA_PRESET_LEVEL_MASK :: (Num a) => a
c'LZMA_PRESET_EXTREME :: (Num a) => a
data C'lzma_stream
C'lzma_stream :: Ptr CUChar -> CSize -> CULong -> Ptr CUChar -> CSize -> CULong -> C'lzma_stream
[c'lzma_stream'next_in] :: C'lzma_stream -> Ptr CUChar
[c'lzma_stream'avail_in] :: C'lzma_stream -> CSize
[c'lzma_stream'total_in] :: C'lzma_stream -> CULong
[c'lzma_stream'next_out] :: C'lzma_stream -> Ptr CUChar
[c'lzma_stream'avail_out] :: C'lzma_stream -> CSize
[c'lzma_stream'total_out] :: C'lzma_stream -> CULong
c'lzma_code :: Ptr C'lzma_stream -> C'lzma_action -> IO C'lzma_ret
c'lzma_end :: Ptr C'lzma_stream -> IO ()
c'lzma_memusage :: Ptr C'lzma_stream -> IO CULong
p'lzma_code :: FunPtr (Ptr C'lzma_stream -> C'lzma_action -> IO C'lzma_ret)
p'lzma_stream'next_in :: Ptr (C'lzma_stream) -> Ptr (Ptr CUChar)
c'lzma_memlimit_get :: Ptr C'lzma_stream -> IO CULong
p'lzma_end :: FunPtr (Ptr C'lzma_stream -> IO ())
p'lzma_memusage :: FunPtr (Ptr C'lzma_stream -> IO CULong)
c'lzma_memlimit_set :: Ptr C'lzma_stream -> CULong -> IO C'lzma_ret
p'lzma_stream'avail_in :: Ptr (C'lzma_stream) -> Ptr (CSize)
p'lzma_memlimit_get :: FunPtr (Ptr C'lzma_stream -> IO CULong)
p'lzma_memlimit_set :: FunPtr (Ptr C'lzma_stream -> CULong -> IO C'lzma_ret)
p'lzma_stream'total_in :: Ptr (C'lzma_stream) -> Ptr (CULong)
c'lzma_easy_encoder_memusage :: CInt -> IO CULong
c'lzma_easy_decoder_memusage :: CInt -> IO CULong
p'lzma_stream'next_out :: Ptr (C'lzma_stream) -> Ptr (Ptr CUChar)
p'lzma_easy_encoder_memusage :: FunPtr (CInt -> IO CULong)
c'lzma_easy_encoder :: Ptr C'lzma_stream -> CInt -> C'lzma_check -> IO C'lzma_ret
p'lzma_easy_decoder_memusage :: FunPtr (CInt -> IO CULong)
c'lzma_auto_decoder :: Ptr C'lzma_stream -> CULong -> CUInt -> IO C'lzma_ret
p'lzma_stream'avail_out :: Ptr (C'lzma_stream) -> Ptr (CSize)
p'lzma_easy_encoder :: FunPtr (Ptr C'lzma_stream -> CInt -> C'lzma_check -> IO C'lzma_ret)
pokeNextIn :: Ptr C'lzma_stream -> Ptr a -> IO ()
p'lzma_auto_decoder :: FunPtr (Ptr C'lzma_stream -> CULong -> CUInt -> IO C'lzma_ret)
p'lzma_stream'total_out :: Ptr (C'lzma_stream) -> Ptr (CULong)
pokeAvailIn :: Ptr C'lzma_stream -> CSize -> IO ()
pokeNextOut :: Ptr C'lzma_stream -> Ptr a -> IO ()
pokeAvailOut :: Ptr C'lzma_stream -> CSize -> IO ()
peekNextIn :: Ptr C'lzma_stream -> IO (Ptr a)
peekAvailIn :: Ptr C'lzma_stream -> IO CSize
peekNextOut :: Ptr C'lzma_stream -> IO (Ptr a)
peekAvailOut :: Ptr C'lzma_stream -> IO CSize
instance GHC.Show.Show Bindings.Lzma.C'lzma_stream
instance GHC.Classes.Eq Bindings.Lzma.C'lzma_stream
instance Foreign.Storable.Storable Bindings.Lzma.C'lzma_stream

module Data.Conduit.Lzma

-- | Compress a <a>ByteString</a> into a xz container stream.
compress :: (MonadResource m) => Maybe Int -> Conduit ByteString m ByteString

-- | Decompress a <a>ByteString</a> from a lzma or xz container stream.
decompress :: (MonadResource m) => Maybe Word64 -> Conduit ByteString m ByteString
