From 26023a903cc22130f96a50e6e09d205c412615da Mon Sep 17 00:00:00 2001 From: Stefan Majewsky Date: Wed, 26 Nov 2025 17:40:56 +0100 Subject: add package is --- is/ordered.go | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 is/ordered.go (limited to 'is/ordered.go') 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 +// 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 + } +} -- cgit v1.2.3