Documentation
type TcThetaType = ThetaTypeSource
type TcTyVarSet = TyVarSetSource
newFlexiTyVar :: Kind -> TcM TcTyVarSource
newFlexiTyVarTy :: Kind -> TcM TcTypeSource
newKindVars :: Int -> TcM [TcKind]Source
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
writeWantedCoVar :: CoVar -> Coercion -> TcM ()Source
isSelfDict :: EvVar -> BoolSource
newWantedEvVars :: TcThetaType -> TcM [EvVar]Source
addTcEvBind :: EvBindsVar -> EvVar -> EvTerm -> TcM ()Source
tcInstTyVar :: TyVar -> TcM TcTyVarSource
tcInstSigTyVars :: [TyVar] -> TcM [TcTyVar]Source
tcInstType :: ([TyVar] -> TcM [TcTyVar]) -> TcType -> TcM ([TcTyVar], TcThetaType, TcType)Source
tcInstSigType :: Bool -> Name -> TcType -> TcM ([TcTyVar], TcThetaType, TcRhoType)Source
tcInstSkolTyVars :: SkolemInfo -> [TyVar] -> TcM [TcTyVar]Source
tcInstSkolTyVar :: SkolemInfo -> TyVar -> TcM TcTyVarSource
tcInstSkolType :: SkolemInfo -> TcType -> TcM ([TcTyVar], TcThetaType, TcType)Source
tcSkolSigType :: SkolemInfo -> Type -> TcM ([TcTyVar], TcThetaType, TcType)Source
tcSkolSigTyVars :: SkolemInfo -> [TyVar] -> [TcTyVar]Source
data UserTypeCtxt Source
checkValidType :: UserTypeCtxt -> Type -> TcM ()Source
checkValidMonoType :: Type -> TcM ()Source
checkValidTheta :: SourceTyCtxt -> ThetaType -> 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