5ffd1dfe8b44714b1090b630c9af0e594cadc2e1
[ghc-hetmet.git] / ghc / compiler / typecheck / TcBinds.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface TcBinds where
3 import Bag(Bag)
4 import CmdLineOpts(GlobalSwitch)
5 import E(E)
6 import GenSpecEtc(SignatureInfo)
7 import HsBinds(Binds, MonoBinds, Sig)
8 import HsPat(InPat, TypecheckedPat)
9 import Id(Id)
10 import LIE(LIE)
11 import Name(Name)
12 import Pretty(PprStyle, PrettyRep)
13 import SplitUniq(SplitUniqSupply)
14 import SrcLoc(SrcLoc)
15 import Subst(Subst)
16 import TcMonad(TcResult)
17 import UniType(UniType)
18 doSpecPragma :: E -> (Name -> Id) -> SignatureInfo -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult (MonoBinds Id TypecheckedPat, LIE)
19 tcLocalBindsAndThen :: E -> (Binds Id TypecheckedPat -> a -> a) -> Binds Name (InPat Name) -> (E -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult (a, LIE, b)) -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult (a, LIE, b)
20 tcSigs :: E -> [(Name, Id)] -> [Sig Name] -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult [SignatureInfo]
21 tcTopBindsAndThen :: E -> (Binds Id TypecheckedPat -> a -> a) -> Binds Name (InPat Name) -> (E -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult (a, LIE, b)) -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult (a, LIE, b)
22