![dependabot[bot]](/assets/img/avatar_default.png)
Bumps the golang group with 2 updates in the / directory: [github.com/Microsoft/hcsshim](https://github.com/Microsoft/hcsshim) and [github.com/onsi/ginkgo/v2](https://github.com/onsi/ginkgo). Updates `github.com/Microsoft/hcsshim` from 0.12.4 to 0.12.6 - [Release notes](https://github.com/Microsoft/hcsshim/releases) - [Commits](https://github.com/Microsoft/hcsshim/compare/v0.12.4...v0.12.6) Updates `github.com/onsi/ginkgo/v2` from 2.19.0 to 2.20.1 - [Release notes](https://github.com/onsi/ginkgo/releases) - [Changelog](https://github.com/onsi/ginkgo/blob/master/CHANGELOG.md) - [Commits](https://github.com/onsi/ginkgo/compare/v2.19.0...v2.20.1) Updates `github.com/onsi/gomega` from 1.33.1 to 1.34.1 - [Release notes](https://github.com/onsi/gomega/releases) - [Changelog](https://github.com/onsi/gomega/blob/master/CHANGELOG.md) - [Commits](https://github.com/onsi/gomega/compare/v1.33.1...v1.34.1) Updates `golang.org/x/sys` from 0.21.0 to 0.23.0 - [Commits](https://github.com/golang/sys/compare/v0.21.0...v0.23.0) --- updated-dependencies: - dependency-name: github.com/Microsoft/hcsshim dependency-type: direct:production update-type: version-update:semver-patch dependency-group: golang - dependency-name: github.com/onsi/ginkgo/v2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: golang - dependency-name: github.com/onsi/gomega dependency-type: direct:production update-type: version-update:semver-minor dependency-group: golang - dependency-name: golang.org/x/sys dependency-type: direct:production update-type: version-update:semver-minor dependency-group: golang ... Signed-off-by: dependabot[bot] <support@github.com>
45 lines
976 B
Go
45 lines
976 B
Go
// Copyright 2023 The Go Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style
|
|
// license that can be found in the LICENSE file.
|
|
|
|
package slices
|
|
|
|
import "golang.org/x/exp/constraints"
|
|
|
|
// min is a version of the predeclared function from the Go 1.21 release.
|
|
func min[T constraints.Ordered](a, b T) T {
|
|
if a < b || isNaN(a) {
|
|
return a
|
|
}
|
|
return b
|
|
}
|
|
|
|
// max is a version of the predeclared function from the Go 1.21 release.
|
|
func max[T constraints.Ordered](a, b T) T {
|
|
if a > b || isNaN(a) {
|
|
return a
|
|
}
|
|
return b
|
|
}
|
|
|
|
// cmpLess is a copy of cmp.Less from the Go 1.21 release.
|
|
func cmpLess[T constraints.Ordered](x, y T) bool {
|
|
return (isNaN(x) && !isNaN(y)) || x < y
|
|
}
|
|
|
|
// cmpCompare is a copy of cmp.Compare from the Go 1.21 release.
|
|
func cmpCompare[T constraints.Ordered](x, y T) int {
|
|
xNaN := isNaN(x)
|
|
yNaN := isNaN(y)
|
|
if xNaN && yNaN {
|
|
return 0
|
|
}
|
|
if xNaN || x < y {
|
|
return -1
|
|
}
|
|
if yNaN || x > y {
|
|
return +1
|
|
}
|
|
return 0
|
|
}
|