Files
kotlin-fork/js/js.translator/testData/enum/cases/accessing.kt
T
2014-09-01 12:32:50 +04:00

31 lines
757 B
Kotlin

package foo
enum class A {
FOO
BAR : A() {
fun explicitFromEntry() = A.FOO
fun implicitFromEntry() = FOO
}
fun explicit() = A.FOO
fun implicit() = FOO
}
fun A.extExplicit() = A.FOO
//fun A.extImplicit() = FOO
fun box(): String {
assertEquals(A.FOO, A.FOO.explicit(), "explicit access")
assertEquals(A.FOO, A.FOO.implicit(), "implicit access")
assertEquals(A.FOO, A.FOO.explicit(), "explicit access from BAR")
assertEquals(A.FOO, A.FOO.implicit(), "implicit access from BAR")
assertEquals(A.FOO, A.FOO.extExplicit(), "explicit access from ext fun")
// TODO uncoment when KT-5605 will be fixed
//assertEquals(A.FOO, A.FOO.extImplicit(), "implicit access from ext fun")
return "OK"
}