Files
kotlin-fork/compiler/testData/codegen/box/compileKotlinAgainstKotlin/metadataForMembersInLocalClassInInitializer.kt
T
2021-02-19 12:19:42 +03:00

33 lines
590 B
Kotlin
Vendored

// TARGET_BACKEND: JVM
// WITH_STDLIB
// WITH_REFLECT
// MODULE: lib
// FILE: A.kt
class A {
val o = object {
@JvmName("jvmGetO")
fun getO(): String = "O"
}
val k = object {
@get:JvmName("jvmGetK")
val k: String = "K"
}
}
// MODULE: main(lib)
// FILE: B.kt
import kotlin.reflect.full.*
fun box(): String {
val a = A()
val obj1 = a.o
val o = obj1::class.declaredMemberFunctions.single().call(obj1) as String
val obj2 = a.k
val k = obj2::class.declaredMemberProperties.single().call(obj2) as String
return o + k
}