Files
kotlin-fork/idea/jvm-debugger/jvm-debugger-test/testData/evaluation/singleBreakpoint/kClass.kt
T
Yan Zhulanow 7490c229ac EA-219152 (partially): Support KClass 'unboxing' in debugger
KClass can be 'unboxed' to a plain Java class. Debugger should be aware of this.
Unfortunately, this commit is not enough to fully support this scenario, as it's impossible to invoke KClass methods/extension on java.lang.Class instance. There should be an additional diagnostic that will forbid such calls.
2020-02-14 17:35:18 +09:00

23 lines
530 B
Kotlin
Vendored

package test
class Foo
fun main() {
val cls = Foo::class
val cls2 = Foo::class
val cls3 = Foo::class.java
//Breakpoint!
foo(cls2)
}
private fun foo(a: Any?) {}
// EXPRESSION: cls
// RESULT: instance of java.lang.Class(reflected class=test.Foo, id=ID): Ljava/lang/Class;
// EXPRESSION: cls2
// RESULT: instance of kotlin.jvm.internal.ClassReference(id=ID): Lkotlin/jvm/internal/ClassReference;
// EXPRESSION: cls3
// RESULT: instance of java.lang.Class(reflected class=test.Foo, id=ID): Ljava/lang/Class;