utils.go

 1package cellbuf
 2
 3import (
 4	"strings"
 5)
 6
 7// Height returns the height of a string.
 8func Height(s string) int {
 9	return strings.Count(s, "\n") + 1
10}
11
12func min(a, b int) int { //nolint:predeclared
13	if a > b {
14		return b
15	}
16	return a
17}
18
19func max(a, b int) int { //nolint:predeclared
20	if a > b {
21		return a
22	}
23	return b
24}
25
26func clamp(v, low, high int) int {
27	if high < low {
28		low, high = high, low
29	}
30	return min(high, max(low, v))
31}
32
33func abs(a int) int {
34	if a < 0 {
35		return -a
36	}
37	return a
38}