Debugger: do not insert array in imports

This commit is contained in:
Natalia Ukhorskaya
2016-03-29 16:57:03 +03:00
parent 2ce9783214
commit 102edd5a0e
11 changed files with 213 additions and 32 deletions
@@ -0,0 +1,31 @@
LineBreakpoint created at createExpressionCastToBuiltIn.kt:7
!JDK_HOME!\bin\java -agentlib:jdwp=transport=dt_socket,address=!HOST_NAME!:!HOST_PORT!,suspend=y,server=n -Dfile.encoding=!FILE_ENCODING! -classpath !OUTPUT_PATH!;!KOTLIN_RUNTIME!;!CUSTOM_LIBRARY!;!RT_JAR! createExpressionCastToBuiltIn.CreateExpressionCastToBuiltInKt
Connected to the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
createExpressionCastToBuiltIn.kt:7
package createExpressionCastToBuiltIn
fun main(args: Array<String>) {
val primitiveArray = intArrayOf(1)
val stringArray = arrayOf("a")
//Breakpoint!
val a = 1
}
// PRINT_FRAME
// SKIP: value, hash, hash32
// DESCRIPTOR_VIEW_OPTIONS: NAME_EXPRESSION_RESULT
Compile bytecode for args
Compile bytecode for primitiveArray
Compile bytecode for primitiveArray[0]
Compile bytecode for stringArray
Compile bytecode for stringArray[0]
frame = main
local = args (expression = args)
local = primitiveArray (expression = primitiveArray)
element = 0 (expression = primitiveArray[0])
local = stringArray (expression = stringArray)
element = 0 (expression = stringArray[0])
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0
@@ -20,7 +20,7 @@ fun main(args: Array<String>) {
}
// PRINT_FRAME
// DESCRIPTOR_VIEW_OPTIONS: NAME_AND_EXPRESSION
// DESCRIPTOR_VIEW_OPTIONS: NAME_EXPRESSION
frame = main
local = args (expression = args)
@@ -0,0 +1,38 @@
LineBreakpoint created at createExpressionWithArray.kt:9
!JDK_HOME!\bin\java -agentlib:jdwp=transport=dt_socket,address=!HOST_NAME!:!HOST_PORT!,suspend=y,server=n -Dfile.encoding=!FILE_ENCODING! -classpath !OUTPUT_PATH!;!KOTLIN_RUNTIME!;!CUSTOM_LIBRARY!;!RT_JAR! createExpressionWithArray.CreateExpressionWithArrayKt
Connected to the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
createExpressionWithArray.kt:9
package createExpressionWithArray
import forTests.MyJavaClass
fun main(args: Array<String>) {
val baseArray = arrayOf(MyJavaClass().getBaseClassValue())
val innerArray = arrayOf(MyJavaClass().getInnerClassValue())
//Breakpoint!
val a = 1
}
// PRINT_FRAME
// DESCRIPTOR_VIEW_OPTIONS: NAME_EXPRESSION_RESULT
Compile bytecode for args
Compile bytecode for baseArray
Compile bytecode for baseArray[0]
Compile bytecode for baseArray[0].i2
Compile bytecode for innerArray
Compile bytecode for innerArray[0]
Compile bytecode for (innerArray[0] as InnerClass).i
Compile bytecode for (innerArray[0] as InnerClass).i2
frame = main
local = args (expression = args)
local = baseArray (expression = baseArray)
element = 0 (expression = baseArray[0])
field = i2 (expression = baseArray[0].i2)
local = innerArray (expression = innerArray)
element = 0 (expression = innerArray[0])
field = i (expression = (innerArray[0] as InnerClass).i)
field = i2 (expression = (innerArray[0] as InnerClass).i2)
Disconnected from the target VM, address: '!HOST_NAME!:PORT_NAME!', transport: 'socket'
Process finished with exit code 0
@@ -0,0 +1,12 @@
package createExpressionCastToBuiltIn
fun main(args: Array<String>) {
val primitiveArray = intArrayOf(1)
val stringArray = arrayOf("a")
//Breakpoint!
val a = 1
}
// PRINT_FRAME
// SKIP: value, hash, hash32
// DESCRIPTOR_VIEW_OPTIONS: NAME_EXPRESSION_RESULT
@@ -16,4 +16,4 @@ fun main(args: Array<String>) {
}
// PRINT_FRAME
// DESCRIPTOR_VIEW_OPTIONS: NAME_AND_EXPRESSION
// DESCRIPTOR_VIEW_OPTIONS: NAME_EXPRESSION
@@ -0,0 +1,13 @@
package createExpressionWithArray
import forTests.MyJavaClass
fun main(args: Array<String>) {
val baseArray = arrayOf(MyJavaClass().getBaseClassValue())
val innerArray = arrayOf(MyJavaClass().getInnerClassValue())
//Breakpoint!
val a = 1
}
// PRINT_FRAME
// DESCRIPTOR_VIEW_OPTIONS: NAME_EXPRESSION_RESULT
@@ -23,4 +23,19 @@ public class MyJavaClass {
private static class PrivateJavaClass {
public final int prop = 1;
}
public static class BaseClass {
public final int i2 = 1;
}
public BaseClass getBaseClassValue() {
return new BaseClass();
}
public BaseClass getInnerClassValue() {
return new InnerClass();
}
public static class InnerClass extends BaseClass {
public final int i = 1;
}
}