arrays: add a generic `arrays.concat(os.args,'abc','xyz')` function (#11985)
parent
4c01627e00
commit
09dfc3f301
|
@ -280,3 +280,13 @@ pub fn group_by<K, V>(list []V, grouping_op fn (v V) K) map[K][]V {
|
||||||
|
|
||||||
return result
|
return result
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// concatenate two arrays
|
||||||
|
pub fn concat<T>(a []T, b ...T) []T {
|
||||||
|
mut m := []T{cap: a.len + b.len}
|
||||||
|
|
||||||
|
m << a
|
||||||
|
m << b
|
||||||
|
|
||||||
|
return m
|
||||||
|
}
|
||||||
|
|
|
@ -180,3 +180,17 @@ fn test_group_by() {
|
||||||
return 0
|
return 0
|
||||||
}) == map[int][]int{}
|
}) == map[int][]int{}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
fn test_concat_int() {
|
||||||
|
mut a := [1, 2, 3]
|
||||||
|
mut b := [3, 2, 1]
|
||||||
|
|
||||||
|
assert concat(a, ...b) == [1, 2, 3, 3, 2, 1]
|
||||||
|
}
|
||||||
|
|
||||||
|
fn test_concat_string() {
|
||||||
|
mut a := ['1', '2', '3']
|
||||||
|
mut b := ['3', '2', '1']
|
||||||
|
|
||||||
|
assert concat(a, ...b) == ['1', '2', '3', '3', '2', '1']
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue