Safe Haskell | None |
---|---|
Language | Haskell98 |
Documentation
tcMatchesFun :: Name -> Bool -> MatchGroup Name (LHsExpr Name) -> TcSigmaType -> TcM (HsWrapper, MatchGroup TcId (LHsExpr TcId)) Source
tcGRHS :: TcMatchCtxt body -> TcRhoType -> GRHS Name (Located (body Name)) -> TcM (GRHS TcId (Located (body TcId))) Source
tcMatchesCase :: Outputable (body Name) => TcMatchCtxt body -> TcRhoType -> MatchGroup Name (Located (body Name)) -> TcRhoType -> TcM (MatchGroup TcId (Located (body TcId))) Source
tcMatchLambda :: MatchGroup Name (LHsExpr Name) -> TcRhoType -> TcM (HsWrapper, MatchGroup TcId (LHsExpr TcId)) Source
data TcMatchCtxt body Source
type TcStmtChecker body = forall thing. HsStmtContext Name -> Stmt Name (Located (body Name)) -> TcRhoType -> (TcRhoType -> TcM thing) -> TcM (Stmt TcId (Located (body TcId)), thing) Source
type TcCmdStmtChecker = TcStmtChecker HsCmd Source
tcStmts :: Outputable (body Name) => HsStmtContext Name -> TcStmtChecker body -> [LStmt Name (Located (body Name))] -> TcRhoType -> TcM [LStmt TcId (Located (body TcId))] Source
tcStmtsAndThen :: Outputable (body Name) => HsStmtContext Name -> TcStmtChecker body -> [LStmt Name (Located (body Name))] -> TcRhoType -> (TcRhoType -> TcM thing) -> TcM ([LStmt TcId (Located (body TcId))], thing) Source