Skip to content

Commit

Permalink
On Go 1.21+, use cmp.Ordered instead of a private type
Browse files Browse the repository at this point in the history
Go 1.21 introduces a language-maintained constraint permitting any
ordered types, use that instead of the private version defined in
sets.

Signed-off-by: Stephen Kitt <[email protected]>
  • Loading branch information
skitt committed Oct 11, 2024
1 parent 49e7df5 commit 85ff5d8
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 0 deletions.
2 changes: 2 additions & 0 deletions set/ordered.go
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
//go:build !go1.21

/*
Copyright 2023 The Kubernetes Authors.
Expand Down
27 changes: 27 additions & 0 deletions set/ordered_go1.21.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
//go:build go1.21

/*
Copyright 2023 The Kubernetes Authors.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/

package set

import "cmp"

// ordered is a constraint that permits any ordered type: any type
// that supports the operators < <= >= >.
// If future releases of Go add new ordered types,
// this constraint will be modified to include them.
type ordered = cmp.Ordered

0 comments on commit 85ff5d8

Please sign in to comment.