Files
kotlin/compiler/testData/codegen/boxWithStdlib/whenStringOptimization/sameHashCode.kt
Denis Zharkov d4cb822ee8 When by String constants:
Generate TABLESWITCH/LOOKUPSWITCH bytecode operation for when operator by String constants
2014-07-21 17:13:56 +04:00

24 lines
493 B
Kotlin

import kotlin.test.assertEquals
fun foo(x : String) : String {
assert("abz]".hashCode() == "aby|".hashCode())
when (x) {
"abz]", "cde" -> return "abz_cde"
"aby|", "ghi", "abz]" -> return "aby_ghi"
}
return "other"
}
fun box() : String {
assertEquals("abz_cde", foo("abz]"))
assertEquals("abz_cde", foo("cde"))
assertEquals("aby_ghi", foo("aby|"))
assertEquals("aby_ghi", foo("ghi"))
assertEquals("other", foo("xyz"))
return "OK"
}