Files
kotlin/compiler/testData/ir/irText/classes/enumClassModality.kt
Dmitry Petrov 360bfcaf6a KT-29340 Provide effective modality for enum class in IR
* if enum class has abstract members, then it is ABSTRACT
* otherwise, if enum class has entries with members, then it is OPEN
* otherwise, it is FINAL.
2019-01-22 10:52:54 +03:00

47 lines
563 B
Kotlin
Vendored

enum class TestFinalEnum1 {
X1
}
enum class TestFinalEnum2(val x: Int) {
X1(1)
}
enum class TestFinalEnum3 {
X1
;
fun doStuff() {}
}
enum class TestOpenEnum1 {
X1 {
override fun toString() = "X1"
}
}
enum class TestOpenEnum2 {
X1 {
override fun foo() {}
};
open fun foo() {}
}
enum class TestAbstractEnum1 {
X1 {
override fun foo() {}
};
abstract fun foo()
}
interface IFoo {
fun foo()
}
enum class TestAbstractEnum2 : IFoo {
X1 {
override fun foo() {}
}
}