{-# LANGUAGE ForeignFunctionInterface #-} -- | Intended for qualified import: -- -- > import Codec.Compression.SnappyC.Internal.C qualified as C module Codec.Compression.SnappyC.Internal.C ( -- * Compression snappy_compress , snappy_max_compressed_length -- * Decompression , snappy_uncompress , snappy_uncompressed_length ) where import Foreign import Foreign.C foreign import ccall unsafe "snappy-c.h snappy_compress" snappy_compress :: CString -- ^ Source buffer -> CSize -- ^ Source buffer size -> CString -- ^ Target buffer -> Ptr CSize -- ^ Target buffer size -> CInt -- ^ Status indicator (0 => Ok, 1 => Invalid input, 2 => Target buffer too small) foreign import ccall unsafe "snappy-c.h snappy_max_compressed_length" snappy_max_compressed_length :: CSize -- ^ Source buffer size -> CSize -- ^ Max size after compression foreign import ccall unsafe "snappy-c.h snappy_uncompress" snappy_uncompress :: CString -- ^ Compressed -> CSize -- ^ Compressed length -> CString -- ^ Uncompressed (target) buffer -> Ptr CSize -- ^ Uncompressed length -> CInt -- ^ Status indicator (0 => Ok, 1 => Invalid input, 2 => Target buffer too small) foreign import ccall unsafe "snappy-c.h snappy_uncompressed_length" snappy_uncompressed_length :: CString -- ^ Compressed buffer -> CSize -- ^ Compressed length -> Ptr CSize -- ^ Result -> CInt -- ^ Status indicator (0 => Ok, 1 => Invalid input)