This repository has been archived on 2024-06-02. You can view files and clone it, but cannot push or open issues or pull requests.
x/util.go

21 lines
420 B
Go
Raw Normal View History

2023-07-05 01:25:50 -06:00
package x
func indexOf[T comparable] (haystack []T, needle T) int {
for index, test := range haystack {
if test == needle {
return index
}
}
return -1
}
func remove[T any] (slice []T, index int) []T {
return append(slice[:index], slice[index + 1:]...)
}
func insert[T any] (slice []T, index int, element T) []T {
slice = append(slice[:index + 1], slice[index:]...)
slice[index] = element
return slice
}