TcTyClsDecls

ghc-8.0.1: The GHC API

Safe Haskell | None
Language | Haskell2010

TcTyClsDecls

# Documentation

tcTyAndClassDecls :: [TyClGroup Name] -> TcM TcGblEnv #

tcAddImplicits :: [TyCon] -> TcM TcGblEnv #

kcDataDefn #

Arguments

:: Name | the family name, for error msgs only
-> HsTyPats Name | the patterns, for error msgs only
-> HsDataDefn Name | the RHS
-> TcKind | the expected kind
-> TcM () |

tcConDecls :: NewOrData -> TyCon -> ([TyVar], [TyBinder], Type) -> [LConDecl Name] -> TcM [DataCon] #

dataDeclChecks :: Name -> NewOrData -> ThetaType -> [LConDecl Name] -> TcM Bool #

checkValidTyCon :: TyCon -> TcM () #

tcFamTyPats :: FamTyConShape -> Maybe ClsInfo -> HsTyPats Name -> (TcKind -> TcM ()) -> ([TyVar] -> [TcType] -> Kind -> TcM a) -> TcM a #

tcTyFamInstEqn :: FamTyConShape -> Maybe ClsInfo -> LTyFamInstEqn Name -> TcM CoAxBranch #

famTyConShape :: TyCon -> FamTyConShape #

tcAddTyFamInstCtxt :: TyFamInstDecl Name -> TcM a -> TcM a #

tcMkDataFamInstCtxt :: DataFamInstDecl Name -> SDoc #

tcAddDataFamInstCtxt :: DataFamInstDecl Name -> TcM a -> TcM a #

wrongKindOfFamily :: TyCon -> SDoc #

dataConCtxt :: Outputable a => a -> SDoc #