When by enum:

Generate TABLESWITCH/LOOKUPSWITCH bytecode command in case of "when" by enum entries
This commit is contained in:
Denis Zharkov
2014-07-15 19:55:39 +04:00
committed by Evgeny Gerashchenko
parent b2aa249817
commit 5a1c995b5c
29 changed files with 1059 additions and 12 deletions
@@ -0,0 +1,29 @@
import kotlin.test.assertEquals
class A {
class object {
enum class Season {
WINTER
SPRING
SUMMER
AUTUMN
}
}
}
fun foo(x : A.Season) : String {
return when (x) {
A.Season.WINTER -> "winter"
A.Season.SPRING -> "spring"
A.Season.SUMMER -> "summer"
else -> "other"
}
}
fun box() : String {
assertEquals("winter", foo(A.Season.WINTER))
assertEquals("spring", foo(A.Season.SPRING))
assertEquals("summer", foo(A.Season.SUMMER))
assertEquals("other", foo(A.Season.AUTUMN))
return "OK"
}