ghc-8.0.0.20160204: The GHC API

Safe HaskellNone
LanguageHaskell2010

PrelNames

Synopsis

Documentation

data Unique

The type of unique identifiers that are used in many places in GHC for fast ordering and equality tests. You should generate these with the functions from the UniqSupply module

class Uniquable a where

Class of things that we can obtain a Unique from

Minimal complete definition

getUnique

Methods

getUnique :: a -> Unique

Instances

Uniquable Int 

Methods

getUnique :: Int -> Unique

Uniquable OccName 

Methods

getUnique :: OccName -> Unique

Uniquable FastString 
Uniquable UnitId 

Methods

getUnique :: UnitId -> Unique

Uniquable ModuleName 
Uniquable Module 

Methods

getUnique :: Module -> Unique

Uniquable Name 

Methods

getUnique :: Name -> Unique

Uniquable Unique 

Methods

getUnique :: Unique -> Unique

Uniquable Reg

so we can put regs in UniqSets

Methods

getUnique :: Reg -> Unique

Uniquable RegClass 
Uniquable Reg 

Methods

getUnique :: Reg -> Unique

Uniquable RealReg 

Methods

getUnique :: RealReg -> Unique

Uniquable VirtualReg 
Uniquable PackageName 
Uniquable SourcePackageId 
Uniquable ComponentId 
Uniquable TyCon 

Methods

getUnique :: TyCon -> Unique

Uniquable Var 

Methods

getUnique :: Var -> Unique

Uniquable DataCon 

Methods

getUnique :: DataCon -> Unique

Uniquable PatSyn 

Methods

getUnique :: PatSyn -> Unique

Uniquable ConLike 

Methods

getUnique :: ConLike -> Unique

Uniquable Class 

Methods

getUnique :: Class -> Unique

Uniquable CoAxiomRule 
Uniquable LocalReg 
Uniquable EvBindsVar 
Uniquable name => Uniquable (AnnTarget name) 

Methods

getUnique :: AnnTarget name -> Unique

Uniquable (CoAxiom br) 

Methods

getUnique :: CoAxiom br -> Unique

hasKey :: Uniquable a => a -> Unique -> Bool