31 lines
950 B
Kotlin
Vendored
31 lines
950 B
Kotlin
Vendored
interface Some
|
|
|
|
object O1 : Some
|
|
|
|
object O2 : Some
|
|
|
|
enum class SomeEnum(val x: Some) {
|
|
// constructor SomeEnum(Some)
|
|
// │object O1: Some
|
|
// ││
|
|
FIRST(O1) {
|
|
// Boolean
|
|
// │ Boolean
|
|
// │ │
|
|
override fun check(y: Some): Boolean = true
|
|
},
|
|
// constructor SomeEnum(Some)
|
|
// │object O2: Some
|
|
// ││
|
|
SECOND(O2) {
|
|
// Boolean
|
|
// │ SomeEnum.SECOND.check.y: Some
|
|
// │ │ EQ operator call
|
|
// │ │ │ object O2: Some
|
|
// │ │ │ │
|
|
override fun check(y: Some): Boolean = y == O2
|
|
};
|
|
|
|
abstract fun check(y: Some): Boolean
|
|
}
|