Documentation
type TcThetaType = ThetaTypeSource
type TcTyVarSet = TyVarSetSource
newFlexiTyVar :: Kind -> TcM TcTyVarSource
newFlexiTyVarTy :: Kind -> TcM TcTypeSource
newKindVars :: Int -> TcM [TcKind]Source
mkTcTyVarName :: Unique -> FastString -> NameSource
writeMetaTyVar :: TcTyVar -> TcType -> TcM ()Source
writeMetaTyVarRef :: TcTyVar -> TcRef MetaDetails -> TcType -> TcM ()Source
isFilledMetaTyVar :: TyVar -> TcM BoolSource
isFlexiMetaTyVar :: TyVar -> TcM BoolSource
newEvVar :: TcPredType -> TcM EvVarSource
newEvVars :: TcThetaType -> TcM [EvVar]Source
newWantedEvVars :: TcThetaType -> TcM [EvVar]Source
addTcEvBind :: EvBindsVar -> EvVar -> EvTerm -> TcM ()Source
tcInstSigTyVars :: [TyVar] -> TcM [TcTyVar]Source
tcInstType :: ([TyVar] -> TcM [TcTyVar]) -> TcType -> TcM ([TcTyVar], TcThetaType, TcType)Source
tcInstSkolTyVars :: [TyVar] -> TcM [TcTyVar]Source
tcInstSuperSkolTyVars :: [TyVar] -> TcM [TcTyVar]Source
tcInstSkolType :: TcType -> TcM ([TcTyVar], TcThetaType, TcType)Source
tcSkolDFunType :: Type -> TcM ([TcTyVar], TcThetaType, TcType)Source
tcSuperSkolTyVars :: [TyVar] -> [TcTyVar]Source
data UserTypeCtxt Source
checkValidType :: UserTypeCtxt -> Type -> TcM ()Source
checkValidMonoType :: Type -> TcM ()Source
checkValidTheta :: SourceTyCtxt -> ThetaType -> TcM ()Source
checkValidInstHead :: Class -> [Type] -> TcM ()Source
checkInstTermination :: [TcType] -> ThetaType -> [Message]Source
checkValidTypeInst :: [Type] -> Type -> TcM ()Source
checkTyFamFreeness :: Type -> TcM ()Source
growPredTyVars :: TcPredType -> TyVarSet -> TyVarSetSource
growThetaTyVars :: TcThetaType -> TyVarSet -> TyVarSetSource
validDerivPred :: PredType -> BoolSource
zonkTcTyVar :: TcTyVar -> TcM TcTypeSource
zonkTcTyVars :: [TcTyVar] -> TcM [TcType]Source
zonkSigTyVar :: TcTyVar -> TcM TcTyVarSource
zonkQuantifiedTyVars :: [TcTyVar] -> TcM [TcTyVar]Source
zonkTcType :: TcType -> TcM TcTypeSource
zonkTcTypes :: [TcType] -> TcM [TcType]Source
zonkTcKindToKind :: TcKind -> TcM KindSource
zonkTcKind :: TcKind -> TcM TcKindSource
writeKindVar :: KindVar -> TcKind -> TcM ()Source