|
| 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 |