v2 / vlib / v / tests / generics / generic_fn_infer_struct_test.v
19 lines · 16 sloc · 334 bytes · 6488041a749df9762348d019c4223908c476f2e2
Raw
1struct Node[T] {
2 data T
3}
4
5fn foo[T](n Node[T]) string {
6 return '${n}'
7}
8
9fn test_generics_fn_infer_struct() {
10 ret1 := foo(Node[int]{})
11 println(ret1)
12 assert ret1.contains('Node[int]{')
13 assert ret1.contains('data: 0')
14
15 ret2 := foo(Node[u8]{})
16 println(ret2)
17 assert ret2.contains('Node[u8]{')
18 assert ret2.contains('data: 0')
19}
20