v2 / vlib / v / tests / fns / fn_mut_arg_of_interface_test.v
27 lines · 22 sloc · 377 bytes · 6488041a749df9762348d019c4223908c476f2e2
Raw
1interface TheInterface {
2mut:
3 an_interface() ?
4}
5
6struct Implementation {
7}
8
9fn (mut i Implementation) an_interface() ? {
10 return
11}
12
13fn maker() ?TheInterface {
14 inner := Implementation{}
15 return inner
16}
17
18fn do(mut inter TheInterface) string {
19 return 'ok'
20}
21
22fn test_fn_mut_arg_of_interface() {
23 mut inner := maker()?
24 ret := do(mut inner)
25 println(ret)
26 assert ret == 'ok'
27}
28