Debugger: Provide fixed implementation of 'toString()' for lambdas (KT-32691)
This commit is contained in:
+20
@@ -0,0 +1,20 @@
|
||||
fun main() {
|
||||
//Breakpoint!
|
||||
val a = 5
|
||||
}
|
||||
|
||||
private fun String.removeId(): String {
|
||||
return substringBeforeLast('#') + "#id"
|
||||
}
|
||||
|
||||
// EXPRESSION: {}.toString().removeId()
|
||||
// RESULT: "kotlin.jvm.internal.Lambda#id": Ljava/lang/String;
|
||||
|
||||
// EXPRESSION: { 1 + 2 }.toString().removeId()
|
||||
// RESULT: "kotlin.jvm.internal.Lambda#id": Ljava/lang/String;
|
||||
|
||||
// EXPRESSION: { s: String -> s.toString() }.toString().removeId()
|
||||
// RESULT: "kotlin.jvm.internal.Lambda#id": Ljava/lang/String;
|
||||
|
||||
// EXPRESSION: { l: List<String> -> l.first() }.toString().removeId()
|
||||
// RESULT: "kotlin.jvm.internal.Lambda#id": Ljava/lang/String;
|
||||
Vendored
+11
@@ -0,0 +1,11 @@
|
||||
LineBreakpoint created at lambdaToString.kt:3
|
||||
Run Java
|
||||
Connected to the target VM
|
||||
lambdaToString.kt:3
|
||||
Compile bytecode for {}.toString().removeId()
|
||||
Compile bytecode for { 1 + 2 }.toString().removeId()
|
||||
Compile bytecode for { s: String -> s.toString() }.toString().removeId()
|
||||
Compile bytecode for { l: List<String> -> l.first() }.toString().removeId()
|
||||
Disconnected from the target VM
|
||||
|
||||
Process finished with exit code 0
|
||||
Reference in New Issue
Block a user