tfp-0.7: Type-level integers, booleans, lists using type families

Portabilitynon-portable (type families, requires ghc >= 6.9)
Stabilityexperimental
Maintainerpgavin@gmail.com
Safe HaskellNone

Types.Data.Ord

Description

Type-level numerical operations using type families.

Documentation

type family Compare x y Source

compareT :: x -> y -> Compare x ySource

data LT Source

data EQ Source

data GT Source

type family IsLT c Source

isLTT :: c -> IsLT cSource

type family IsEQ c Source

isEQT :: c -> IsEQ cSource

type family IsGT c Source

isGTT :: c -> IsGT cSource

type family x :<: y Source

ltT :: x -> y -> x :<: ySource

class LTT x y Source

Instances

~ * (:<: x y) True => LTT x y 

type family x :<=: y Source

leT :: x -> y -> x :<=: ySource

class LET x y Source

Instances

~ * (:<=: x y) True => LET x y 

type family x :==: y Source

eqT :: x -> y -> x :==: ySource

class EQT x y Source

Instances

~ * (:==: x y) True => EQT x y 

type family x :>=: y Source

geT :: x -> y -> x :>=: ySource

class GET x y Source

Instances

~ * (:>=: x y) True => GET x y 

type family x :>: y Source

gtT :: x -> y -> x :>: ySource

class GTT x y Source

Instances

~ * (:>: x y) True => GTT x y 

type family Min x y Source

minT :: x -> y -> Min x ySource

type family Max x y Source

maxT :: x -> y -> Max x ySource