IR KT-50258 rewrite enum-based 'when' more carefully

This commit is contained in:
Dmitry Petrov
2021-12-21 06:06:45 +00:00
committed by Space
parent e17f121b23
commit 8905586cbb
16 changed files with 308 additions and 28 deletions
@@ -0,0 +1,23 @@
enum class MyEnum {
First,
Second
}
fun getValue() = MyEnum.First
var result = "Failed"
fun getLambda(): (Int) -> Unit =
when (val value = getValue()) {
MyEnum.Second -> { _ -> }
MyEnum.First -> { _ ->
if (value == MyEnum.First) {
result = "OK"
}
}
}
fun box(): String {
getLambda().invoke(2)
return result
}