go.charczuk.com@v0.0.0-20240327042549-bc490516bd1a/sdk/mathutil/copy_sort.go (about) 1 /* 2 3 Copyright (c) 2023 - Present. Will Charczuk. All rights reserved. 4 Use of this source code is governed by a MIT license that can be found in the LICENSE file at the root of the repository. 5 6 */ 7 8 package mathutil 9 10 import ( 11 "cmp" 12 "sort" 13 ) 14 15 // CopySort copies and sorts a slice ascending. 16 func CopySort[T cmp.Ordered](input []T) []T { 17 copy := Copy(input) 18 sort.Slice(copy, func(i, j int) bool { 19 return copy[i] < copy[j] 20 }) 21 return copy 22 }