|
Data.Digest.Murmur64 | Portability | portable | Stability | experimental | Maintainer | nominolo@gmail.com |
|
|
|
Description |
Type class and primitives for constructing 64 bit hashes using the
MurmurHash2 algorithm. See http://murmurhash.googlepages.com for
details on MurmurHash2.
|
|
Synopsis |
|
|
|
Documentation |
|
data Hash64 |
A 64 bit hash.
| Instances | |
|
|
asWord64 :: Hash64 -> Word64 |
Extract 64 bit word from hash.
|
|
class Hashable64 a where |
| Methods | | | Instances | Hashable64 Bool | | Hashable64 Char | | Hashable64 Int | | Hashable64 Integer | | Hashable64 Word64 | | Hashable64 () | | Hashable64 a => Hashable64 [a] | | Hashable64 a => Hashable64 (Maybe a) | | (Hashable64 a, Hashable64 b) => Hashable64 (Either a b) | | (Hashable64 a, Hashable64 b) => Hashable64 (a, b) | | (Hashable64 a, Hashable64 b, Hashable64 c) => Hashable64 (a, b, c) | | (Hashable64 a, Hashable64 b, Hashable64 c, Hashable64 d) => Hashable64 (a, b, c, d) | |
|
|
|
hash64AddWord64 :: Word64 -> Hash64 -> Hash64 |
Add a 64 bit word to the hash.
|
|
hash64AddInt :: Int -> Hash64 -> Hash64 |
|
hash64 :: Hashable64 a => a -> Hash64 |
Create a hash using the default seed.
|
|
hash64WithSeed :: Hashable64 a => Word64 -> a -> Hash64 |
Create a hash using a custom seed.
h
The seed should be non-zero, but other than that can be an
arbitrary number. Different seeds will give different hashes, and
thus (most likely) different hash collisions.
|
|
combine :: (Hash64 -> Hash64) -> (Hash64 -> Hash64) -> Hash64 -> Hash64 |
Combine two hash generators. E.g.,
hashFoo (Foo a) = hash64AddInt 1 combine hash64Add a
|
|
Produced by Haddock version 2.7.2 |