diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/gleam/bool.gleam | 10 | ||||
-rw-r--r-- | src/gleam/list.gleam | 18 | ||||
-rw-r--r-- | src/gleam/order.gleam | 30 |
3 files changed, 29 insertions, 29 deletions
diff --git a/src/gleam/bool.gleam b/src/gleam/bool.gleam index ff26a9b..e1913c0 100644 --- a/src/gleam/bool.gleam +++ b/src/gleam/bool.gleam @@ -9,11 +9,11 @@ pub fn negate(bool) { } pub fn compare(a, b) { - case pair.Pair(a, b) { - | pair.Pair(True, True) -> order.Eq - | pair.Pair(True, False) -> order.Gt - | pair.Pair(False, False) -> order.Eq - | pair.Pair(False, True) -> order.Lt + case a, b { + | True, True -> order.Eq + | True, False -> order.Gt + | False, False -> order.Eq + | False, True -> order.Lt } } diff --git a/src/gleam/list.gleam b/src/gleam/list.gleam index ecc2a6c..f6b00a3 100644 --- a/src/gleam/list.gleam +++ b/src/gleam/list.gleam @@ -181,11 +181,11 @@ pub fn any(list, f) { } } -pub fn zip(l1, l2) { - case pair.Pair(l1, l2) { - | pair.Pair([], _) -> [] - | pair.Pair(_, []) -> [] - | pair.Pair([x1 | rest1], [x2 | rest2]) -> [ pair.Pair(x1, x2) | zip(rest1, rest2) ] +pub fn zip(xs, ys) { + case xs, ys { + | [], _ -> [] + | _, [] -> [] + | [x | xs], [y | ys] -> [ pair.Pair(x, y) | zip(xs, ys) ] } } @@ -227,10 +227,10 @@ pub fn unique(list) { } fn merge_sort(a, b, compare) { - case pair.Pair(a, b) { - | pair.Pair([], _) -> b - | pair.Pair(_, []) -> a - | pair.Pair([ax | ar], [bx | br]) -> + case a, b { + | [], _ -> b + | _, [] -> a + | [ax | ar], [bx | br] -> case compare(ax, bx) { | order.Lt -> [ax | merge_sort(ar, b, compare)] | _ -> [bx | merge_sort(a, br, compare)] diff --git a/src/gleam/order.gleam b/src/gleam/order.gleam index 6886991..9aa04fb 100644 --- a/src/gleam/order.gleam +++ b/src/gleam/order.gleam @@ -23,28 +23,28 @@ pub fn to_int(order) { } pub fn compare(a, b) { - case pair.Pair(a, b) { - | pair.Pair(Lt, Lt) -> Eq - | pair.Pair(Lt, _) -> Lt - | pair.Pair(Eq, Eq) -> Eq - | pair.Pair(Gt, Gt) -> Eq - | pair.Pair(Eq, Gt) -> Lt - | _ -> Gt + case a, b { + | Lt, Lt -> Eq + | Lt, _ -> Lt + | Eq, Eq -> Eq + | Gt, Gt -> Eq + | Eq, Gt -> Lt + | _, _ -> Gt } } pub fn max(a, b) { - case pair.Pair(a, b) { - | pair.Pair(Gt, _) -> Gt - | pair.Pair(Eq, Lt) -> Eq - | _ -> b + case a, b { + | Gt, _ -> Gt + | Eq, Lt -> Eq + | _, _ -> b } } pub fn min(a, b) { - case pair.Pair(a, b) { - | pair.Pair(Lt, _) -> Lt - | pair.Pair(Eq, Gt) -> Eq - | _ -> b + case a, b { + | Lt, _ -> Lt + | Eq, Gt -> Eq + | _, _ -> b } } |