DDC.Type.Exp.Simple

Abstract Syntax

Types

data Type n

data TypeSum n

data TyConHash

data TypeSumVarCon n

Binding

data Binder n

data Bind n

data Bound n

Constructors

data TyCon n

data SoCon

data KiCon

data TwCon

data TcCon

Aliases

type Sort n

type Kind n

type Region n

type Effect n

type Closure n

Predicates

Binders

isBNone

isBAnon

isBName

Atoms

isTVar

isBot

isAtomT

isTExists

Kinds

isDataKind

isRegionKind

isEffectKind

isClosureKind

isWitnessKind

Data Types

isAlgDataType

isWitnessType

isConstWitType

isMutableWitType

isDistinctWitType

Effect Types

isReadEffect

isWriteEffect

isAllocEffect

isSomeReadEffect

isSomeWriteEffect

isSomeAllocEffect

Relations

Equivalence

equivT

equivWithBindsT

equivTyCon

Subsumption

subsumesT

Transforms

Crushing

crushSomeT

crushEffect

Compounds

Binds

takeNameOfBind

typeOfBind

replaceTypeOfBind

Binders

binderOfBind

makeBindFromBinder

partitionBindsByType

Bounds

takeNameOfBound

takeTypeOfBound

boundMatchesBind

namedBoundMatchesBind

takeSubstBoundOfBind

takeSubstBoundsOfBinds

replaceTypeOfBound

Sorts

sComp

sProp

Kinds

kData

kRegion

kEffect

kClosure

kWitness

kFun

kFuns

takeKFun

takeKFuns

takeKFuns'

takeResultKind

Quantifiers

tForall

tForall'

tForalls

tForalls'

takeTForalls

eraseTForalls

Sums

tBot

tSum

Applications

tApp

($:)

tApps

takeTApps

takeTyConApps

takePrimTyConApps

takeDataTyConApps

takePrimeRegion

Functions

tFun

tFunOfList

tFunOfParamResult

takeTFun

takeTFunArgResult

takeTFunWitArgResult

takeTFunAllArgResult

arityOfType

dataArityOfType

Suspensions

tSusp

takeTSusp

takeTSusps

Implications

tImpl

Units

tUnit

Variables

tIx

takeTExists

Effect types

tRead

tDeepRead

tHeadRead

tWrite

tDeepWrite

tAlloc

tDeepAlloc

Witness types

tPure

tConst

tDeepConst

tMutable

tDeepMutable

tDistinct

tConData0

tConData1