Files
kotlin/compiler/testData/codegen/bytecodeText/whenEnumOptimization/manyWhensWithinClass.kt
2018-12-21 16:20:45 +01:00

37 lines
785 B
Kotlin
Vendored

// IGNORE_BACKEND: JVM_IR
package abc.foo
enum class Season {
WINTER,
SPRING,
SUMMER,
AUTUMN
}
class A {
public fun bar1(x : Season) : String {
when (x) {
Season.WINTER, Season.SPRING -> return "winter_spring"
Season.SPRING -> return "spring"
Season.SUMMER -> return "summer"
}
return "autumn";
}
public fun bar2(y : Season) : String {
return bar3(y) { x ->
when (x) {
Season.WINTER, Season.SPRING -> "winter_spring"
Season.SPRING -> "spring"
Season.SUMMER -> "summer"
else -> "autumn"
}
}
}
private fun bar3(x : Season, block : (Season) -> String) = block(x)
}
// 2 TABLESWITCH