29 lines
437 B
V
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'
|
|
}
|