Comparison typeclass definition and its instances for basic types.
{ equality : Typeclasses.Classes.Equality.Equality a
, compare : a -> a -> Basics.Order
, lt : a -> a -> Basics.Bool
, le : a -> a -> Basics.Bool
, gt : a -> a -> Basics.Bool
, ge : a -> a -> Basics.Bool
, min : a -> a -> a
, max : a -> a -> a
}
Explicit typeclass which implements comparison operations for type a
.
compare : (a -> a -> Basics.Order) -> Comparison a
Construct an instance from just a compare
function.
equalityAndLt : Typeclasses.Classes.Equality.Equality a -> (a -> a -> Basics.Bool) -> Comparison a
Construct an instance from an instance of equality and a lesser-than function.
comparable : Comparison comparable
Construct an instance for a comparable type using the compiler-generated definitions.
map : (a -> b) -> (b -> a) -> Comparison a -> Comparison b
Map over the owner type of an instance to produce a new instance.
You need to provide both a covariant and a contravariant mapping
(i.e., (a -> b)
and (b -> a)
).
int : Comparison Basics.Int
Instance for Int
.
float : Comparison Basics.Float
Instance for Float
.