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

-- | Immutable hash
--   
--   Pure immutable hash whose lookup is O(1)
@package static-hash
@version 0.0.2

-- | Pure immutable hash whose lookup is O(1) on the average, but O(N) in
--   the worst case.
module Data.StaticHash

-- | Data type for immutable hashes.
data StaticHash k v

-- | Creating StaticHash from a list. A prime around the length of
--   the list x 2 is chosen for the size of array. This may prevent
--   collisions.
fromList :: (Eq k, Ord k, Hashable k) => [(k, v)] -> StaticHash k v

-- | Creating StaticHash from a list and its size.
fromList' :: (Eq k, Ord k, Hashable k) => Int -> [(k, v)] -> StaticHash k v

-- | Looking up StaticHash.
lookup :: (Eq k, Ord k, Hashable k) => k -> StaticHash k v -> Maybe v
instance (GHC.Internal.Show.Show k, GHC.Internal.Show.Show v) => GHC.Internal.Show.Show (Data.StaticHash.Some k v)
instance (GHC.Internal.Show.Show k, GHC.Internal.Show.Show v) => GHC.Internal.Show.Show (Data.StaticHash.StaticHash k v)
