public class com.sun.tools.jdi.ClassLoaderReferenceImpl extends com.sun.tools.jdi.ObjectReferenceImpl implements com.sun.jdi.ClassLoaderReference
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: com.sun.tools.jdi.ClassLoaderReferenceImpl
super_class: com.sun.tools.jdi.ObjectReferenceImpl
{
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.ClassLoaderReferenceImpl$Cache
dup
invokespecial com.sun.tools.jdi.ClassLoaderReferenceImpl$Cache.<init>:()V
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ClassLoaderReferenceImpl;
void <init>(com.sun.jdi.VirtualMachine, long);
descriptor: (Lcom/sun/jdi/VirtualMachine;J)V
flags: (0x0000)
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.ObjectReferenceImpl.<init>:(Lcom/sun/jdi/VirtualMachine;J)V
1: aload 0
getfield com.sun.tools.jdi.ClassLoaderReferenceImpl.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
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/ClassLoaderReferenceImpl;
0 3 1 aVm Lcom/sun/jdi/VirtualMachine;
0 3 2 ref J
MethodParameters:
Name Flags
aVm
ref
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 "ClassLoaderReference "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual com.sun.tools.jdi.ClassLoaderReferenceImpl.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/ClassLoaderReferenceImpl;
public java.util.List<com.sun.jdi.ReferenceType> definedClasses();
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.ClassLoaderReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
aload 1
invokedynamic accept(Lcom/sun/tools/jdi/ClassLoaderReferenceImpl;Ljava/util/ArrayList;)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/ClassLoaderReferenceImpl.lambda$0(Ljava/util/ArrayList;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/ClassLoaderReferenceImpl;
1 3 1 definedClasses Ljava/util/ArrayList<Lcom/sun/jdi/ReferenceType;>;
Signature: ()Ljava/util/List<Lcom/sun/jdi/ReferenceType;>;
public java.util.List<com.sun.jdi.ReferenceType> visibleClasses();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=5, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aload 0
invokevirtual com.sun.tools.jdi.ClassLoaderReferenceImpl.getCache:()Lcom/sun/tools/jdi/ObjectReferenceImpl$Cache;
checkcast com.sun.tools.jdi.ClassLoaderReferenceImpl$Cache
astore 2
start local 2 2: aload 2
ifnull 4
3: aload 2
getfield com.sun.tools.jdi.ClassLoaderReferenceImpl$Cache.visibleClasses:Ljava/util/List;
astore 1
4: StackMap locals: java.util.List com.sun.tools.jdi.ClassLoaderReferenceImpl$Cache
StackMap stack:
aload 1
ifnonnull 26
5: aload 0
getfield com.sun.tools.jdi.ClassLoaderReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 0
invokestatic com.sun.tools.jdi.JDWP$ClassLoaderReference$VisibleClasses.process:(Lcom/sun/tools/jdi/VirtualMachineImpl;Lcom/sun/tools/jdi/ClassLoaderReferenceImpl;)Lcom/sun/tools/jdi/JDWP$ClassLoaderReference$VisibleClasses;
getfield com.sun.tools.jdi.JDWP$ClassLoaderReference$VisibleClasses.classes:[Lcom/sun/tools/jdi/JDWP$ClassLoaderReference$VisibleClasses$ClassInfo;
6: astore 3
start local 3 7: new java.util.ArrayList
dup
aload 3
arraylength
invokespecial java.util.ArrayList.<init>:(I)V
astore 1
8: iconst_0
istore 4
start local 4 9: goto 14
10: StackMap locals: com.sun.tools.jdi.JDWP$ClassLoaderReference$VisibleClasses$ClassInfo[] int
StackMap stack:
aload 1
aload 0
getfield com.sun.tools.jdi.ClassLoaderReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
aload 3
iload 4
aaload
getfield com.sun.tools.jdi.JDWP$ClassLoaderReference$VisibleClasses$ClassInfo.typeID:J
11: aload 3
iload 4
aaload
getfield com.sun.tools.jdi.JDWP$ClassLoaderReference$VisibleClasses$ClassInfo.refTypeTag:B
12: invokevirtual com.sun.tools.jdi.VirtualMachineImpl.referenceType:(JB)Lcom/sun/tools/jdi/ReferenceTypeImpl;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
13: iinc 4 1
StackMap locals:
StackMap stack:
14: iload 4
aload 3
arraylength
if_icmplt 10
end local 4 15: aload 1
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
astore 1
16: aload 2
ifnull 26
17: aload 2
aload 1
putfield com.sun.tools.jdi.ClassLoaderReferenceImpl$Cache.visibleClasses:Ljava/util/List;
18: aload 0
getfield com.sun.tools.jdi.ClassLoaderReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
getfield com.sun.tools.jdi.VirtualMachineImpl.traceFlags:I
bipush 16
iand
ifeq 26
19: aload 0
getfield com.sun.tools.jdi.ClassLoaderReferenceImpl.vm:Lcom/sun/tools/jdi/VirtualMachineImpl;
new java.lang.StringBuilder
dup
aload 0
invokevirtual com.sun.tools.jdi.ClassLoaderReferenceImpl.description:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
20: ldc " temporarily caching visible classes (count = "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
21: aload 1
invokeinterface java.util.List.size:()I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc ")"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
22: invokevirtual com.sun.tools.jdi.VirtualMachineImpl.printTrace:(Ljava/lang/String;)V
end local 3 end local 2 23: goto 26
StackMap locals: com.sun.tools.jdi.ClassLoaderReferenceImpl java.util.List
StackMap stack: com.sun.tools.jdi.JDWPException
24: astore 2
start local 2 25: aload 2
invokevirtual com.sun.tools.jdi.JDWPException.toJDIException:()Ljava/lang/RuntimeException;
athrow
end local 2 26: StackMap locals:
StackMap stack:
aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 27 0 this Lcom/sun/tools/jdi/ClassLoaderReferenceImpl;
1 27 1 classes Ljava/util/List<Lcom/sun/jdi/ReferenceType;>;
2 23 2 local Lcom/sun/tools/jdi/ClassLoaderReferenceImpl$Cache;
7 23 3 jdwpClasses [Lcom/sun/tools/jdi/JDWP$ClassLoaderReference$VisibleClasses$ClassInfo;
9 15 4 i I
25 26 2 exc Lcom/sun/tools/jdi/JDWPException;
Exception table:
from to target type
1 23 24 Class com.sun.tools.jdi.JDWPException
Signature: ()Ljava/util/List<Lcom/sun/jdi/ReferenceType;>;
com.sun.jdi.Type findType(java.lang.String);
descriptor: (Ljava/lang/String;)Lcom/sun/jdi/Type;
flags: (0x0000)
Code:
stack=6, locals=5, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.tools.jdi.ClassLoaderReferenceImpl.visibleClasses:()Ljava/util/List;
astore 2
start local 2 1: aload 2
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 3
start local 3 2: goto 6
3: StackMap locals: java.util.List java.util.Iterator
StackMap stack:
aload 3
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.jdi.ReferenceType
astore 4
start local 4 4: aload 4
invokeinterface com.sun.jdi.ReferenceType.signature:()Ljava/lang/String;
aload 1
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 6
5: aload 4
areturn
end local 4 6: StackMap locals:
StackMap stack:
aload 3
invokeinterface java.util.Iterator.hasNext:()Z
ifne 3
7: new com.sun.tools.jdi.JNITypeParser
dup
aload 1
invokespecial com.sun.tools.jdi.JNITypeParser.<init>:(Ljava/lang/String;)V
astore 4
start local 4 8: new com.sun.jdi.ClassNotLoadedException
dup
aload 4
invokevirtual com.sun.tools.jdi.JNITypeParser.typeName:()Ljava/lang/String;
9: new java.lang.StringBuilder
dup
ldc "Class "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 4
invokevirtual com.sun.tools.jdi.JNITypeParser.typeName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " not loaded"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
10: invokespecial com.sun.jdi.ClassNotLoadedException.<init>:(Ljava/lang/String;Ljava/lang/String;)V
athrow
end local 4 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/ClassLoaderReferenceImpl;
0 11 1 signature Ljava/lang/String;
1 11 2 types Ljava/util/List<Lcom/sun/jdi/ReferenceType;>;
2 11 3 iter Ljava/util/Iterator<Lcom/sun/jdi/ReferenceType;>;
4 6 4 type Lcom/sun/jdi/ReferenceType;
8 11 4 parser Lcom/sun/tools/jdi/JNITypeParser;
Exceptions:
throws com.sun.jdi.ClassNotLoadedException
MethodParameters:
Name Flags
signature
byte typeValueKey();
descriptor: ()B
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: bipush 108
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lcom/sun/tools/jdi/ClassLoaderReferenceImpl;
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.ObjectReferenceImpl.virtualMachine:()Lcom/sun/jdi/VirtualMachine;
areturn
LocalVariableTable:
Start End Slot Name Signature
private void lambda$0(java.util.ArrayList, com.sun.jdi.ReferenceType);
descriptor: (Ljava/util/ArrayList;Lcom/sun/jdi/ReferenceType;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 2 0: aload 2
invokeinterface com.sun.jdi.ReferenceType.isPrepared:()Z
ifeq 3
1: aload 0
aload 2
invokeinterface com.sun.jdi.ReferenceType.classLoader:()Lcom/sun/jdi/ClassLoaderReference;
invokevirtual com.sun.tools.jdi.ClassLoaderReferenceImpl.equals:(Ljava/lang/Object;)Z
ifeq 3
2: aload 1
aload 2
invokevirtual java.util.ArrayList.add:(Ljava/lang/Object;)Z
pop
3: StackMap locals:
StackMap stack:
return
end local 2 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/tools/jdi/ClassLoaderReferenceImpl;
0 4 2 type Lcom/sun/jdi/ReferenceType;
}
SourceFile: "ClassLoaderReferenceImpl.java"
NestMembers:
com.sun.tools.jdi.ClassLoaderReferenceImpl$Cache
InnerClasses:
private Cache = com.sun.tools.jdi.ClassLoaderReferenceImpl$Cache of com.sun.tools.jdi.ClassLoaderReferenceImpl
ClassLoaderReference = com.sun.tools.jdi.JDWP$ClassLoaderReference of com.sun.tools.jdi.JDWP
VisibleClasses = com.sun.tools.jdi.JDWP$ClassLoaderReference$VisibleClasses of com.sun.tools.jdi.JDWP$ClassLoaderReference
ClassInfo = com.sun.tools.jdi.JDWP$ClassLoaderReference$VisibleClasses$ClassInfo of com.sun.tools.jdi.JDWP$ClassLoaderReference$VisibleClasses
protected Cache = com.sun.tools.jdi.ObjectReferenceImpl$Cache of com.sun.tools.jdi.ObjectReferenceImpl
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles