Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Typecheck type and class declarations
Documentation
tcTyAndClassDecls :: [TyClGroup GhcRn] -> TcM (TcGblEnv, [InstInfo GhcRn], [DerivInfo], ThBindEnv) Source #
tcConDecls :: NewOrData -> DataDeclInfo -> KnotTied TyCon -> [TcTyConBinder] -> TcKind -> [LConDecl GhcRn] -> TcM [DataCon] Source #
dataDeclChecks :: Name -> NewOrData -> Maybe (LHsContext GhcRn) -> [LConDecl GhcRn] -> TcM Bool Source #
checkValidTyCon :: TyCon -> TcM () Source #
tcTyFamInstEqn :: TcTyCon -> AssocInstInfo -> LTyFamInstEqn GhcRn -> TcM (KnotTied CoAxBranch) Source #
tcAddTyFamInstCtxt :: TyFamInstDecl GhcRn -> TcM a -> TcM a Source #
tcAddDataFamInstCtxt :: DataFamInstDecl GhcRn -> TcM a -> TcM a Source #
unravelFamInstPats :: TcType -> [TcType] Source #
addConsistencyConstraints :: AssocInstInfo -> TcType -> TcM () Source #
wrongKindOfFamily :: TyCon -> TcRnMessage Source #
checkFamTelescope :: TcLevel -> HsOuterFamEqnTyVarBndrs GhcRn -> [TcTyVar] -> TcM () Source #