v2 / vlib / v / tests / multiret_in_or_expr_test.v
31 lines · 23 sloc · 489 bytes · 017ace6ea7402430a992aa0820d5e472ebca74c7
Raw
1fn multi_return1() ?(int, int) {
2 return 1, 2
3}
4
5fn multi_return2() ?(i64, i64) {
6 return 11, 22
7}
8
9fn multi_return3() ?(int, i64) {
10 return 11, 22
11}
12
13fn test_multi_return_in_or_expr() {
14 a1, b1 := multi_return1() or { 0, -1 }
15
16 println('${a1}, ${b1}')
17 assert a1 == 1
18 assert b1 == 2
19
20 a2, b2 := multi_return2() or { 0, -1 }
21
22 println('${a2}, ${b2}')
23 assert a2 == 11
24 assert b2 == 22
25
26 a3, b3 := multi_return3() or { 0, -1 }
27
28 println('${a3}, ${b3}')
29 assert a3 == 11
30 assert b3 == 22
31}
32