vault-0.3.1.3: a persistent store for values of arbitrary types

Safe HaskellSafe
LanguageHaskell98

Data.Unique.Really

Description

An abstract interface to a unique symbol generator.

Synopsis

Documentation

data Unique Source #

An abstract unique value. Values of type Unique may be compared for equality and hashed into Int.

Note: Unlike the symbols from Data.Unique, the symbols from this module do not become equal after reloads in the GHC interpreter!

Instances
Eq Unique Source # 
Instance details

Defined in Data.Unique.Really

Methods

(==) :: Unique -> Unique -> Bool #

(/=) :: Unique -> Unique -> Bool #

Hashable Unique Source # 
Instance details

Defined in Data.Unique.Really

Methods

hashWithSalt :: Int -> Unique -> Int #

hash :: Unique -> Int #

newUnique :: IO Unique Source #

Creates a new object of type Unique. The value returned will not compare equal to any other value of type Unique returned by previous calls to newUnique. There is no limit on the number of times you may call this function.

hashUnique :: Unique -> Int Source #

Hashes a Unique into an Int. Two Uniques may hash to the same value, although in practice this is unlikely. The Int returned makes a good hash key.