gleam/order

Types

Order

Represents the result of a single comparison to determine the precise ordering of two values.

pub type Order {
  Lt
  Eq
  Gt
}

Constructors

  • Lt

    Less-than

  • Eq

    Equal

  • Gt

    Greater than

Functions

compare

pub fn compare(a: Order, with b: Order) -> Order

Compares two Order values to one another, producing a new Order.

Examples

> compare(Eq, with: Lt)
Gt

max

pub fn max(a: Order, b: Order) -> Order

Returns the largest of two orders.

Examples

> max(Eq, Lt)
Eq

min

pub fn min(a: Order, b: Order) -> Order

Returns the smallest of two orders.

Examples

> min(Eq, Lt)
Lt

reverse

pub fn reverse(order: Order) -> Order

Inverts an order, so less-than becomes greater-than and greater-than becomes less-than.

Examples

> reverse(Lt)
Gt

> reverse(Eq)
Eq

> reverse(Lt)
Gt

to_int

pub fn to_int(order: Order) -> Int

Produces a numeric representation of the order.

Examples

> to_int(Lt)
-1

> to_int(Eq)
0

> to_int(Gt)
1