diff options
Diffstat (limited to 'pkg/u/list.go')
-rw-r--r-- | pkg/u/list.go | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/pkg/u/list.go b/pkg/u/list.go index cf71909..7271ef3 100644 --- a/pkg/u/list.go +++ b/pkg/u/list.go @@ -16,6 +16,14 @@ func FirstOrZero[T any](v []T) T { return v[0] } +func Map[T any, V any](ts []T, fun func(T) V) []V { + rs := make([]V, len(ts)) + for i := range ts { + rs[i] = fun(ts[i]) + } + return rs +} + func ChunkBy[T any](items []T, chunkSize int) [][]T { var chunks = make([][]T, 0, (len(items)/chunkSize)+1) for chunkSize < len(items) { |