From cfa90dff4fabd4a10ebebe6495ccbb5f7446ee69 Mon Sep 17 00:00:00 2001 From: charlie <3140647@qq.com> Date: Thu, 7 Apr 2022 10:30:12 +0800 Subject: [PATCH] generic --- mathx/int.go | 23 ++++++++++------------- 1 file changed, 10 insertions(+), 13 deletions(-) diff --git a/mathx/int.go b/mathx/int.go index 4c1fe63..9574dcc 100644 --- a/mathx/int.go +++ b/mathx/int.go @@ -1,19 +1,16 @@ package mathx -// MaxInt returns the larger one of a and b. -func MaxInt(a, b int) int { - if a > b { - return a - } +import ( + "github.com/charlienet/go-mixed/expr" + "golang.org/x/exp/constraints" +) - return b +// MaxInt returns the larger one of v1 and v2. +func Max[T constraints.Ordered](v1, v2 T) T { + return expr.If(v1 > v2, v1, v2) } -// MinInt returns the smaller one of a and b. -func MinInt(a, b int) int { - if a < b { - return a - } - - return b +// MinInt returns the smaller one of v1 and v2. +func Min[T constraints.Ordered](v1, v2 T) T { + return expr.If(v1 < v2, v1, v2) }