public class com.sun.tools.jdi.ObjectReferenceImpl extends com.sun.tools.jdi.ValueImpl implements com.sun.jdi.ObjectReference, com.sun.tools.jdi.VMListener
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.jdi.ObjectReferenceImpl
super_class: com.sun.tools.jdi.ValueImpl
{
protected long ref;
descriptor: J
flags: (0x0004) ACC_PROTECTED
private com.sun.jdi.ReferenceType type;
descriptor: Lcom/sun/jdi/ReferenceType;
flags: (0x0002) ACC_PRIVATE
private int gcDisableCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
boolean addedListener;
descriptor: Z
flags: (0x0000)
private static final com.sun.tools.jdi.ObjectReferenceImpl$Cache noInitCache;
descriptor: Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final com.sun.tools.jdi.ObjectReferenceImpl$Cache markerCache;
descriptor: Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private com.sun.tools.jdi.ObjectReferenceImpl$Cache cache;
descriptor: Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new com.sun.tools.jdi.ObjectReferenceImpl$Cache
dup
invokespecial com.sun.tools.jdi.ObjectReferenceImpl$Cache.<init>:()V
putstatic com.sun.tools.jdi.ObjectReferenceImpl.noInitCache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
1: new com.sun.tools.jdi.ObjectReferenceImpl$Cache
dup
invokespecial com.sun.tools.jdi.ObjectReferenceImpl$Cache.<init>:()V
putstatic com.sun.tools.jdi.ObjectReferenceImpl.markerCache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
return
LocalVariableTable:
Start End Slot Name Signature
private void disableCache();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.state:()Lcom/sun/tools/jdi/VMState;
dup
astore 1
monitorenter
1: aload 0
aconst_null
putfield com.sun.tools.jdi.ObjectReferenceImpl.cache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
2: aload 1
monitorexit
3: goto 6
StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.tools.jdi.VMState
StackMap stack: java.lang.Throwable
4: aload 1
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
Exception table:
from to target type
1 3 4 any
4 5 4 any
private void enableCache();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.state:()Lcom/sun/tools/jdi/VMState;
dup
astore 1
monitorenter
1: aload 0
getstatic com.sun.tools.jdi.ObjectReferenceImpl.markerCache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
putfield com.sun.tools.jdi.ObjectReferenceImpl.cache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
2: aload 1
monitorexit
3: goto 6
StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.tools.jdi.VMState
StackMap stack: java.lang.Throwable
4: aload 1
monitorexit
5: athrow
6: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
Exception table:
from to target type
1 3 4 any
4 5 4 any
protected com.sun.tools.jdi.ObjectReferenceImpl$Cache newCache();
descriptor: ()Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=1, args_size=1
start local 0 0: new com.sun.tools.jdi.ObjectReferenceImpl$Cache
dup
invokespecial com.sun.tools.jdi.ObjectReferenceImpl$Cache.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
protected com.sun.tools.jdi.ObjectReferenceImpl$Cache getCache();
descriptor: ()Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.state:()Lcom/sun/tools/jdi/VMState;
dup
astore 1
monitorenter
1: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.cache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
getstatic com.sun.tools.jdi.ObjectReferenceImpl.noInitCache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
if_acmpne 6
2: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.state:()Lcom/sun/tools/jdi/VMState;
invokevirtual com.sun.tools.jdi.VMState.isSuspended:()Z
ifeq 5
3: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.enableCache:()V
4: goto 6
5: StackMap locals: com.sun.tools.jdi.VMState
StackMap stack:
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.disableCache:()V
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.cache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
getstatic com.sun.tools.jdi.ObjectReferenceImpl.markerCache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
if_acmpne 8
7: aload 0
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.newCache:()Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
putfield com.sun.tools.jdi.ObjectReferenceImpl.cache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
8: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.cache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
aload 1
monitorexit
9: areturn
10: StackMap locals:
StackMap stack: java.lang.Throwable
aload 1
monitorexit
11: athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
Exception table:
from to target type
1 9 10 any
10 11 10 any
protected com.sun.tools.jdi.ClassTypeImpl invokableReferenceType(com.sun.jdi.Method);
descriptor: (Lcom/sun/jdi/Method;)Lcom/sun/tools/jdi/ClassTypeImpl;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
checkcast com.sun.tools.jdi.ClassTypeImpl
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 1 1 method Lcom/sun/jdi/Method;
MethodParameters:
Name Flags
method
void <init>(com.sun.jdi.VirtualMachine, long);
descriptor: (Lcom/sun/jdi/VirtualMachine;J)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokespecial com.sun.tools.jdi.ValueImpl.<init>:(Lcom/sun/jdi/VirtualMachine;)V
1: aload 0
aconst_null
putfield com.sun.tools.jdi.ObjectReferenceImpl.type:Lcom/sun/jdi/ReferenceType;
2: aload 0
iconst_0
putfield com.sun.tools.jdi.ObjectReferenceImpl.gcDisableCount:I
3: aload 0
iconst_0
putfield com.sun.tools.jdi.ObjectReferenceImpl.addedListener:Z
4: aload 0
getstatic com.sun.tools.jdi.ObjectReferenceImpl.noInitCache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
putfield com.sun.tools.jdi.ObjectReferenceImpl.cache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
5: aload 0
lload 2
putfield com.sun.tools.jdi.ObjectReferenceImpl.ref:J
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 7 1 aVm Lcom/sun/jdi/VirtualMachine;
0 7 2 aRef J
MethodParameters:
Name Flags
aVm
aRef
protected java.lang.String description();
descriptor: ()Ljava/lang/String;
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "ObjectReference "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.uniqueID:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
public boolean vmSuspended(com.sun.tools.jdi.VMAction);
descriptor: (Lcom/sun/tools/jdi/VMAction;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.enableCache:()V
1: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 2 1 action Lcom/sun/tools/jdi/VMAction;
MethodParameters:
Name Flags
action
public boolean vmNotSuspended(com.sun.tools.jdi.VMAction);
descriptor: (Lcom/sun/tools/jdi/VMAction;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.state:()Lcom/sun/tools/jdi/VMState;
dup
astore 2
monitorenter
1: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.cache:Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
ifnull 3
aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
bipush 16
iand
ifeq 3
2: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
new java.lang.StringBuilder
dup
ldc "Clearing temporary cache for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.description:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
3: StackMap locals: com.sun.tools.jdi.VMState
StackMap stack:
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.disableCache:()V
4: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.addedListener:Z
ifeq 8
5: aload 0
iconst_0
putfield com.sun.tools.jdi.ObjectReferenceImpl.addedListener:Z
6: aload 2
monitorexit
7: iconst_0
ireturn
8: StackMap locals:
StackMap stack:
aload 2
monitorexit
9: iconst_1
ireturn
10: StackMap locals:
StackMap stack: java.lang.Throwable
aload 2
monitorexit
11: athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 12 1 action Lcom/sun/tools/jdi/VMAction;
Exception table:
from to target type
1 7 10 any
8 9 10 any
10 11 10 any
MethodParameters:
Name Flags
action
public boolean equals(java.lang.Object);
descriptor: (Ljava/lang/Object;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 1
ifnull 6
aload 1
instanceof com.sun.tools.jdi.ObjectReferenceImpl
ifeq 6
1: aload 1
checkcast com.sun.tools.jdi.ObjectReferenceImpl
astore 2
start local 2 2: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.ref:()J
aload 2
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.ref:()J
lcmp
ifne 5
3: aload 0
aload 1
invokespecial com.sun.tools.jdi.ValueImpl.equals:(Ljava/lang/Object;)Z
ifeq 5
4: iconst_1
ireturn
StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl
StackMap stack:
5: iconst_0
ireturn
end local 2 6: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 7 1 obj Ljava/lang/Object;
2 6 2 other Lcom/sun/tools/jdi/ObjectReferenceImpl;
MethodParameters:
Name Flags
obj
public int hashCode();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.ref:()J
l2i
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
public com.sun.jdi.Type type();
descriptor: ()Lcom/sun/jdi/Type;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
public com.sun.jdi.ReferenceType referenceType();
descriptor: ()Lcom/sun/jdi/ReferenceType;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.type:Lcom/sun/jdi/ReferenceType;
ifnonnull 9
1: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$ReferenceType.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ObjectReferenceImpl;)Lcom/sun/tools/jdi/JDWP$ObjectReference$ReferenceType;
2: astore 1
start local 1 3: aload 0
aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 1
getfield com.sun.tools.jdi.JDWP$ObjectReference$ReferenceType.typeID:J
4: aload 1
getfield com.sun.tools.jdi.JDWP$ObjectReference$ReferenceType.refTypeTag:B
5: invokevirtual com.sun.tools.jdi.VirtualMachineImpl.referenceType:(JB)Lcom/sun/tools/jdi/ReferenceTypeImpl;
putfield com.sun.tools.jdi.ObjectReferenceImpl.type:Lcom/sun/jdi/ReferenceType;
end local 1 6: goto 9
StackMap locals:
StackMap stack: com.sun.tools.jdi.JDWPException
7: astore 1
start local 1 8: aload 1
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 1 9: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.type:Lcom/sun/jdi/ReferenceType;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
3 6 1 rtinfo Lcom/sun/tools/jdi/JDWP$ObjectReference$ReferenceType;
8 9 1 exc Lcom/sun/tools/jdi/JDWPException;
Exception table:
from to target type
1 6 7 Class com.sun.tools.jdi.JDWPException
public com.sun.jdi.Value getValue(com.sun.jdi.Field);
descriptor: (Lcom/sun/jdi/Field;)Lcom/sun/jdi/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=2
start local 0 start local 1 0: new java.util.ArrayList
dup
iconst_1
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 1: aload 2
aload 1
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
2: aload 0
aload 2
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.getValues:(Ljava/util/List;)Ljava/util/Map;
astore 3
start local 3 3: aload 3
aload 1
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.jdi.Value
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 4 1 sig Lcom/sun/jdi/Field;
1 4 2 list Ljava/util/List<Lcom/sun/jdi/Field;>;
3 4 3 map Ljava/util/Map<Lcom/sun/jdi/Field;Lcom/sun/jdi/Value;>;
MethodParameters:
Name Flags
sig
public java.util.Map<com.sun.jdi.Field, com.sun.jdi.Value> getValues(java.util.List<? extends com.sun.jdi.Field>);
descriptor: (Ljava/util/List;)Ljava/util/Map;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=10, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateMirrors:(Ljava/util/Collection;)V
1: new java.util.ArrayList
dup
iconst_0
invokespecial java.util.ArrayList.<init>:(I)V
astore 2
start local 2 2: aload 1
invokeinterface java.util.List.size:()I
istore 3
start local 3 3: new java.util.ArrayList
dup
iload 3
invokespecial java.util.ArrayList.<init>:(I)V
astore 4
start local 4 4: iconst_0
istore 5
start local 5 5: goto 12
6: StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl java.util.List java.util.List int java.util.List int
StackMap stack:
aload 1
iload 5
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.sun.jdi.Field
astore 6
start local 6 7: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
checkcast com.sun.tools.jdi.ReferenceTypeImpl
aload 6
invokevirtual com.sun.tools.jdi.ReferenceTypeImpl.validateFieldAccess:(Lcom/sun/jdi/Field;)V
8: aload 6
invokeinterface com.sun.jdi.Field.isStatic:()Z
ifeq 10
9: aload 2
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
goto 11
10: StackMap locals: com.sun.jdi.Field
StackMap stack:
aload 4
aload 6
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 6 11: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
iload 3
if_icmplt 6
end local 5 13: aload 2
invokeinterface java.util.List.size:()I
ifle 16
14: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
aload 2
invokeinterface com.sun.jdi.ReferenceType.getValues:(Ljava/util/List;)Ljava/util/Map;
astore 5
start local 5 15: goto 17
end local 5 16: StackMap locals:
StackMap stack:
new java.util.HashMap
dup
iload 3
invokespecial java.util.HashMap.<init>:(I)V
astore 5
start local 5 17: StackMap locals: java.util.Map
StackMap stack:
aload 4
invokeinterface java.util.List.size:()I
istore 3
18: iload 3
anewarray com.sun.tools.jdi.JDWP$ObjectReference$GetValues$Field
19: astore 6
start local 6 20: iconst_0
istore 7
start local 7 21: goto 27
22: StackMap locals: com.sun.tools.jdi.JDWP$ObjectReference$GetValues$Field[] int
StackMap stack:
aload 4
iload 7
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.sun.tools.jdi.FieldImpl
astore 8
start local 8 23: aload 6
iload 7
new com.sun.tools.jdi.JDWP$ObjectReference$GetValues$Field
dup
24: aload 8
invokevirtual com.sun.tools.jdi.FieldImpl.ref:()J
invokespecial com.sun.tools.jdi.JDWP$ObjectReference$GetValues$Field.<init>:(J)V
25: aastore
end local 8 26: iinc 7 1
StackMap locals:
StackMap stack:
27: iload 7
iload 3
if_icmplt 22
end local 7 28: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
aload 6
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$GetValues.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ObjectReferenceImpl;[Lcom/sun/tools/jdi/JDWP$ObjectReference$GetValues$Field;)Lcom/sun/tools/jdi/JDWP$ObjectReference$GetValues;
getfield com.sun.tools.jdi.JDWP$ObjectReference$GetValues.values:[Lcom/sun/tools/jdi/ValueImpl;
29: astore 7
start local 7 30: goto 33
end local 7 StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl java.util.List java.util.List int java.util.List java.util.Map com.sun.tools.jdi.JDWP$ObjectReference$GetValues$Field[]
StackMap stack: com.sun.tools.jdi.JDWPException
31: astore 8
start local 8 32: aload 8
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 8 start local 7 33: StackMap locals: com.sun.tools.jdi.ValueImpl[]
StackMap stack:
iload 3
aload 7
arraylength
if_icmpeq 37
34: new com.sun.jdi.InternalException
dup
35: ldc "Wrong number of values returned from target VM"
36: invokespecial com.sun.jdi.InternalException.<init>:(Ljava/lang/String;)V
athrow
37: StackMap locals:
StackMap stack:
iconst_0
istore 8
start local 8 38: goto 42
39: StackMap locals: int
StackMap stack:
aload 4
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast com.sun.tools.jdi.FieldImpl
astore 9
start local 9 40: aload 5
aload 9
aload 7
iload 8
aaload
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 9 41: iinc 8 1
StackMap locals:
StackMap stack:
42: iload 8
iload 3
if_icmplt 39
end local 8 43: aload 5
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 44 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 44 1 theFields Ljava/util/List<+Lcom/sun/jdi/Field;>;
2 44 2 staticFields Ljava/util/List<Lcom/sun/jdi/Field;>;
3 44 3 size I
4 44 4 instanceFields Ljava/util/List<Lcom/sun/jdi/Field;>;
5 13 5 i I
7 11 6 field Lcom/sun/jdi/Field;
15 16 5 map Ljava/util/Map<Lcom/sun/jdi/Field;Lcom/sun/jdi/Value;>;
17 44 5 map Ljava/util/Map<Lcom/sun/jdi/Field;Lcom/sun/jdi/Value;>;
20 44 6 queryFields [Lcom/sun/tools/jdi/JDWP$ObjectReference$GetValues$Field;
21 28 7 i I
23 26 8 field Lcom/sun/tools/jdi/FieldImpl;
30 31 7 values [Lcom/sun/tools/jdi/ValueImpl;
33 44 7 values [Lcom/sun/tools/jdi/ValueImpl;
32 33 8 exc Lcom/sun/tools/jdi/JDWPException;
38 43 8 i I
40 41 9 field Lcom/sun/tools/jdi/FieldImpl;
Exception table:
from to target type
28 30 31 Class com.sun.tools.jdi.JDWPException
Signature: (Ljava/util/List<+Lcom/sun/jdi/Field;>;)Ljava/util/Map<Lcom/sun/jdi/Field;Lcom/sun/jdi/Value;>;
MethodParameters:
Name Flags
theFields
public void setValue(com.sun.jdi.Field, com.sun.jdi.Value);
descriptor: (Lcom/sun/jdi/Field;Lcom/sun/jdi/Value;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateMirror:(Lcom/sun/jdi/Mirror;)V
1: aload 0
aload 2
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateMirrorOrNull:(Lcom/sun/jdi/Mirror;)V
2: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
checkcast com.sun.tools.jdi.ReferenceTypeImpl
aload 1
invokevirtual com.sun.tools.jdi.ReferenceTypeImpl.validateFieldSet:(Lcom/sun/jdi/Field;)V
3: aload 1
invokeinterface com.sun.jdi.Field.isStatic:()Z
ifeq 11
4: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
astore 3
start local 3 5: aload 3
instanceof com.sun.jdi.ClassType
ifeq 8
6: aload 3
checkcast com.sun.jdi.ClassType
aload 1
aload 2
invokeinterface com.sun.jdi.ClassType.setValue:(Lcom/sun/jdi/Field;Lcom/sun/jdi/Value;)V
7: return
8: StackMap locals: com.sun.jdi.ReferenceType
StackMap stack:
new java.lang.IllegalArgumentException
dup
9: ldc "Invalid type for static field set"
10: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
end local 3 11: StackMap locals:
StackMap stack:
iconst_1
anewarray com.sun.tools.jdi.JDWP$ObjectReference$SetValues$FieldValue
12: astore 3
start local 3 13: aload 3
iconst_0
new com.sun.tools.jdi.JDWP$ObjectReference$SetValues$FieldValue
dup
14: aload 1
checkcast com.sun.tools.jdi.FieldImpl
invokevirtual com.sun.tools.jdi.FieldImpl.ref:()J
15: aload 2
16: aload 1
checkcast com.sun.tools.jdi.FieldImpl
17: invokestatic com.sun.tools.jdi.ValueImpl.prepareForAssignment:(Lcom/sun/jdi/Value;Lcom/sun/tools/jdi/ValueContainer;)Lcom/sun/tools/jdi/ValueImpl;
invokespecial com.sun.tools.jdi.JDWP$ObjectReference$SetValues$FieldValue.<init>:(JLcom/sun/tools/jdi/ValueImpl;)V
18: aastore
19: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
aload 3
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$SetValues.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ObjectReferenceImpl;[Lcom/sun/tools/jdi/JDWP$ObjectReference$SetValues$FieldValue;)Lcom/sun/tools/jdi/JDWP$ObjectReference$SetValues;
pop
20: goto 26
StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.jdi.Field com.sun.jdi.Value com.sun.tools.jdi.JDWP$ObjectReference$SetValues$FieldValue[]
StackMap stack: com.sun.tools.jdi.JDWPException
21: astore 4
start local 4 22: aload 4
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 4 end local 3 23: StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.jdi.Field com.sun.jdi.Value
StackMap stack: com.sun.jdi.ClassNotLoadedException
astore 3
start local 3 24: aload 2
ifnull 26
25: aload 3
athrow
end local 3 26: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 27 1 field Lcom/sun/jdi/Field;
0 27 2 value Lcom/sun/jdi/Value;
5 11 3 type Lcom/sun/jdi/ReferenceType;
13 23 3 fvals [Lcom/sun/tools/jdi/JDWP$ObjectReference$SetValues$FieldValue;
22 23 4 exc Lcom/sun/tools/jdi/JDWPException;
24 26 3 e Lcom/sun/jdi/ClassNotLoadedException;
Exception table:
from to target type
19 20 21 Class com.sun.tools.jdi.JDWPException
11 23 23 Class com.sun.jdi.ClassNotLoadedException
Exceptions:
throws com.sun.jdi.InvalidTypeException, com.sun.jdi.ClassNotLoadedException
MethodParameters:
Name Flags
field
value
void validateMethodInvocation(com.sun.jdi.Method, int);
descriptor: (Lcom/sun/jdi/Method;I)V
flags: (0x0000)
Code:
stack=3, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface com.sun.jdi.Method.declaringType:()Lcom/sun/jdi/ReferenceType;
checkcast com.sun.tools.jdi.ReferenceTypeImpl
astore 3
start local 3 1: aload 3
aload 0
invokevirtual com.sun.tools.jdi.ReferenceTypeImpl.isAssignableFrom:(Lcom/sun/jdi/ObjectReference;)Z
ifne 3
2: new java.lang.IllegalArgumentException
dup
ldc "Invalid method"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals: com.sun.tools.jdi.ReferenceTypeImpl
StackMap stack:
aload 3
instanceof com.sun.tools.jdi.ClassTypeImpl
ifeq 6
4: aload 0
aload 1
iload 2
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateClassMethodInvocation:(Lcom/sun/jdi/Method;I)V
5: goto 10
StackMap locals:
StackMap stack:
6: aload 3
instanceof com.sun.tools.jdi.InterfaceTypeImpl
ifeq 9
7: aload 0
aload 1
iload 2
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateIfaceMethodInvocation:(Lcom/sun/jdi/Method;I)V
8: goto 10
9: StackMap locals:
StackMap stack:
new com.sun.jdi.InvalidTypeException
dup
invokespecial com.sun.jdi.InvalidTypeException.<init>:()V
athrow
10: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 11 1 method Lcom/sun/jdi/Method;
0 11 2 options I
1 11 3 declType Lcom/sun/tools/jdi/ReferenceTypeImpl;
Exceptions:
throws com.sun.jdi.InvalidTypeException, com.sun.jdi.InvocationException
MethodParameters:
Name Flags
method
options
void validateClassMethodInvocation(com.sun.jdi.Method, int);
descriptor: (Lcom/sun/jdi/Method;I)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokeinterface com.sun.jdi.Method.isConstructor:()Z
ifeq 2
1: new java.lang.IllegalArgumentException
dup
ldc "Cannot invoke constructor"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
iload 2
invokestatic com.sun.tools.jdi.ObjectReferenceImpl.isNonVirtual:(I)Z
ifeq 5
3: aload 1
invokeinterface com.sun.jdi.Method.isAbstract:()Z
ifeq 5
4: new java.lang.IllegalArgumentException
dup
ldc "Abstract method"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 6 1 method Lcom/sun/jdi/Method;
0 6 2 options I
Exceptions:
throws com.sun.jdi.InvalidTypeException, com.sun.jdi.InvocationException
MethodParameters:
Name Flags
method
options
void validateIfaceMethodInvocation(com.sun.jdi.Method, int);
descriptor: (Lcom/sun/jdi/Method;I)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: iload 2
invokestatic com.sun.tools.jdi.ObjectReferenceImpl.isNonVirtual:(I)Z
ifeq 3
1: aload 1
invokeinterface com.sun.jdi.Method.isAbstract:()Z
ifeq 3
2: new java.lang.IllegalArgumentException
dup
ldc "Abstract method"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
3: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 4 1 method Lcom/sun/jdi/Method;
0 4 2 options I
Exceptions:
throws com.sun.jdi.InvalidTypeException, com.sun.jdi.InvocationException
MethodParameters:
Name Flags
method
options
com.sun.tools.jdi.PacketStream sendInvokeCommand(com.sun.tools.jdi.ThreadReferenceImpl, com.sun.tools.jdi.ClassTypeImpl, com.sun.tools.jdi.MethodImpl, com.sun.tools.jdi.ValueImpl[], int);
descriptor: (Lcom/sun/tools/jdi/ThreadReferenceImpl;Lcom/sun/tools/jdi/ClassTypeImpl;Lcom/sun/tools/jdi/MethodImpl;[Lcom/sun/tools/jdi/ValueImpl;I)Lcom/sun/tools/jdi/PacketStream;
flags: (0x0000)
Code:
stack=8, locals=8, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: new com.sun.tools.jdi.ObjectReferenceImpl$1
dup
aload 0
aload 1
aload 2
aload 3
aload 4
iload 5
invokespecial com.sun.tools.jdi.ObjectReferenceImpl$1.<init>:(Lcom/sun/tools/jdi/ObjectReferenceImpl;Lcom/sun/tools/jdi/ThreadReferenceImpl;Lcom/sun/tools/jdi/ClassTypeImpl;Lcom/sun/tools/jdi/MethodImpl;[Lcom/sun/tools/jdi/ValueImpl;I)V
1: astore 6
start local 6 2: iload 5
iconst_1
iand
ifeq 5
3: aload 1
aload 6
invokevirtual com.sun.tools.jdi.ThreadReferenceImpl.sendResumingCommand:(Lcom/sun/tools/jdi/CommandSender;)Lcom/sun/tools/jdi/PacketStream;
astore 7
start local 7 4: goto 6
end local 7 5: StackMap locals: com.sun.tools.jdi.CommandSender
StackMap stack:
aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 6
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.sendResumingCommand:(Lcom/sun/tools/jdi/CommandSender;)Lcom/sun/tools/jdi/PacketStream;
astore 7
start local 7 6: StackMap locals: com.sun.tools.jdi.PacketStream
StackMap stack:
aload 7
areturn
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 7 1 thread Lcom/sun/tools/jdi/ThreadReferenceImpl;
0 7 2 refType Lcom/sun/tools/jdi/ClassTypeImpl;
0 7 3 method Lcom/sun/tools/jdi/MethodImpl;
0 7 4 args [Lcom/sun/tools/jdi/ValueImpl;
0 7 5 options I
2 7 6 sender Lcom/sun/tools/jdi/CommandSender;
4 5 7 stream Lcom/sun/tools/jdi/PacketStream;
6 7 7 stream Lcom/sun/tools/jdi/PacketStream;
MethodParameters:
Name Flags
thread final
refType final
method final
args final
options final
public com.sun.jdi.Value invokeMethod(com.sun.jdi.ThreadReference, com.sun.jdi.Method, java.util.List<? extends com.sun.jdi.Value>, int);
descriptor: (Lcom/sun/jdi/ThreadReference;Lcom/sun/jdi/Method;Ljava/util/List;I)Lcom/sun/jdi/Value;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=11, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateMirror:(Lcom/sun/jdi/Mirror;)V
1: aload 0
aload 2
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateMirror:(Lcom/sun/jdi/Mirror;)V
2: aload 0
aload 3
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateMirrorsOrNulls:(Ljava/util/Collection;)V
3: aload 2
checkcast com.sun.tools.jdi.MethodImpl
astore 5
start local 5 4: aload 1
checkcast com.sun.tools.jdi.ThreadReferenceImpl
astore 6
start local 6 5: aload 5
invokevirtual com.sun.tools.jdi.MethodImpl.isStatic:()Z
ifeq 13
6: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
instanceof com.sun.jdi.InterfaceType
ifeq 9
7: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
checkcast com.sun.jdi.InterfaceType
astore 7
start local 7 8: aload 7
aload 6
aload 5
aload 3
iload 4
invokeinterface com.sun.jdi.InterfaceType.invokeMethod:(Lcom/sun/jdi/ThreadReference;Lcom/sun/jdi/Method;Ljava/util/List;I)Lcom/sun/jdi/Value;
areturn
end local 7 9: StackMap locals: com.sun.tools.jdi.MethodImpl com.sun.tools.jdi.ThreadReferenceImpl
StackMap stack:
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
instanceof com.sun.jdi.ClassType
ifeq 12
10: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
checkcast com.sun.jdi.ClassType
astore 7
start local 7 11: aload 7
aload 6
aload 5
aload 3
iload 4
invokeinterface com.sun.jdi.ClassType.invokeMethod:(Lcom/sun/jdi/ThreadReference;Lcom/sun/jdi/Method;Ljava/util/List;I)Lcom/sun/jdi/Value;
areturn
end local 7 12: StackMap locals:
StackMap stack:
new java.lang.IllegalArgumentException
dup
ldc "Invalid type for static method invocation"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
aload 0
aload 5
iload 4
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateMethodInvocation:(Lcom/sun/jdi/Method;I)V
14: aload 5
15: aload 3
16: invokevirtual com.sun.tools.jdi.MethodImpl.validateAndPrepareArgumentsForInvoke:(Ljava/util/List;)Ljava/util/List;
astore 7
start local 7 17: aload 7
iconst_0
anewarray com.sun.tools.jdi.ValueImpl
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast com.sun.tools.jdi.ValueImpl[]
astore 8
start local 8 18: aload 0
aload 6
aload 0
aload 5
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.invokableReferenceType:(Lcom/sun/jdi/Method;)Lcom/sun/tools/jdi/ClassTypeImpl;
19: aload 5
aload 8
iload 4
20: invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.sendInvokeCommand:(Lcom/sun/tools/jdi/ThreadReferenceImpl;Lcom/sun/tools/jdi/ClassTypeImpl;Lcom/sun/tools/jdi/MethodImpl;[Lcom/sun/tools/jdi/ValueImpl;I)Lcom/sun/tools/jdi/PacketStream;
21: astore 10
start local 10 22: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 10
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$InvokeMethod.waitForReply:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/PacketStream;)Lcom/sun/tools/jdi/JDWP$ObjectReference$InvokeMethod;
astore 9
end local 10 start local 9 23: goto 28
end local 9 StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.jdi.ThreadReference com.sun.jdi.Method java.util.List int com.sun.tools.jdi.MethodImpl com.sun.tools.jdi.ThreadReferenceImpl java.util.List com.sun.tools.jdi.ValueImpl[]
StackMap stack: com.sun.tools.jdi.JDWPException
24: astore 10
start local 10 25: aload 10
invokevirtual com.sun.tools.jdi.JDWPException.errorCode:()S
bipush 10
if_icmpne 27
26: new com.sun.jdi.IncompatibleThreadStateException
dup
invokespecial com.sun.jdi.IncompatibleThreadStateException.<init>:()V
athrow
27: StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.jdi.ThreadReference com.sun.jdi.Method java.util.List int com.sun.tools.jdi.MethodImpl com.sun.tools.jdi.ThreadReferenceImpl java.util.List com.sun.tools.jdi.ValueImpl[] top com.sun.tools.jdi.JDWPException
StackMap stack:
aload 10
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 10 start local 9 28: StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.jdi.ThreadReference com.sun.jdi.Method java.util.List int com.sun.tools.jdi.MethodImpl com.sun.tools.jdi.ThreadReferenceImpl java.util.List com.sun.tools.jdi.ValueImpl[] com.sun.tools.jdi.JDWP$ObjectReference$InvokeMethod
StackMap stack:
iload 4
iconst_1
iand
ifne 30
29: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.notifySuspend:()V
30: StackMap locals:
StackMap stack:
aload 9
getfield com.sun.tools.jdi.JDWP$ObjectReference$InvokeMethod.exception:Lcom/sun/tools/jdi/ObjectReferenceImpl;
ifnull 32
31: new com.sun.jdi.InvocationException
dup
aload 9
getfield com.sun.tools.jdi.JDWP$ObjectReference$InvokeMethod.exception:Lcom/sun/tools/jdi/ObjectReferenceImpl;
invokespecial com.sun.jdi.InvocationException.<init>:(Lcom/sun/jdi/ObjectReference;)V
athrow
32: StackMap locals:
StackMap stack:
aload 9
getfield com.sun.tools.jdi.JDWP$ObjectReference$InvokeMethod.returnValue:Lcom/sun/tools/jdi/ValueImpl;
areturn
end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 33 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 33 1 threadIntf Lcom/sun/jdi/ThreadReference;
0 33 2 methodIntf Lcom/sun/jdi/Method;
0 33 3 origArguments Ljava/util/List<+Lcom/sun/jdi/Value;>;
0 33 4 options I
4 33 5 method Lcom/sun/tools/jdi/MethodImpl;
5 33 6 thread Lcom/sun/tools/jdi/ThreadReferenceImpl;
8 9 7 type Lcom/sun/jdi/InterfaceType;
11 12 7 type Lcom/sun/jdi/ClassType;
17 33 7 arguments Ljava/util/List<Lcom/sun/jdi/Value;>;
18 33 8 args [Lcom/sun/tools/jdi/ValueImpl;
23 24 9 ret Lcom/sun/tools/jdi/JDWP$ObjectReference$InvokeMethod;
28 33 9 ret Lcom/sun/tools/jdi/JDWP$ObjectReference$InvokeMethod;
22 23 10 stream Lcom/sun/tools/jdi/PacketStream;
25 28 10 exc Lcom/sun/tools/jdi/JDWPException;
Exception table:
from to target type
18 23 24 Class com.sun.tools.jdi.JDWPException
Exceptions:
throws com.sun.jdi.InvalidTypeException, com.sun.jdi.IncompatibleThreadStateException, com.sun.jdi.InvocationException, com.sun.jdi.ClassNotLoadedException
Signature: (Lcom/sun/jdi/ThreadReference;Lcom/sun/jdi/Method;Ljava/util/List<+Lcom/sun/jdi/Value;>;I)Lcom/sun/jdi/Value;
MethodParameters:
Name Flags
threadIntf
methodIntf
origArguments
options
public synchronized void disableCollection();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.gcDisableCount:I
ifne 5
1: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$DisableCollection.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ObjectReferenceImpl;)Lcom/sun/tools/jdi/JDWP$ObjectReference$DisableCollection;
pop
2: goto 5
StackMap locals:
StackMap stack: com.sun.tools.jdi.JDWPException
3: astore 1
start local 1 4: aload 1
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 1 5: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.tools.jdi.ObjectReferenceImpl.gcDisableCount:I
iconst_1
iadd
putfield com.sun.tools.jdi.ObjectReferenceImpl.gcDisableCount:I
6: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
4 5 1 exc Lcom/sun/tools/jdi/JDWPException;
Exception table:
from to target type
1 2 3 Class com.sun.tools.jdi.JDWPException
public synchronized void enableCollection();
descriptor: ()V
flags: (0x0021) ACC_PUBLIC, ACC_SYNCHRONIZED
Code:
stack=3, locals=2, args_size=1
start local 0 0: aload 0
dup
getfield com.sun.tools.jdi.ObjectReferenceImpl.gcDisableCount:I
iconst_1
isub
putfield com.sun.tools.jdi.ObjectReferenceImpl.gcDisableCount:I
1: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.gcDisableCount:I
ifne 8
2: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$EnableCollection.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ObjectReferenceImpl;)Lcom/sun/tools/jdi/JDWP$ObjectReference$EnableCollection;
pop
3: goto 8
StackMap locals:
StackMap stack: com.sun.tools.jdi.JDWPException
4: astore 1
start local 1 5: aload 1
invokevirtual com.sun.tools.jdi.JDWPException.errorCode:()S
bipush 20
if_icmpeq 7
6: aload 1
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
7: StackMap locals: com.sun.tools.jdi.JDWPException
StackMap stack:
return
end local 1 8: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
5 8 1 exc Lcom/sun/tools/jdi/JDWPException;
Exception table:
from to target type
2 3 4 Class com.sun.tools.jdi.JDWPException
public boolean isCollected();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$IsCollected.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ObjectReferenceImpl;)Lcom/sun/tools/jdi/JDWP$ObjectReference$IsCollected;
1: getfield com.sun.tools.jdi.JDWP$ObjectReference$IsCollected.isCollected:Z
2: ireturn
3: StackMap locals:
StackMap stack: com.sun.tools.jdi.JDWPException
astore 1
start local 1 4: aload 1
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
4 5 1 exc Lcom/sun/tools/jdi/JDWPException;
Exception table:
from to target type
0 2 3 Class com.sun.tools.jdi.JDWPException
public long uniqueID();
descriptor: ()J
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.ref:()J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo jdwpMonitorInfo();
descriptor: ()Lcom/sun/tools/jdi/JDWP$ObjectReference$MonitorInfo;
flags: (0x0000)
Code:
stack=4, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.state:()Lcom/sun/tools/jdi/VMState;
dup
astore 3
monitorenter
2: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.getCache:()Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
astore 2
start local 2 3: aload 2
ifnull 8
4: aload 2
getfield com.sun.tools.jdi.ObjectReferenceImpl$Cache.monitorInfo:Lcom/sun/tools/jdi/JDWP$ObjectReference$MonitorInfo;
astore 1
5: aload 1
ifnonnull 8
aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.state:()Lcom/sun/tools/jdi/VMState;
aload 0
invokevirtual com.sun.tools.jdi.VMState.hasListener:(Lcom/sun/tools/jdi/VMListener;)Z
ifne 8
6: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.state:()Lcom/sun/tools/jdi/VMState;
aload 0
invokevirtual com.sun.tools.jdi.VMState.addListener:(Lcom/sun/tools/jdi/VMListener;)V
7: aload 0
iconst_1
putfield com.sun.tools.jdi.ObjectReferenceImpl.addedListener:Z
8: StackMap locals: com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo com.sun.tools.jdi.ObjectReferenceImpl$Cache com.sun.tools.jdi.VMState
StackMap stack:
aload 3
monitorexit
9: goto 12
end local 2 StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo top com.sun.tools.jdi.VMState
StackMap stack: java.lang.Throwable
10: aload 3
monitorexit
11: athrow
start local 2 12: StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo com.sun.tools.jdi.ObjectReferenceImpl$Cache
StackMap stack:
aload 1
ifnonnull 25
13: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ObjectReferenceImpl;)Lcom/sun/tools/jdi/JDWP$ObjectReference$MonitorInfo;
astore 1
14: aload 2
ifnull 25
15: aload 2
aload 1
putfield com.sun.tools.jdi.ObjectReferenceImpl$Cache.monitorInfo:Lcom/sun/tools/jdi/JDWP$ObjectReference$MonitorInfo;
16: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
bipush 16
iand
ifeq 25
17: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
new java.lang.StringBuilder
dup
ldc "ObjectReference "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.uniqueID:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
18: ldc " temporarily caching monitor info"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
19: invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
end local 2 20: goto 25
StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo
StackMap stack: com.sun.tools.jdi.JDWPException
21: astore 2
start local 2 22: aload 2
invokevirtual com.sun.tools.jdi.JDWPException.errorCode:()S
bipush 13
if_icmpne 24
23: new com.sun.jdi.IncompatibleThreadStateException
dup
invokespecial com.sun.jdi.IncompatibleThreadStateException.<init>:()V
athrow
24: StackMap locals: com.sun.tools.jdi.JDWPException
StackMap stack:
aload 2
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 2 25: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
1 26 1 info Lcom/sun/tools/jdi/JDWP$ObjectReference$MonitorInfo;
3 10 2 local Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
12 20 2 local Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
22 25 2 exc Lcom/sun/tools/jdi/JDWPException;
Exception table:
from to target type
2 9 10 any
10 11 10 any
1 20 21 Class com.sun.tools.jdi.JDWPException
Exceptions:
throws com.sun.jdi.IncompatibleThreadStateException
public java.util.List<com.sun.jdi.ThreadReference> waitingThreads();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.jdwpMonitorInfo:()Lcom/sun/tools/jdi/JDWP$ObjectReference$MonitorInfo;
getfield com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo.waiters:[Lcom/sun/tools/jdi/ThreadReferenceImpl;
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
Exceptions:
throws com.sun.jdi.IncompatibleThreadStateException
Signature: ()Ljava/util/List<Lcom/sun/jdi/ThreadReference;>;
public com.sun.jdi.ThreadReference owningThread();
descriptor: ()Lcom/sun/jdi/ThreadReference;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.jdwpMonitorInfo:()Lcom/sun/tools/jdi/JDWP$ObjectReference$MonitorInfo;
getfield com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo.owner:Lcom/sun/tools/jdi/ThreadReferenceImpl;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
Exceptions:
throws com.sun.jdi.IncompatibleThreadStateException
public int entryCount();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.jdwpMonitorInfo:()Lcom/sun/tools/jdi/JDWP$ObjectReference$MonitorInfo;
getfield com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo.entryCount:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
Exceptions:
throws com.sun.jdi.IncompatibleThreadStateException
public java.util.List<com.sun.jdi.ObjectReference> referringObjects(long);
descriptor: (J)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.canGetInstanceInfo:()Z
ifne 4
1: new java.lang.UnsupportedOperationException
dup
2: ldc "target does not support getting referring objects"
3: invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
lload 1
lconst_0
lcmp
ifge 8
5: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "maxReferrers is less than zero: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
6: lload 1
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
7: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
lload 1
ldc 2147483647
lcmp
ifle 10
9: ldc 2147483647
goto 11
StackMap locals:
StackMap stack:
10: lload 1
l2i
11: StackMap locals:
StackMap stack: int
istore 3
start local 3 12: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
iload 3
invokestatic com.sun.tools.jdi.JDWP$ObjectReference$ReferringObjects.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ObjectReferenceImpl;I)Lcom/sun/tools/jdi/JDWP$ObjectReference$ReferringObjects;
getfield com.sun.tools.jdi.JDWP$ObjectReference$ReferringObjects.referringObjects:[Lcom/sun/tools/jdi/ObjectReferenceImpl;
13: invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
14: areturn
15: StackMap locals: com.sun.tools.jdi.ObjectReferenceImpl long int
StackMap stack: com.sun.tools.jdi.JDWPException
astore 4
start local 4 16: aload 4
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 17 1 maxReferrers J
12 17 3 intMax I
16 17 4 exc Lcom/sun/tools/jdi/JDWPException;
Exception table:
from to target type
12 14 15 Class com.sun.tools.jdi.JDWPException
Signature: (J)Ljava/util/List<Lcom/sun/jdi/ObjectReference;>;
MethodParameters:
Name Flags
maxReferrers
long ref();
descriptor: ()J
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.ObjectReferenceImpl.ref:J
lreturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
boolean isClassObject();
descriptor: ()Z
flags: (0x0000)
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
invokeinterface com.sun.jdi.ReferenceType.name:()Ljava/lang/String;
ldc "java.lang.Class"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
com.sun.tools.jdi.ValueImpl prepareForAssignmentTo(com.sun.tools.jdi.ValueContainer);
descriptor: (Lcom/sun/tools/jdi/ValueContainer;)Lcom/sun/tools/jdi/ValueImpl;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.validateAssignment:(Lcom/sun/tools/jdi/ValueContainer;)V
1: aload 0
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 2 1 destination Lcom/sun/tools/jdi/ValueContainer;
Exceptions:
throws com.sun.jdi.InvalidTypeException, com.sun.jdi.ClassNotLoadedException
MethodParameters:
Name Flags
destination
void validateAssignment(com.sun.tools.jdi.ValueContainer);
descriptor: (Lcom/sun/tools/jdi/ValueContainer;)V
flags: (0x0000)
Code:
stack=5, locals=8, args_size=2
start local 0 start local 1 0: new com.sun.tools.jdi.JNITypeParser
dup
aload 1
invokeinterface com.sun.tools.jdi.ValueContainer.signature:()Ljava/lang/String;
invokespecial com.sun.tools.jdi.JNITypeParser.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: new com.sun.tools.jdi.JNITypeParser
dup
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.type:()Lcom/sun/jdi/Type;
invokeinterface com.sun.jdi.Type.signature:()Ljava/lang/String;
invokespecial com.sun.tools.jdi.JNITypeParser.<init>:(Ljava/lang/String;)V
astore 3
start local 3 2: aload 2
invokevirtual com.sun.tools.jdi.JNITypeParser.isPrimitive:()Z
ifeq 4
3: new com.sun.jdi.InvalidTypeException
dup
ldc "Can't assign object value to primitive"
invokespecial com.sun.jdi.InvalidTypeException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: com.sun.tools.jdi.JNITypeParser com.sun.tools.jdi.JNITypeParser
StackMap stack:
aload 2
invokevirtual com.sun.tools.jdi.JNITypeParser.isArray:()Z
ifeq 6
aload 3
invokevirtual com.sun.tools.jdi.JNITypeParser.isArray:()Z
ifne 6
5: new com.sun.jdi.InvalidTypeException
dup
ldc "Can't assign non-array value to an array"
invokespecial com.sun.jdi.InvalidTypeException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.sun.tools.jdi.JNITypeParser.isVoid:()Z
ifeq 8
7: new com.sun.jdi.InvalidTypeException
dup
ldc "Can't assign object value to a void"
invokespecial com.sun.jdi.InvalidTypeException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals:
StackMap stack:
aload 1
invokeinterface com.sun.tools.jdi.ValueContainer.type:()Lcom/sun/jdi/Type;
checkcast com.sun.tools.jdi.ReferenceTypeImpl
astore 4
start local 4 9: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
checkcast com.sun.tools.jdi.ReferenceTypeImpl
astore 5
start local 5 10: aload 5
aload 4
invokevirtual com.sun.tools.jdi.ReferenceTypeImpl.isAssignableTo:(Lcom/sun/jdi/ReferenceType;)Z
ifne 17
11: new com.sun.tools.jdi.JNITypeParser
dup
aload 4
invokeinterface com.sun.jdi.ReferenceType.signature:()Ljava/lang/String;
invokespecial com.sun.tools.jdi.JNITypeParser.<init>:(Ljava/lang/String;)V
astore 6
start local 6 12: aload 6
invokevirtual com.sun.tools.jdi.JNITypeParser.typeName:()Ljava/lang/String;
astore 7
start local 7 13: new com.sun.jdi.InvalidTypeException
dup
new java.lang.StringBuilder
dup
ldc "Can't assign "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
14: aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.type:()Lcom/sun/jdi/Type;
invokeinterface com.sun.jdi.Type.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
15: ldc " to "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 7
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
16: invokespecial com.sun.jdi.InvalidTypeException.<init>:(Ljava/lang/String;)V
athrow
end local 7 end local 6 17: StackMap locals: com.sun.jdi.ReferenceType com.sun.tools.jdi.ReferenceTypeImpl
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
0 18 1 destination Lcom/sun/tools/jdi/ValueContainer;
1 18 2 destSig Lcom/sun/tools/jdi/JNITypeParser;
2 18 3 sourceSig Lcom/sun/tools/jdi/JNITypeParser;
9 18 4 destType Lcom/sun/jdi/ReferenceType;
10 18 5 myType Lcom/sun/tools/jdi/ReferenceTypeImpl;
12 17 6 parser Lcom/sun/tools/jdi/JNITypeParser;
13 17 7 destTypeName Ljava/lang/String;
Exceptions:
throws com.sun.jdi.InvalidTypeException, com.sun.jdi.ClassNotLoadedException
MethodParameters:
Name Flags
destination
public java.lang.String toString();
descriptor: ()Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.lang.StringBuilder
dup
ldc "instance of "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.referenceType:()Lcom/sun/jdi/ReferenceType;
invokeinterface com.sun.jdi.ReferenceType.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "(id="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual com.sun.tools.jdi.ObjectReferenceImpl.uniqueID:()J
invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
byte typeValueKey();
descriptor: ()B
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: bipush 76
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ObjectReferenceImpl;
private static boolean isNonVirtual(int);
descriptor: (I)Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: iload 0
iconst_2
iand
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 options I
MethodParameters:
Name Flags
options
public com.sun.jdi.VirtualMachine virtualMachine();
descriptor: ()Lcom/sun/jdi/VirtualMachine;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
invokespecial com.sun.tools.jdi.ValueImpl.virtualMachine:()Lcom/sun/jdi/VirtualMachine;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "ObjectReferenceImpl.java"
NestMembers:
com.sun.tools.jdi.ObjectReferenceImpl$1 com.sun.tools.jdi.ObjectReferenceImpl$Cache
InnerClasses:
ObjectReference = com.sun.tools.jdi.JDWP$ObjectReference of com.sun.tools.jdi.JDWP
DisableCollection = com.sun.tools.jdi.JDWP$ObjectReference$DisableCollection of com.sun.tools.jdi.JDWP$ObjectReference
EnableCollection = com.sun.tools.jdi.JDWP$ObjectReference$EnableCollection of com.sun.tools.jdi.JDWP$ObjectReference
GetValues = com.sun.tools.jdi.JDWP$ObjectReference$GetValues of com.sun.tools.jdi.JDWP$ObjectReference
Field = com.sun.tools.jdi.JDWP$ObjectReference$GetValues$Field of com.sun.tools.jdi.JDWP$ObjectReference$GetValues
InvokeMethod = com.sun.tools.jdi.JDWP$ObjectReference$InvokeMethod of com.sun.tools.jdi.JDWP$ObjectReference
IsCollected = com.sun.tools.jdi.JDWP$ObjectReference$IsCollected of com.sun.tools.jdi.JDWP$ObjectReference
MonitorInfo = com.sun.tools.jdi.JDWP$ObjectReference$MonitorInfo of com.sun.tools.jdi.JDWP$ObjectReference
ReferenceType = com.sun.tools.jdi.JDWP$ObjectReference$ReferenceType of com.sun.tools.jdi.JDWP$ObjectReference
ReferringObjects = com.sun.tools.jdi.JDWP$ObjectReference$ReferringObjects of com.sun.tools.jdi.JDWP$ObjectReference
SetValues = com.sun.tools.jdi.JDWP$ObjectReference$SetValues of com.sun.tools.jdi.JDWP$ObjectReference
FieldValue = com.sun.tools.jdi.JDWP$ObjectReference$SetValues$FieldValue of com.sun.tools.jdi.JDWP$ObjectReference$SetValues
com.sun.tools.jdi.ObjectReferenceImpl$1
protected Cache = com.sun.tools.jdi.ObjectReferenceImpl$Cache of com.sun.tools.jdi.ObjectReferenceImpl