0a5b62967b6e862e82998d47d9db52fe19591f87
[ghc-hetmet.git] / ghc / compiler / utils / UniqSet.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface UniqSet where
3 import Id(Id)
4 import Name(Name)
5 import NameTypes(FullName, ShortName)
6 import Outputable(NamedThing)
7 import PreludePS(_PackedString)
8 import TyCon(TyCon)
9 import TyVar(TyVar)
10 import UniqFM(UniqFM)
11 import Unique(Unique)
12 data Id 
13 type IdSet = UniqFM Id
14 data Name 
15 type NameSet = UniqFM Name
16 data TyVar 
17 type TyVarSet = UniqFM TyVar
18 data UniqFM a 
19 type UniqSet a = UniqFM a
20 data Unique 
21 elementOfUniqSet :: NamedThing a => a -> UniqFM a -> Bool
22 emptyUniqSet :: UniqFM a
23 intersectUniqSets :: UniqFM a -> UniqFM a -> UniqFM a
24 isEmptyUniqSet :: UniqFM a -> Bool
25 mapUniqSet :: NamedThing b => (a -> b) -> UniqFM a -> UniqFM b
26 minusUniqSet :: UniqFM a -> UniqFM a -> UniqFM a
27 mkUniqSet :: NamedThing a => [a] -> UniqFM a
28 singletonUniqSet :: NamedThing a => a -> UniqFM a
29 unionManyUniqSets :: [UniqFM a] -> UniqFM a
30 unionUniqSets :: UniqFM a -> UniqFM a -> UniqFM a
31 uniqSetToList :: UniqFM a -> [a]
32