Type

Main data types representing Types

data TyThing

data Type

data PredType

type ThetaType

Constructing and deconstructing types

mkTyVarTy

mkTyVarTys

getTyVar

getTyVar_maybe

mkAppTy

mkAppTys

splitAppTy

splitAppTys

splitAppTy_maybe

repSplitAppTy_maybe

mkFunTy

mkFunTys

splitFunTy

splitFunTy_maybe

splitFunTys

splitFunTysN

funResultTy

funArgTy

zipFunTys

mkTyConApp

mkTyConTy

tyConAppTyCon

tyConAppArgs

splitTyConApp_maybe

splitTyConApp

mkForAllTy

mkForAllTys

splitForAllTy_maybe

splitForAllTys

applyTy

applyTys

applyTysD

isForAllTy

dropForAlls

newTyConInstRhs

carefullySplitNewType_maybe

tyFamInsts

predFamInsts

mkPredTy

mkPredTys

mkFamilyTyConApp

isEqPred

coVarPred

Common type constructors

funTyCon

Predicates on types

isTyVarTy

isFunTy

isDictTy

isUnLiftedType

isUnboxedTupleType

isAlgType

isClosedAlgType

isPrimitiveType

isStrictType

isStrictPred

Main data types representing Kinds

type Kind

type SimpleKind

type KindVar

Common Kinds and SuperKinds

liftedTypeKind

unliftedTypeKind

openTypeKind

argTypeKind

ubxTupleKind

tySuperKind

coSuperKind

Common Kind type constructors

liftedTypeKindTyCon

openTypeKindTyCon

unliftedTypeKindTyCon

argTypeKindTyCon

ubxTupleKindTyCon

Type free variables

tyVarsOfType

tyVarsOfTypes

tyVarsOfPred

tyVarsOfTheta

expandTypeSynonyms

Type comparison

coreEqType

coreEqType2

tcEqType

tcEqTypes

tcCmpType

tcCmpTypes

tcEqPred

tcEqPredX

tcCmpPred

tcEqTypeX

tcPartOfType

tcPartOfPred

Forcing evaluation of types

seqType

seqTypes

Other views onto Types

coreView

tcView

kindView

repType

Type representation for the code generator

data PrimRep

typePrimRep

predTypeRep

Main type substitution data types

type TvSubstEnv

data TvSubst

Manipulating type substitutions

emptyTvSubstEnv

emptyTvSubst

mkTvSubst

mkOpenTvSubst

zipOpenTvSubst

zipTopTvSubst

mkTopTvSubst

notElemTvSubst

getTvSubstEnv

setTvSubstEnv

zapTvSubstEnv

getTvInScope

extendTvInScope

extendTvInScopeList

extendTvSubst

extendTvSubstList

isInScope

composeTvSubst

zipTyEnv

isEmptyTvSubst

unionTvSubst

Performing substitution on types

substTy

substTys

substTyWith

substTysWith

substTheta

substPred

substTyVar

substTyVars

substTyVarBndr

deShadowTy

lookupTyVar

Pretty-printing

pprType

pprParendType

pprTypeApp

pprTyThingCategory

pprTyThing

pprForAll

pprPred

pprEqPred

pprTheta

pprThetaArrow

pprClassPred

pprKind

pprParendKind

pprSourceTyCon