struct VaTestGroup { name string } fn variadic_test(name string, groups ...VaTestGroup) { assert groups.len == 2 assert groups[0].name == 'users' assert groups[1].name == 'admins' } fn test_fn_variadic() { group1 := VaTestGroup{name: 'users'} group2 := VaTestGroup{name: 'admins'} variadic_test('joe', group1, group2) } fn variadic_test_generic(a int, b ...T) T { b1 := b[0] b2 := b[1] return '$a $b1 $b2' } fn test_fn_variadic_generic() { assert variadic_test_generic(111, 'hello', 'v') == '111 hello v' }