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


-- | A Haskell implementation of the xxHash algorithm
--   
--   A Haskell implementation of the xxHash algorithm, for fast
--   non-cryptographic checksums of ByteStrings.
@package xxhash
@version 0.0.2


-- | This module provides a pure implementation of the xxHash algorithm.
--   
--   This implementation is almost as fast as the C version, which is
--   avaliable as c_xxHash'.
--   
--   Criterion benchmarks are avaliable via cabal bench.
--   
--   More information on the algorithm may be found here:
--   <a>https://code.google.com/p/xxhash/</a>
module Data.Digest.XXHash
type XXHash = Word32

-- | Hash a lazy ByteString.
xxHash :: ByteString -> XXHash

-- | Hash a strict ByteString.
xxHash' :: ByteString -> XXHash

-- | Hash a strict ByteString using the C implementation, the length of the
--   ByteString should be limited to 2^31-1 or the results will be invalid.
--   
--   This is mostly used internally for benchmarking and verification. It's
--   use in production is not recommended.
c_xxHash' :: ByteString -> XXHash
instance GHC.Show.Show Data.Digest.XXHash.XXHashCtx
instance GHC.Classes.Eq Data.Digest.XXHash.XXHashCtx
instance Crypto.Classes.Hash Data.Digest.XXHash.XXHashCtx Data.Digest.XXHash.XXHash
