class com.sun.tools.example.debug.expr.LValue$LValueStaticMember extends com.sun.tools.example.debug.expr.LValue
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.tools.example.debug.expr.LValue$LValueStaticMember
super_class: com.sun.tools.example.debug.expr.LValue
{
final com.sun.jdi.ReferenceType refType;
descriptor: Lcom/sun/jdi/ReferenceType;
flags: (0x0010) ACC_FINAL
final com.sun.jdi.ThreadReference thread;
descriptor: Lcom/sun/jdi/ThreadReference;
flags: (0x0010) ACC_FINAL
final com.sun.jdi.Field matchingField;
descriptor: Lcom/sun/jdi/Field;
flags: (0x0010) ACC_FINAL
final java.util.List<com.sun.jdi.Method> overloads;
descriptor: Ljava/util/List;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/List<Lcom/sun/jdi/Method;>;
com.sun.jdi.Method matchingMethod;
descriptor: Lcom/sun/jdi/Method;
flags: (0x0000)
java.util.List<com.sun.jdi.Value> methodArguments;
descriptor: Ljava/util/List;
flags: (0x0000)
Signature: Ljava/util/List<Lcom/sun/jdi/Value;>;
void <init>(com.sun.jdi.ReferenceType, java.lang.String, com.sun.jdi.ThreadReference);
descriptor: (Lcom/sun/jdi/ReferenceType;Ljava/lang/String;Lcom/sun/jdi/ThreadReference;)V
flags: (0x0000)
Code:
stack=5, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
invokespecial com.sun.tools.example.debug.expr.LValue.<init>:()V
1: aload 0
aconst_null
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingMethod:Lcom/sun/jdi/Method;
2: aload 0
aconst_null
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.methodArguments:Ljava/util/List;
3: aload 0
aload 1
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.refType:Lcom/sun/jdi/ReferenceType;
4: aload 0
aload 3
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.thread:Lcom/sun/jdi/ThreadReference;
5: aload 0
aload 1
aload 2
6: iconst_0
7: invokestatic com.sun.tools.example.debug.expr.LValue.fieldByName:(Lcom/sun/jdi/ReferenceType;Ljava/lang/String;I)Lcom/sun/jdi/Field;
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingField:Lcom/sun/jdi/Field;
8: aload 0
aload 1
aload 2
9: iconst_0
10: invokestatic com.sun.tools.example.debug.expr.LValue.methodsByName:(Lcom/sun/jdi/ReferenceType;Ljava/lang/String;I)Ljava/util/List;
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.overloads:Ljava/util/List;
11: aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingField:Lcom/sun/jdi/Field;
ifnonnull 15
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.overloads:Ljava/util/List;
invokeinterface java.util.List.size:()I
ifne 15
12: new com.sun.tools.example.debug.expr.ParseException
dup
new java.lang.StringBuilder
dup
ldc "No static field or method with the name "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
13: aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " in "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokeinterface com.sun.jdi.ReferenceType.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
14: invokespecial com.sun.tools.example.debug.expr.ParseException.<init>:(Ljava/lang/String;)V
athrow
15: StackMap locals: com.sun.tools.example.debug.expr.LValue$LValueStaticMember com.sun.jdi.ReferenceType java.lang.String com.sun.jdi.ThreadReference
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/tools/example/debug/expr/LValue$LValueStaticMember;
0 16 1 refType Lcom/sun/jdi/ReferenceType;
0 16 2 memberName Ljava/lang/String;
0 16 3 thread Lcom/sun/jdi/ThreadReference;
Exceptions:
throws com.sun.tools.example.debug.expr.ParseException
MethodParameters:
Name Flags
refType
memberName
thread
com.sun.jdi.Value getValue();
descriptor: ()Lcom/sun/jdi/Value;
flags: (0x0000)
Code:
stack=6, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.jdiValue:Lcom/sun/jdi/Value;
ifnull 2
1: aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.jdiValue:Lcom/sun/jdi/Value;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingMethod:Lcom/sun/jdi/Method;
ifnonnull 4
3: aload 0
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.refType:Lcom/sun/jdi/ReferenceType;
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingField:Lcom/sun/jdi/Field;
invokeinterface com.sun.jdi.ReferenceType.getValue:(Lcom/sun/jdi/Field;)Lcom/sun/jdi/Value;
dup_x1
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.jdiValue:Lcom/sun/jdi/Value;
areturn
4: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.refType:Lcom/sun/jdi/ReferenceType;
instanceof com.sun.jdi.ClassType
ifeq 7
5: aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.refType:Lcom/sun/jdi/ReferenceType;
checkcast com.sun.jdi.ClassType
astore 1
start local 1 6: aload 0
aload 1
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.thread:Lcom/sun/jdi/ThreadReference;
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingMethod:Lcom/sun/jdi/Method;
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.methodArguments:Ljava/util/List;
iconst_0
invokeinterface com.sun.jdi.ClassType.invokeMethod:(Lcom/sun/jdi/ThreadReference;Lcom/sun/jdi/Method;Ljava/util/List;I)Lcom/sun/jdi/Value;
dup_x1
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.jdiValue:Lcom/sun/jdi/Value;
areturn
end local 1 7: StackMap locals:
StackMap stack:
new com.sun.jdi.InvalidTypeException
dup
new java.lang.StringBuilder
dup
ldc "Cannot invoke static method on "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
8: aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.refType:Lcom/sun/jdi/ReferenceType;
invokeinterface com.sun.jdi.ReferenceType.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
9: invokespecial com.sun.jdi.InvalidTypeException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/tools/example/debug/expr/LValue$LValueStaticMember;
6 7 1 clazz Lcom/sun/jdi/ClassType;
Exceptions:
throws com.sun.jdi.InvocationException, com.sun.jdi.InvalidTypeException, com.sun.jdi.ClassNotLoadedException, com.sun.jdi.IncompatibleThreadStateException, com.sun.tools.example.debug.expr.ParseException
void setValue0(com.sun.jdi.Value);
descriptor: (Lcom/sun/jdi/Value;)V
flags: (0x0000)
Code:
stack=5, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingMethod:Lcom/sun/jdi/Method;
ifnull 2
1: new com.sun.tools.example.debug.expr.ParseException
dup
ldc "Cannot assign to a method invocation"
invokespecial com.sun.tools.example.debug.expr.ParseException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.refType:Lcom/sun/jdi/ReferenceType;
instanceof com.sun.jdi.ClassType
ifne 6
3: new com.sun.tools.example.debug.expr.ParseException
dup
4: new java.lang.StringBuilder
dup
ldc "Cannot set interface field: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.refType:Lcom/sun/jdi/ReferenceType;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
5: invokespecial com.sun.tools.example.debug.expr.ParseException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.refType:Lcom/sun/jdi/ReferenceType;
checkcast com.sun.jdi.ClassType
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingField:Lcom/sun/jdi/Field;
aload 1
invokeinterface com.sun.jdi.ClassType.setValue:(Lcom/sun/jdi/Field;Lcom/sun/jdi/Value;)V
7: aload 0
aload 1
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.jdiValue:Lcom/sun/jdi/Value;
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/tools/example/debug/expr/LValue$LValueStaticMember;
0 9 1 val Lcom/sun/jdi/Value;
Exceptions:
throws com.sun.tools.example.debug.expr.ParseException, com.sun.jdi.InvalidTypeException, com.sun.jdi.ClassNotLoadedException
MethodParameters:
Name Flags
val
void invokeWith(java.util.List<com.sun.jdi.Value>);
descriptor: (Ljava/util/List;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingMethod:Lcom/sun/jdi/Method;
ifnull 2
1: new com.sun.tools.example.debug.expr.ParseException
dup
ldc "Invalid consecutive invocations"
invokespecial com.sun.tools.example.debug.expr.ParseException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.methodArguments:Ljava/util/List;
3: aload 0
aload 0
getfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.overloads:Ljava/util/List;
aload 1
invokestatic com.sun.tools.example.debug.expr.LValue.resolveOverload:(Ljava/util/List;Ljava/util/List;)Lcom/sun/jdi/Method;
putfield com.sun.tools.example.debug.expr.LValue$LValueStaticMember.matchingMethod:Lcom/sun/jdi/Method;
4: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/example/debug/expr/LValue$LValueStaticMember;
0 5 1 arguments Ljava/util/List<Lcom/sun/jdi/Value;>;
Exceptions:
throws com.sun.tools.example.debug.expr.ParseException
Signature: (Ljava/util/List<Lcom/sun/jdi/Value;>;)V
MethodParameters:
Name Flags
arguments
}
SourceFile: "LValue.java"
NestHost: com.sun.tools.example.debug.expr.LValue
InnerClasses:
private LValueStaticMember = com.sun.tools.example.debug.expr.LValue$LValueStaticMember of com.sun.tools.example.debug.expr.LValue