| 1 | type Map = map[string]string |
| 2 | |
| 3 | pub fn new_map() Map { |
| 4 | return Map({ |
| 5 | '23': 'str' |
| 6 | }) |
| 7 | } |
| 8 | |
| 9 | fn (a Map) + (b Map) Map { |
| 10 | str := b['23'] |
| 11 | return Map({ |
| 12 | '34': str + '12' |
| 13 | }) |
| 14 | } |
| 15 | |
| 16 | fn test_map_alias_op_overloading() { |
| 17 | a := new_map() |
| 18 | b := new_map() |
| 19 | assert a + b == Map({ |
| 20 | '34': 'str12' |
| 21 | }) |
| 22 | assert '${a + b}' == "Map({'34': 'str12'})" |
| 23 | } |
| 24 |