Module

Type.Data.Ordering

#IsOrdering

class IsOrdering :: Ordering -> Constraintclass IsOrdering ordering  where

Class for reflecting a type level Ordering at the value level

Members

Instances

#reifyOrdering

reifyOrdering :: forall r. Ordering -> (forall o. IsOrdering o => Proxy o -> r) -> r

Use a value level Ordering as a type-level Ordering

#Append

class Append :: Ordering -> Ordering -> Ordering -> Constraintclass Append lhs rhs output | lhs -> rhs output

Append two Ordering types together Reflective of the semigroup for value level Ordering

Instances

#append

append :: forall l r o. Append l r o => Proxy l -> Proxy r -> Proxy o

#Invert

class Invert :: Ordering -> Ordering -> Constraintclass Invert ordering result | ordering -> result

Invert an Ordering

Instances

#invert

invert :: forall i o. Invert i o => Proxy i -> Proxy o

#equals

equals :: forall l r o. Equals l r o => Proxy l -> Proxy r -> Proxy o

Re-exports from Prim.Ordering

#Ordering

data Ordering :: Type

The Ordering kind represents the three possibilities of comparing two types of the same kind: LT (less than), EQ (equal to), and GT (greater than).

#LT

data LT :: Ordering

The 'less than' ordering type.

#GT

data GT :: Ordering

The 'greater than' ordering type.

#EQ

data EQ :: Ordering

The 'equal to' ordering type.

Modules