TysPrim
Contents
Description
This module defines TyCons that can't be expressed in Haskell. They are all, therefore, wired-in TyCons. C.f module TysWiredIn
- alphaTyVars :: [TyVar]
- betaTyVars :: [TyVar]
- alphaTyVar, deltaTyVar, gammaTyVar, betaTyVar :: TyVar
- alphaTy, deltaTy, gammaTy, betaTy :: Type
- openAlphaTy, openBetaTy :: Type
- openAlphaTyVar, openBetaTyVar :: TyVar
- openAlphaTyVars :: [TyVar]
- argAlphaTy, argBetaTy :: Type
- argAlphaTyVar, argBetaTyVar :: TyVar
- tySuperKindTyCon, argTypeKindTyCon, ubxTupleKindTyCon, unliftedTypeKindTyCon, openTypeKindTyCon, liftedTypeKindTyCon :: TyCon
- tySuperKind :: SuperKind
- tySuperKindTyConName, argTypeKindTyConName, ubxTupleKindTyConName, unliftedTypeKindTyConName, openTypeKindTyConName, liftedTypeKindTyConName :: Name
- liftedTypeKind, ubxTupleKind, argTypeKind, openTypeKind, unliftedTypeKind :: Kind
- mkArrowKind :: Kind -> Kind -> Kind
- mkArrowKinds :: [Kind] -> Kind -> Kind
- isCoercionKind :: Kind -> Bool
- funTyCon :: TyCon
- funTyConName :: Name
- primTyCons :: [TyCon]
- charPrimTyCon :: TyCon
- charPrimTy :: Type
- intPrimTyCon :: TyCon
- intPrimTy :: Type
- wordPrimTyCon :: TyCon
- wordPrimTy :: Type
- addrPrimTyCon :: TyCon
- addrPrimTy :: Type
- floatPrimTyCon :: TyCon
- floatPrimTy :: Type
- doublePrimTyCon :: TyCon
- doublePrimTy :: Type
- statePrimTyCon :: TyCon
- mkStatePrimTy :: Type -> Type
- realWorldTyCon :: TyCon
- realWorldTy :: Type
- realWorldStatePrimTy :: Type
- arrayPrimTyCon, byteArrayPrimTyCon, mutableByteArrayPrimTyCon, mutableArrayPrimTyCon :: TyCon
- mkArrayPrimTy :: Type -> Type
- byteArrayPrimTy :: Type
- mkMutableArrayPrimTy :: Type -> Type -> Type
- mkMutableByteArrayPrimTy :: Type -> Type
- mutVarPrimTyCon :: TyCon
- mkMutVarPrimTy :: Type -> Type -> Type
- mVarPrimTyCon :: TyCon
- mkMVarPrimTy :: Type -> Type -> Type
- tVarPrimTyCon :: TyCon
- mkTVarPrimTy :: Type -> Type -> Type
- stablePtrPrimTyCon :: TyCon
- mkStablePtrPrimTy :: Type -> Type
- stableNamePrimTyCon :: TyCon
- mkStableNamePrimTy :: Type -> Type
- bcoPrimTyCon :: TyCon
- bcoPrimTy :: Type
- weakPrimTyCon :: TyCon
- mkWeakPrimTy :: Type -> Type
- threadIdPrimTyCon :: TyCon
- threadIdPrimTy :: Type
- int32PrimTyCon :: TyCon
- int32PrimTy :: Type
- word32PrimTyCon :: TyCon
- word32PrimTy :: Type
- int64PrimTyCon :: TyCon
- int64PrimTy :: Type
- word64PrimTyCon :: TyCon
- word64PrimTy :: Type
- eqPredPrimTyCon :: TyCon
- anyTyCon :: TyCon
- anyTyConOfKind :: Kind -> TyCon
- anyTypeOfKind :: Kind -> Type
Documentation
alphaTyVars :: [TyVar]
betaTyVars :: [TyVar]
openAlphaTyVars :: [TyVar]
argAlphaTy, argBetaTy :: Type
tySuperKindTyCon, argTypeKindTyCon, ubxTupleKindTyCon, unliftedTypeKindTyCon, openTypeKindTyCon, liftedTypeKindTyCon :: TyCon
tySuperKind :: SuperKind
tySuperKindTyConName, argTypeKindTyConName, ubxTupleKindTyConName, unliftedTypeKindTyConName, openTypeKindTyConName, liftedTypeKindTyConName :: Name
mkArrowKind :: Kind -> Kind -> Kind
Given two kinds k1
and k2
, creates the Kind
k1 -> k2
mkArrowKinds :: [Kind] -> Kind -> Kind
Iterated application of mkArrowKind
isCoercionKind :: Kind -> Bool
funTyConName :: Name
primTyCons :: [TyCon]
charPrimTy :: Type
wordPrimTy :: Type
addrPrimTy :: Type
floatPrimTy :: Type
doublePrimTy :: Type
mkStatePrimTy :: Type -> Type
realWorldTy :: Type
mkArrayPrimTy :: Type -> Type
mkMutableArrayPrimTy :: Type -> Type -> Type
mkMutableByteArrayPrimTy :: Type -> Type
mkMutVarPrimTy :: Type -> Type -> Type
mkMVarPrimTy :: Type -> Type -> Type
mkTVarPrimTy :: Type -> Type -> Type
mkStablePtrPrimTy :: Type -> Type
mkStableNamePrimTy :: Type -> Type
mkWeakPrimTy :: Type -> Type
int32PrimTy :: Type
word32PrimTy :: Type
int64PrimTy :: Type
word64PrimTy :: Type
Any
anyTyConOfKind :: Kind -> TyCon
anyTypeOfKind :: Kind -> Type