v/vlib/v/tests/generics_with_multiple_gene...

29 lines
437 B
V

struct Foo<A, B> {
a A
b B
}
fn (num Foo<A, B>) get_foo1() (A, B) {
return num.a, num.b
}
fn (num Foo<A, B>) get_foo2<B, A>() (A, B) {
return num.a, num.b
}
fn test_generics_with_multi_generics_struct_receiver() {
num := Foo<int, string>{
a: 3
b: 'aaa'
}
a1, b1 := num.get_foo1()
println('$a1, $b1')
assert a1 == 3
assert b1 == 'aaa'
a2, b2 := num.get_foo2()
println('$a2, $b2')
assert a2 == 3
assert b2 == 'aaa'
}