| object A { | |
| var x = 0 | |
| var gets = 0 | |
| var sets = 0 | |
| operator fun get(vararg va: Int): Int { | |
| for (i in va) { | |
| gets += i | |
| } | |
| return x | |
| } | |
| operator fun set(vararg va: Int, value: Int) { | |
| for (i in va) { | |
| sets += i | |
| } | |
| x = value | |
| } | |
| } | |
| fun box(): String { | |
| A.x = 0 | |
| val xx = A[1, 2, 3]++ | |
| if (xx != 0) return "Failed xx: $xx" | |
| if (A.x != 1) return "Failed A.x: ${A.x}" | |
| if (A.gets != 6) return "Failed A.gets: ${A.gets}" | |
| if (A.sets != 6) return "Failed A.sets: ${A.sets}" | |
| return "OK" | |
| } |