| 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) Source #
newLetBndr :: LetBndrSpec -> Name -> TcType -> TcM TcId Source #
data LetBndrSpec Source #
Constructors
| LetLclBndr | |
| LetGblBndr TcPragEnv | 
Instances
tcPat :: HsMatchContext Name -> LPat GhcRn -> ExpSigmaType -> TcM a -> TcM (LPat GhcTcId, a) Source #
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) Source #
badFieldCon :: ConLike -> FieldLabelString -> SDoc Source #
polyPatSig :: TcType -> SDoc Source #