aboutsummaryrefslogtreecommitdiff
path: root/is/ordered.go
blob: 79fada7fe094fcace7d0093231b3baf9da2c2a01 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
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
	}
}