diff options
author | Kayla Washburn <mckayla@hey.com> | 2023-07-16 04:44:00 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-16 11:44:00 +0100 |
commit | 1fd170f5244339e34f1facb24a0893381e94e66a (patch) | |
tree | 3de484a681757080fc19df5261327850f32f4b57 /src | |
parent | 4942ac97ff67c97c0673b8131244e78ae35a341e (diff) | |
download | gleam_stdlib-1fd170f5244339e34f1facb24a0893381e94e66a.tar.gz gleam_stdlib-1fd170f5244339e34f1facb24a0893381e94e66a.zip |
`order.reverse` (#476)
Diffstat (limited to 'src')
-rw-r--r-- | src/gleam/order.gleam | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/src/gleam/order.gleam b/src/gleam/order.gleam index 77ad033..12ce011 100644 --- a/src/gleam/order.gleam +++ b/src/gleam/order.gleam @@ -18,21 +18,21 @@ pub type Order { /// ## Examples /// /// ```gleam -/// > reverse(Lt) +/// > negate(Lt) /// Gt /// ``` /// /// ```gleam -/// > reverse(Eq) +/// > negate(Eq) /// Eq /// ``` /// /// ```gleam -/// > reverse(Lt) +/// > negate(Lt) /// Gt /// ``` /// -pub fn reverse(order: Order) -> Order { +pub fn negate(order: Order) -> Order { case order { Lt -> Gt Eq -> Eq @@ -117,3 +117,17 @@ pub fn min(a: Order, b: Order) -> Order { _, _ -> b } } + +/// Inverts an ordering function, so less-than becomes greater-than and greater-than +/// becomes less-than. +/// +/// ## Examples +/// +/// ```gleam +/// > list.sort([1, 5, 4], by: reverse(int.compare)) +/// [5, 4, 1] +/// ``` +/// +pub fn reverse(orderer: fn(a, a) -> Order) -> fn(a, a) -> Order { + fn(a, b) { orderer(b, a) } +} |