| Haskell Hierarchical Libraries (base package) | Source code | Contents | Index

Data.Unique

Portability | non-portable
Stability | experimental
Maintainer | libraries@haskell.org

Contents

Unique objects

Description
An abstract interface to a unique symbol generator.
Synopsis

data Unique
newUnique :: IO Unique
hashUnique :: Unique -> Int

Unique objects
data Unique

An abstract unique object. Objects of type `Unique` may be compared for equality and ordering and hashed into `Int`.
Instances

Eq Unique
Ord Unique

newUnique :: IO Unique
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 `newUnique` may be called.
hashUnique :: Unique -> Int
Hashes a `Unique` into an `Int`. Two `Unique`s may hash to the same value, although in practice this is unlikely. The `Int` returned makes a good hash key.
Produced by Haddock version 0.8