1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface Rename4 where
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)
13 import HsPat(InPat, ProtoNamePat(..), RenamedPat(..))
14 import HsPragmas(GenPragmas)
15 import HsTypes(MonoType, PolyType)
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)
31 type Error = PprStyle -> Int -> Bool -> PrettyRep
33 type ProtoNamePat = InPat ProtoName
34 type RenamedPat = InPat Name
39 type Pretty = Int -> Bool -> PrettyRep
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)]
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))