[project @ 1996-02-06 14:32:22 by dnt]
[ghc-hetmet.git] / ghc / compiler / rename / Rename4.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface Rename4 where
3 import AbsSyn(Module)
4 import Bag(Bag)
5 import CharSeq(CSeq)
6 import CmdLineOpts(GlobalSwitch)
7 import ErrUtils(Error(..))
8 import FiniteMap(FiniteMap)
9 import HsBinds(Binds, Sig)
10 import HsDecls(ClassDecl, DataTypeSig, DefaultDecl, FixityDecl, InstDecl, SpecialisedInstanceSig, TyDecl)
11 import HsImpExp(IE, ImportedInterface)
12 import HsLit(Literal)
13 import HsPat(InPat, ProtoNamePat(..), RenamedPat(..))
14 import HsPragmas(GenPragmas)
15 import HsTypes(MonoType, PolyType)
16 import Id(Id)
17 import Maybes(Labda)
18 import Name(Name)
19 import NameTypes(FullName, ShortName)
20 import PreludePS(_PackedString)
21 import Pretty(Delay, PprStyle, Pretty(..), PrettyRep)
22 import ProtoName(ProtoName)
23 import RenameAuxFuns(GlobalNameFun(..))
24 import RenameMonad4(Rn4M(..), TyVarNamesEnv(..), initRn4)
25 import SplitUniq(SplitUniqSupply)
26 import SrcLoc(SrcLoc)
27 import TyCon(TyCon)
28 import Unique(Unique)
29 data Module a b 
30 data Bag a 
31 type Error = PprStyle -> Int -> Bool -> PrettyRep
32 data InPat a 
33 type ProtoNamePat = InPat ProtoName
34 type RenamedPat = InPat Name
35 data PolyType a 
36 data Labda a 
37 data Name 
38 data PprStyle 
39 type Pretty = Int -> Bool -> PrettyRep
40 data PrettyRep 
41 data ProtoName 
42 type GlobalNameFun = ProtoName -> Labda Name
43 type Rn4M a = (GlobalSwitch -> Bool) -> (ProtoName -> Labda Name, ProtoName -> Labda Name) -> FiniteMap _PackedString Name -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SplitUniqSupply -> SrcLoc -> (a, Bag (PprStyle -> Int -> Bool -> PrettyRep))
44 type TyVarNamesEnv = [(ProtoName, Name)]
45 data SplitUniqSupply 
46 data SrcLoc 
47 initRn4 :: (GlobalSwitch -> Bool) -> (ProtoName -> Labda Name, ProtoName -> Labda Name) -> ((GlobalSwitch -> Bool) -> (ProtoName -> Labda Name, ProtoName -> Labda Name) -> FiniteMap _PackedString Name -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SplitUniqSupply -> SrcLoc -> (a, Bag (PprStyle -> Int -> Bool -> PrettyRep))) -> SplitUniqSupply -> (a, Bag (PprStyle -> Int -> Bool -> PrettyRep))
48 rnGenPragmas4 :: GenPragmas ProtoName -> (GlobalSwitch -> Bool) -> (ProtoName -> Labda Name, ProtoName -> Labda Name) -> FiniteMap _PackedString Name -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SplitUniqSupply -> SrcLoc -> (GenPragmas Name, Bag (PprStyle -> Int -> Bool -> PrettyRep))
49 rnModule4 :: Module ProtoName (InPat ProtoName) -> (GlobalSwitch -> Bool) -> (ProtoName -> Labda Name, ProtoName -> Labda Name) -> FiniteMap _PackedString Name -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SplitUniqSupply -> SrcLoc -> (Module Name (InPat Name), Bag (PprStyle -> Int -> Bool -> PrettyRep))
50 rnPolyType4 :: Bool -> Bool -> [(ProtoName, Name)] -> PolyType ProtoName -> (GlobalSwitch -> Bool) -> (ProtoName -> Labda Name, ProtoName -> Labda Name) -> FiniteMap _PackedString Name -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SplitUniqSupply -> SrcLoc -> (PolyType Name, Bag (PprStyle -> Int -> Bool -> PrettyRep))
51