Safe Haskell | None |
---|---|
Language | Haskell98 |
TcHsType
Documentation
tcHsSigType :: UserTypeCtxt -> LHsType Name -> TcM Type
tcHsSigTypeNC :: UserTypeCtxt -> LHsType Name -> TcM Type
tcHsInstHead :: UserTypeCtxt -> LHsType Name -> TcM ([TyVar], ThetaType, Class, [Type])
data UserTypeCtxt
kcLookupKind :: Name -> TcM Kind
kcTyClTyVars :: Name -> LHsTyVarBndrs Name -> TcM a -> TcM a
tcTyClTyVars :: Name -> LHsTyVarBndrs Name -> ([TyVar] -> Kind -> TcM a) -> TcM a
tcDataKindSig :: Kind -> TcM [TyVar]
tcClassSigType :: LHsType Name -> TcM Type
kcHsTyVarBndrs :: KindCheckingStrategy -> LHsTyVarBndrs Name -> TcM (Kind, r) -> TcM (Kind, r)
tcHsTyVarBndrs :: LHsTyVarBndrs Name -> ([TcTyVar] -> TcM r) -> TcM r
tcHsLiftedType :: LHsType Name -> TcM TcType
tcHsOpenType :: LHsType Name -> TcM TcType
tcHsContext :: LHsContext Name -> TcM [PredType]
tcInferApps :: Outputable a => a -> TcKind -> [LHsType Name] -> TcM ([TcType], TcKind)
kindGeneralize :: TyVarSet -> TcM [KindVar]
tcHsPatSigType :: UserTypeCtxt -> HsWithBndrs (LHsType Name) -> TcM (Type, [(Name, TcTyVar)])
tcPatSig :: UserTypeCtxt -> HsWithBndrs (LHsType Name) -> TcSigmaType -> TcM (TcType, [(Name, TcTyVar)], HsWrapper)