perfect-hash-generator 0.2.0.0 → 0.2.0.1
raw patch · 1 files changed
+4/−6 lines, 1 files
Files
perfect-hash-generator.cabal view
@@ -2,10 +2,10 @@ -- -- see: https://github.com/sol/hpack ----- hash: fc4c141081795a861f9768551508e74ca60a61d1b8061163c7ee9567b112173c+-- hash: 6cef8e50eddca58ff0fc0d93fe7604c3d1cf4f1de43ae0db0b7761fa5a7ed31d name: perfect-hash-generator-version: 0.2.0.0+version: 0.2.0.1 synopsis: Perfect minimal hashing implementation in native Haskell description: A <https://en.wikipedia.org/wiki/Perfect_hash_function perfect hash function> for a set @S@ is a hash function that maps distinct elements in @S@ to a set of integers, with __no collisions__. A <https://en.wikipedia.org/wiki/Perfect_hash_function#Minimal_perfect_hash_function minimal perfect hash function> is a perfect hash function that maps @n@ keys to @n@ __consecutive__ integers, e.g. the numbers from @0@ to @n-1@. .@@ -19,6 +19,7 @@ . = Usage The library is written generically to hash both strings and raw integers according to the <http://isthe.com/chongo/tech/comp/fnv/ FNV-1a algorithm>. Integers are split by octets before hashing.+ . > import Data.PerfectHash.Construction (createMinimalPerfectHash) > > tuples = [@@ -34,10 +35,7 @@ See the @hash-perfectly-strings-demo@ and @hash-perfectly-ints-demo@, as well as the test suite, for working examples. . > $ stack build- > $ stack exec hash-perfectly-strings-demo- .- = Caveats- Only integer keys of at most __32-bits__ have been demonstrated to work properly. Since the hash function masks to 32 bits, colliding 64-bit integers can hang the lookup table construction. + > $ stack exec hash-perfectly-strings-demo category: Data Structures, Embedded homepage: https://github.com/kostmo/perfect-hash-generator#readme bug-reports: https://github.com/kostmo/perfect-hash-generator/issues