12d1bc90b24176f73d64605484f19d226636d5b8
[ghc-hetmet.git] / ghc / compiler / specialise / SpecTyFuns.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface SpecTyFuns where
3 import Bag(Bag)
4 import Class(Class)
5 import Id(Id)
6 import Maybes(Labda(..))
7 import PreludePS(_PackedString)
8 import Pretty(Pretty(..), PrettyRep)
9 import TyCon(TyCon)
10 import TyVar(TyVarTemplate)
11 import UniType(UniType)
12 type ConstraintVector = [Bool]
13 data Labda a   = Hamna | Ni a
14 type Pretty = Int -> Bool -> PrettyRep
15 data UniType 
16 argTysMatchSpecTys_error :: [Labda UniType] -> [UniType] -> Labda (Int -> Bool -> PrettyRep)
17 getIdOverloading :: Id -> ([TyVarTemplate], [(Class, TyVarTemplate)])
18 isUnboxedSpecialisation :: [Labda UniType] -> Bool
19 mkConstraintVector :: Id -> [Bool]
20 mkSpecialisedCon :: Id -> [UniType] -> Id
21 pprSpecErrs :: _PackedString -> Bag (Id, [Labda UniType]) -> Bag (Id, [Labda UniType]) -> Bag (TyCon, [Labda UniType]) -> Int -> Bool -> PrettyRep
22 specialiseCallTys :: Bool -> Bool -> Bool -> [Bool] -> [UniType] -> [Labda UniType]
23 specialiseConstrTys :: [UniType] -> [Labda UniType]
24