[project @ 1996-02-06 14:32:22 by dnt]
[ghc-hetmet.git] / ghc / compiler / simplCore / SimplCore.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface SimplCore where
3 import Bag(Bag)
4 import BasicLit(BasicLit)
5 import BinderInfo(BinderInfo)
6 import CmdLineOpts(CoreToDo, GlobalSwitch, SwitchResult)
7 import CoreSyn(CoreAtom, CoreBinding, CoreExpr)
8 import FiniteMap(FiniteMap)
9 import Id(Id)
10 import IdEnv(IdEnv(..))
11 import MagicUFs(MagicUnfoldingFun)
12 import Maybes(Labda)
13 import PreludePS(_PackedString)
14 import Pretty(PprStyle)
15 import SimplEnv(FormSummary, UnfoldingDetails, UnfoldingGuidance)
16 import Specialise(SpecialiseData(..))
17 import SplitUniq(SplitUniqSupply)
18 import TyCon(TyCon)
19 import UniType(UniType)
20 import UniqFM(UniqFM)
21 import Unique(Unique)
22 data Bag a 
23 type IdEnv a = UniqFM a
24 data UnfoldingDetails 
25 data SpecialiseData   = SpecData Bool Bool [TyCon] [TyCon] (FiniteMap TyCon [(Bool, [Labda UniType])]) (Bag (Id, [Labda UniType])) (Bag (Id, [Labda UniType])) (Bag (TyCon, [Labda UniType]))
26 data UniqFM a 
27 data Unique 
28 core2core :: [CoreToDo] -> (GlobalSwitch -> SwitchResult) -> _PackedString -> PprStyle -> SplitUniqSupply -> [TyCon] -> FiniteMap TyCon [(Bool, [Labda UniType])] -> [CoreBinding Id Id] -> _State _RealWorld -> (([CoreBinding Id Id], UniqFM UnfoldingDetails, SpecialiseData), _State _RealWorld)
29