v2 / vlib / v / tests / builtin_maps / map_builtin_call_test.v
27 lines · 23 sloc · 581 bytes · 6488041a749df9762348d019c4223908c476f2e2
Raw
1fn call_key_is_generic[T](v T) {
2 a := map[T]u8{}
3 _ := a.keys().filter(it == v)
4}
5
6fn call_value_is_generic[T](v T) {
7 a := map[u8]T{}
8 _ := a.values().filter(it == v)
9}
10
11fn call_all_is_generic_keys_method[T, U](v T) {
12 a := map[T]U{}
13 _ := a.keys().filter(it == v)
14}
15
16fn call_all_is_generic_values_method[T, U](v U) {
17 a := map[T]U{}
18 _ := a.values().filter(it == v)
19}
20
21fn test_call_has_generic() {
22 call_key_is_generic[int](1)
23 call_value_is_generic[string]('')
24 call_all_is_generic_keys_method[int, string](1)
25 call_all_is_generic_values_method[int, string]('')
26 assert true
27}
28