mirror of
https://github.com/jlengrand/kotlin.git
synced 2026-05-09 08:31:29 +00:00
Generate TABLESWITCH/LOOKUPSWITCH bytecode operation for when operator by String constants
24 lines
493 B
Kotlin
Vendored
24 lines
493 B
Kotlin
Vendored
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"
|
|
}
|