Safe Haskell | None |
---|---|
Language | Haskell2010 |
TcPat
Synopsis
- tcLetPat :: (Name -> Maybe TcId) -> LetBndrSpec -> LPat GhcRn -> ExpSigmaType -> TcM a -> TcM (LPat GhcTcId, a)
- newLetBndr :: LetBndrSpec -> Name -> TcType -> TcM TcId
- data LetBndrSpec
- tcPat :: HsMatchContext Name -> LPat GhcRn -> ExpSigmaType -> TcM a -> TcM (LPat GhcTcId, a)
- tcPat_O :: HsMatchContext Name -> CtOrigin -> LPat GhcRn -> ExpSigmaType -> TcM a -> TcM (LPat GhcTcId, a)
- tcPats :: HsMatchContext Name -> [LPat GhcRn] -> [ExpSigmaType] -> TcM a -> TcM ([LPat GhcTcId], a)
- addDataConStupidTheta :: DataCon -> [TcType] -> TcM ()
- badFieldCon :: ConLike -> FieldLabelString -> SDoc
- polyPatSig :: TcType -> SDoc
Documentation
tcLetPat :: (Name -> Maybe TcId) -> LetBndrSpec -> LPat GhcRn -> ExpSigmaType -> TcM a -> TcM (LPat GhcTcId, a) #
newLetBndr :: LetBndrSpec -> Name -> TcType -> TcM TcId #
data LetBndrSpec #
Constructors
LetLclBndr | |
LetGblBndr TcPragEnv |
Instances
Outputable LetBndrSpec # | |
Defined in TcPat |
Arguments
:: HsMatchContext Name | |
-> CtOrigin | origin to use if the type needs inst'ing |
-> LPat GhcRn | |
-> ExpSigmaType | |
-> TcM a | |
-> TcM (LPat GhcTcId, a) |
A variant of tcPat
that takes a custom origin
tcPats :: HsMatchContext Name -> [LPat GhcRn] -> [ExpSigmaType] -> TcM a -> TcM ([LPat GhcTcId], a) #
addDataConStupidTheta :: DataCon -> [TcType] -> TcM () #
badFieldCon :: ConLike -> FieldLabelString -> SDoc #
polyPatSig :: TcType -> SDoc #