Language.Symantic.Typing.Type

Type Type

data Type src vs t

tyConst

tyConstLen

tyApp

tyVar

tyFam

tyQual

Type TypeK

data TypeK src vs kt

Type TypeT

data TypeT src vs

Type TypeVT

data TypeVT src

Type Const

data Const src c

kindOfConst

Class Constable

class Constable c

Class ConstsOf

class ConstsOf a

Type ConstC

data ConstC src

Type '(->)'

(~>)

Type family FunArg

type family FunArg (fun :: Type) :: Type where ...

Type family FunRes

type family FunRes (fun :: Type) :: Type where ...

unTyFun

Type (#>)

data q #> a

(#>)

Class (#)

class x # y

(#)

Type (() :: Constraint)

noConstraint

noConstraintLen

Class (#~)

class x #~ y

(#~)

eqType

eqTypeKi

eqTypes

Comparison

ordType

ordTypes

Type Qual

data Qual q

Class ClassInstancesFor

class ClassInstancesFor c

proveConstraint

Injection

constInj

constKiInj

Projection

proj_Const

proj_ConstTy

proj_ConstKi

proj_ConstKiTy

eqConst

eqConstKi

ordConst

normalizeQualsTy

Type family Fam

type family Fam (fam :: k) (hs :: [Type]) :: k

Class TypeInstancesFor

class TypeInstancesFor c

Class ExpandFam

class ExpandFam a

kindOfType

normalizeVarsTy

Type Types

data Types src vs ts

mapTys

foldlTys

Class TypeOf

class TypeOf a

data Proxy k t

data (k :~: a) b

data a :~~: b

data Constraint