ShrinkSliceAt 추가

This commit is contained in:
2023-12-02 20:30:43 +09:00
parent 1fd3e86ed3
commit 3e1febab56

13
misc.go
View File

@ -104,6 +104,19 @@ func SerializeInterface(w io.Writer, val interface{}) (err error) {
return
}
func ShrinkSliceAt[T any](in []T, from int) []T {
if len(in) == 0 {
return in
}
cursor := from
for i := from + 1; i < len(in); i++ {
in[cursor] = in[i]
cursor++
}
return in[:len(in)-1]
}
func ShrinkSlice[T any](in []T, compare func(elem T) bool) []T {
if len(in) == 0 {
return in