Closed
Description
This came up in the discussion of #55358 and prior discussions. It would be nice to have a simple, generic way to concatenate a slice of slices.
Here's the proposed signature:
func Concat[S ~[]E, E any](dst S, slices ...S) S
Usage:
// Join slices into a new slice
a := []int{ 1, 2, 3 }
b := []int{ 4, 5, 6 }
c := slices.Concat(nil, a, b)
// c == int{ 1, 2, 3, 4, 5, 6 }
// overwrite an existing slice
a = slices.Concat(a[:0], c[0:1], c[2:3], c[4:5])
// a == int{ 1, 3, 5 }