public final class com.sun.tools.jdi.InterfaceTypeImpl extends com.sun.tools.jdi.InvokableTypeImpl implements com.sun.jdi.InterfaceType
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.sun.tools.jdi.InterfaceTypeImpl
super_class: com.sun.tools.jdi.InvokableTypeImpl
{
private java.lang.ref.SoftReference<java.util.List<com.sun.jdi.InterfaceType>> superinterfacesRef;
descriptor: Ljava/lang/ref/SoftReference;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/lang/ref/SoftReference<Ljava/util/List<Lcom/sun/jdi/InterfaceType;>;>;
protected void <init>(com.sun.jdi.VirtualMachine, long);
descriptor: (Lcom/sun/jdi/VirtualMachine;J)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=4, locals=4, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
lload 2
invokespecial com.sun.tools.jdi.InvokableTypeImpl.<init>:(Lcom/sun/jdi/VirtualMachine;J)V
1: aload 0
aconst_null
putfield com.sun.tools.jdi.InterfaceTypeImpl.superinterfacesRef:Ljava/lang/ref/SoftReference;
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
0 3 1 aVm Lcom/sun/jdi/VirtualMachine;
0 3 2 aRef J
MethodParameters:
Name Flags
aVm
aRef
public java.util.List<com.sun.jdi.InterfaceType> superinterfaces();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=2, args_size=1
start local 0 0: aload 0
getfield com.sun.tools.jdi.InterfaceTypeImpl.superinterfacesRef:Ljava/lang/ref/SoftReference;
ifnonnull 1
aconst_null
goto 2
1: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.tools.jdi.InterfaceTypeImpl.superinterfacesRef:Ljava/lang/ref/SoftReference;
invokevirtual java.lang.ref.SoftReference.get:()Ljava/lang/Object;
checkcast java.util.List
2: StackMap locals:
StackMap stack: java.util.List
astore 1
start local 1 3: aload 1
ifnonnull 7
4: aload 0
invokevirtual com.sun.tools.jdi.InterfaceTypeImpl.getInterfaces:()Ljava/util/List;
astore 1
5: aload 1
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
astore 1
6: aload 0
new java.lang.ref.SoftReference
dup
aload 1
invokespecial java.lang.ref.SoftReference.<init>:(Ljava/lang/Object;)V
putfield com.sun.tools.jdi.InterfaceTypeImpl.superinterfacesRef:Ljava/lang/ref/SoftReference;
7: StackMap locals: java.util.List
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
3 8 1 superinterfaces Ljava/util/List<Lcom/sun/jdi/InterfaceType;>;
Signature: ()Ljava/util/List<Lcom/sun/jdi/InterfaceType;>;
public java.util.List<com.sun.jdi.InterfaceType> subinterfaces();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
getfield com.sun.tools.jdi.InterfaceTypeImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
aload 1
invokedynamic accept(Lcom/sun/tools/jdi/InterfaceTypeImpl;Ljava/util/List;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
com/sun/tools/jdi/InterfaceTypeImpl.lambda$0(Ljava/util/List;Lcom/sun/jdi/ReferenceType;)V (7)
(Lcom/sun/jdi/ReferenceType;)V
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.forEachClass:(Ljava/util/function/Consumer;)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
1 3 1 subs Ljava/util/List<Lcom/sun/jdi/InterfaceType;>;
Signature: ()Ljava/util/List<Lcom/sun/jdi/InterfaceType;>;
public java.util.List<com.sun.jdi.ClassType> implementors();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=1
start local 0 0: new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 1
start local 1 1: aload 0
getfield com.sun.tools.jdi.InterfaceTypeImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
aload 1
invokedynamic accept(Lcom/sun/tools/jdi/InterfaceTypeImpl;Ljava/util/List;)Ljava/util/function/Consumer;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)V
com/sun/tools/jdi/InterfaceTypeImpl.lambda$1(Ljava/util/List;Lcom/sun/jdi/ReferenceType;)V (7)
(Lcom/sun/jdi/ReferenceType;)V
invokevirtual com.sun.tools.jdi.VirtualMachineImpl.forEachClass:(Ljava/util/function/Consumer;)V
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
1 3 1 implementors Ljava/util/List<Lcom/sun/jdi/ClassType;>;
Signature: ()Ljava/util/List<Lcom/sun/jdi/ClassType;>;
public boolean isInitialized();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.InterfaceTypeImpl.isPrepared:()Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
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 "interface "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.tools.jdi.InterfaceTypeImpl.name:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " ("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual com.sun.tools.jdi.InterfaceTypeImpl.loaderString:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)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/InterfaceTypeImpl;
com.sun.tools.jdi.InvokableTypeImpl$InvocationResult waitForReply(com.sun.tools.jdi.PacketStream);
descriptor: (Lcom/sun/tools/jdi/PacketStream;)Lcom/sun/tools/jdi/InvokableTypeImpl$InvocationResult;
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: new com.sun.tools.jdi.InterfaceTypeImpl$IResult
dup
aload 0
getfield com.sun.tools.jdi.InterfaceTypeImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 1
invokestatic com.sun.tools.jdi.JDWP$InterfaceType$InvokeMethod.waitForReply:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/PacketStream;)Lcom/sun/tools/jdi/JDWP$InterfaceType$InvokeMethod;
invokespecial com.sun.tools.jdi.InterfaceTypeImpl$IResult.<init>:(Lcom/sun/tools/jdi/JDWP$InterfaceType$InvokeMethod;)V
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
0 1 1 stream Lcom/sun/tools/jdi/PacketStream;
Exceptions:
throws com.sun.tools.jdi.JDWPException
MethodParameters:
Name Flags
stream
com.sun.tools.jdi.CommandSender getInvokeMethodSender(com.sun.tools.jdi.ThreadReferenceImpl, com.sun.tools.jdi.MethodImpl, com.sun.tools.jdi.ValueImpl[], int);
descriptor: (Lcom/sun/tools/jdi/ThreadReferenceImpl;Lcom/sun/tools/jdi/MethodImpl;[Lcom/sun/tools/jdi/ValueImpl;I)Lcom/sun/tools/jdi/CommandSender;
flags: (0x0000)
Code:
stack=5, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 1
aload 2
aload 3
iload 4
invokedynamic send(Lcom/sun/tools/jdi/InterfaceTypeImpl;Lcom/sun/tools/jdi/ThreadReferenceImpl;Lcom/sun/tools/jdi/MethodImpl;[Lcom/sun/tools/jdi/ValueImpl;I)Lcom/sun/tools/jdi/CommandSender;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Lcom/sun/tools/jdi/PacketStream;
com/sun/tools/jdi/InterfaceTypeImpl.lambda$2(Lcom/sun/tools/jdi/ThreadReferenceImpl;Lcom/sun/tools/jdi/MethodImpl;[Lcom/sun/tools/jdi/ValueImpl;I)Lcom/sun/tools/jdi/PacketStream; (7)
()Lcom/sun/tools/jdi/PacketStream;
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
0 1 1 thread Lcom/sun/tools/jdi/ThreadReferenceImpl;
0 1 2 method Lcom/sun/tools/jdi/MethodImpl;
0 1 3 args [Lcom/sun/tools/jdi/ValueImpl;
0 1 4 options I
MethodParameters:
Name Flags
thread final
method final
args final
options final
com.sun.jdi.ClassType superclass();
descriptor: ()Lcom/sun/jdi/ClassType;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
boolean isAssignableTo(com.sun.jdi.ReferenceType);
descriptor: (Lcom/sun/jdi/ReferenceType;)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface com.sun.jdi.ReferenceType.name:()Ljava/lang/String;
ldc "java.lang.Object"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 2
1: iconst_1
ireturn
2: StackMap locals:
StackMap stack:
aload 0
aload 1
invokespecial com.sun.tools.jdi.InvokableTypeImpl.isAssignableTo:(Lcom/sun/jdi/ReferenceType;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
0 3 1 type Lcom/sun/jdi/ReferenceType;
MethodParameters:
Name Flags
type
java.util.List<com.sun.jdi.InterfaceType> interfaces();
descriptor: ()Ljava/util/List;
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual com.sun.tools.jdi.InterfaceTypeImpl.superinterfaces:()Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
Signature: ()Ljava/util/List<Lcom/sun/jdi/InterfaceType;>;
boolean canInvoke(com.sun.jdi.Method);
descriptor: (Lcom/sun/jdi/Method;)Z
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokeinterface com.sun.jdi.Method.declaringType:()Lcom/sun/jdi/ReferenceType;
invokevirtual com.sun.tools.jdi.InterfaceTypeImpl.equals:(Ljava/lang/Object;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
0 1 1 method Lcom/sun/jdi/Method;
MethodParameters:
Name Flags
method
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.InvokableTypeImpl.virtualMachine:()Lcom/sun/jdi/VirtualMachine;
areturn
LocalVariableTable:
Start End Slot Name Signature
private void lambda$0(java.util.List, com.sun.jdi.ReferenceType);
descriptor: (Ljava/util/List;Lcom/sun/jdi/ReferenceType;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 2 0: aload 2
instanceof com.sun.jdi.InterfaceType
ifeq 4
1: aload 2
checkcast com.sun.jdi.InterfaceType
astore 3
start local 3 2: aload 3
invokeinterface com.sun.jdi.InterfaceType.isPrepared:()Z
ifeq 4
aload 3
invokeinterface com.sun.jdi.InterfaceType.superinterfaces:()Ljava/util/List;
aload 0
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 4
3: aload 1
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 3 4: StackMap locals:
StackMap stack:
return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
0 5 2 refType Lcom/sun/jdi/ReferenceType;
2 4 3 interfaze Lcom/sun/jdi/InterfaceType;
private void lambda$1(java.util.List, com.sun.jdi.ReferenceType);
descriptor: (Ljava/util/List;Lcom/sun/jdi/ReferenceType;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=4, args_size=3
start local 0 start local 2 0: aload 2
instanceof com.sun.jdi.ClassType
ifeq 4
1: aload 2
checkcast com.sun.jdi.ClassType
astore 3
start local 3 2: aload 3
invokeinterface com.sun.jdi.ClassType.isPrepared:()Z
ifeq 4
aload 3
invokeinterface com.sun.jdi.ClassType.interfaces:()Ljava/util/List;
aload 0
invokeinterface java.util.List.contains:(Ljava/lang/Object;)Z
ifeq 4
3: aload 1
aload 3
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 3 4: StackMap locals:
StackMap stack:
return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
0 5 2 refType Lcom/sun/jdi/ReferenceType;
2 4 3 clazz Lcom/sun/jdi/ClassType;
private com.sun.tools.jdi.PacketStream lambda$2(com.sun.tools.jdi.ThreadReferenceImpl, com.sun.tools.jdi.MethodImpl, com.sun.tools.jdi.ValueImpl[], int);
descriptor: (Lcom/sun/tools/jdi/ThreadReferenceImpl;Lcom/sun/tools/jdi/MethodImpl;[Lcom/sun/tools/jdi/ValueImpl;I)Lcom/sun/tools/jdi/PacketStream;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=5, args_size=5
start local 0 0: aload 0
getfield com.sun.tools.jdi.InterfaceTypeImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
1: aload 0
2: aload 1
3: aload 2
invokevirtual com.sun.tools.jdi.MethodImpl.ref:()J
4: aload 3
5: iload 4
6: invokestatic com.sun.tools.jdi.JDWP$InterfaceType$InvokeMethod.enqueueCommand:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/InterfaceTypeImpl;Lcom/sun/tools/jdi/ThreadReferenceImpl;J[Lcom/sun/tools/jdi/ValueImpl;I)Lcom/sun/tools/jdi/PacketStream;
7: areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/tools/jdi/InterfaceTypeImpl;
}
SourceFile: "InterfaceTypeImpl.java"
NestMembers:
com.sun.tools.jdi.InterfaceTypeImpl$IResult
InnerClasses:
private IResult = com.sun.tools.jdi.InterfaceTypeImpl$IResult of com.sun.tools.jdi.InterfaceTypeImpl
abstract InvocationResult = com.sun.tools.jdi.InvokableTypeImpl$InvocationResult of com.sun.tools.jdi.InvokableTypeImpl
InterfaceType = com.sun.tools.jdi.JDWP$InterfaceType of com.sun.tools.jdi.JDWP
InvokeMethod = com.sun.tools.jdi.JDWP$InterfaceType$InvokeMethod of com.sun.tools.jdi.JDWP$InterfaceType
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles