045238cfa806f74e735498ef25f5708fc9585b19
[ghc-hetmet.git] / ghc / compiler / typecheck / TcMatches.hi
1 {-# GHC_PRAGMA INTERFACE VERSION 5 #-}
2 interface TcMatches where
3 import Bag(Bag)
4 import CmdLineOpts(GlobalSwitch)
5 import E(E)
6 import HsMatches(Match)
7 import HsPat(InPat, TypecheckedPat)
8 import Id(Id)
9 import LIE(LIE)
10 import Name(Name)
11 import Pretty(PprStyle, PrettyRep)
12 import SplitUniq(SplitUniqSupply)
13 import SrcLoc(SrcLoc)
14 import Subst(Subst)
15 import TcMonad(TcResult)
16 import UniType(UniType)
17 tcMatch :: E -> Match Name (InPat Name) -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult (Match Id TypecheckedPat, LIE, UniType)
18 tcMatchesCase :: E -> [Match Name (InPat Name)] -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult ([Match Id TypecheckedPat], LIE, UniType)
19 tcMatchesFun :: E -> Name -> UniType -> [Match Name (InPat Name)] -> (GlobalSwitch -> Bool) -> [UniType] -> Subst -> SplitUniqSupply -> Bag (PprStyle -> Int -> Bool -> PrettyRep) -> SrcLoc -> TcResult ([Match Id TypecheckedPat], LIE)
20