package util func InSlice[T comparable](v T, s []T) bool { for _, vv := range s { if v == vv { return true } } return false } func InSliceAny[T any](v T, s []T, equalFn func(a, b T) bool) bool { for _, vv := range s { if equalFn(v, vv) { return true } } return false } func InSliceAnyFunc[T any](equalFn func(a, b T) bool) func(v T, s []T) bool { return func(v T, s []T) bool { return InSliceAny(v, s, equalFn) } }