aboutsummaryrefslogtreecommitdiff
path: root/is/ordered.go
diff options
context:
space:
mode:
authorStefan Majewsky <majewsky@gmx.net>2025-11-26 17:40:56 +0100
committerStefan Majewsky <majewsky@gmx.net>2025-11-26 17:54:09 +0100
commit26023a903cc22130f96a50e6e09d205c412615da (patch)
tree1d4bf882a78978d6edb1f3b1f60d1f1f04b4e085 /is/ordered.go
parent3f447c28466911e234d421eb7e3310e14c30dfa9 (diff)
downloadgo-gg-26023a903cc22130f96a50e6e09d205c412615da.tar.gz
add package is
Diffstat (limited to 'is/ordered.go')
-rw-r--r--is/ordered.go34
1 files changed, 34 insertions, 0 deletions
diff --git a/is/ordered.go b/is/ordered.go
new file mode 100644
index 0000000..79fada7
--- /dev/null
+++ b/is/ordered.go
@@ -0,0 +1,34 @@
+// SPDX-FileCopyrightText: 2025 Stefan Majewsky <majewsky@gmx.net>
+// SPDX-License-Identifier: Apache-2.0
+
+package is
+
+import "cmp"
+
+// Above(b)(a) is the same as a > b.
+func Above[T cmp.Ordered](rhs T) func(T) bool {
+ return func(lhs T) bool {
+ return lhs > rhs
+ }
+}
+
+// Below(b)(a) is the same as a < b.
+func Below[T cmp.Ordered](rhs T) func(T) bool {
+ return func(lhs T) bool {
+ return lhs < rhs
+ }
+}
+
+// NotAbove(b)(a) is the same as a <= b.
+func NotAbove[T cmp.Ordered](rhs T) func(T) bool {
+ return func(lhs T) bool {
+ return lhs <= rhs
+ }
+}
+
+// NotBelow(b)(a) is the same as a >= b.
+func NotBelow[T cmp.Ordered](rhs T) func(T) bool {
+ return func(lhs T) bool {
+ return lhs >= rhs
+ }
+}