Files
kotlin/compiler/testData/codegen/box/builtinStubMethods/MapEntry.kt
Jiaxiang Chen afcbd76c9e Implement stub methods generation for Kotlin Immutable Collection classes.
This change is to fill the gap between Kotlin Collection
classes(immutable) and Java Collection classes(mutable), to avoid
calling an unsupported operation like remove() on an immutable class in
jvm.
2019-05-21 17:20:20 +03:00

18 lines
524 B
Kotlin
Vendored

// TARGET_BACKEND: JVM
class MyMapEntry<K, V>: Map.Entry<K, V> {
override fun hashCode(): Int = 0
override fun equals(other: Any?): Boolean = false
override val key: K get() = throw UnsupportedOperationException()
override val value: V get() = throw UnsupportedOperationException()
}
fun box(): String {
try {
(MyMapEntry<String, Int>() as java.util.Map.Entry<String, Int>).setValue(1)
throw AssertionError()
} catch (e: UnsupportedOperationException) {
return "OK"
}
}