public class org.reflections.scanners.MemberUsageScanner extends org.reflections.scanners.AbstractScanner
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.reflections.scanners.MemberUsageScanner
super_class: org.reflections.scanners.AbstractScanner
{
private javassist.ClassPool classPool;
descriptor: Ljavassist/ClassPool;
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.reflections.scanners.AbstractScanner.<init>:()V
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/reflections/scanners/MemberUsageScanner;
public void scan(java.lang.Object, org.reflections.Store);
descriptor: (Ljava/lang/Object;Lorg/reflections/Store;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual org.reflections.scanners.MemberUsageScanner.getClassPool:()Ljavassist/ClassPool;
aload 0
invokevirtual org.reflections.scanners.MemberUsageScanner.getMetadataAdapter:()Lorg/reflections/adapters/MetadataAdapter;
aload 1
invokeinterface org.reflections.adapters.MetadataAdapter.getClassName:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual javassist.ClassPool.get:(Ljava/lang/String;)Ljavassist/CtClass;
astore 3
start local 3 1: aload 3
invokevirtual javassist.CtClass.getDeclaredConstructors:()[Ljavassist/CtConstructor;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 5
StackMap locals: org.reflections.scanners.MemberUsageScanner java.lang.Object org.reflections.Store javassist.CtClass top int int javassist.CtBehavior[]
StackMap stack:
2: aload 7
iload 5
aaload
astore 4
start local 4 3: aload 0
aload 4
aload 2
invokevirtual org.reflections.scanners.MemberUsageScanner.scanMember:(Ljavassist/CtBehavior;Lorg/reflections/Store;)V
end local 4 4: iinc 5 1
StackMap locals:
StackMap stack:
5: iload 5
iload 6
if_icmplt 2
6: aload 3
invokevirtual javassist.CtClass.getDeclaredMethods:()[Ljavassist/CtMethod;
dup
astore 7
arraylength
istore 6
iconst_0
istore 5
goto 10
StackMap locals:
StackMap stack:
7: aload 7
iload 5
aaload
astore 4
start local 4 8: aload 0
aload 4
aload 2
invokevirtual org.reflections.scanners.MemberUsageScanner.scanMember:(Ljavassist/CtBehavior;Lorg/reflections/Store;)V
end local 4 9: iinc 5 1
StackMap locals:
StackMap stack:
10: iload 5
iload 6
if_icmplt 7
11: aload 3
invokevirtual javassist.CtClass.detach:()V
end local 3 12: goto 15
StackMap locals: org.reflections.scanners.MemberUsageScanner java.lang.Object org.reflections.Store
StackMap stack: java.lang.Exception
13: astore 3
start local 3 14: new org.reflections.ReflectionsException
dup
new java.lang.StringBuilder
dup
ldc "Could not scan method usage for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual org.reflections.scanners.MemberUsageScanner.getMetadataAdapter:()Lorg/reflections/adapters/MetadataAdapter;
aload 1
invokeinterface org.reflections.adapters.MetadataAdapter.getClassName:(Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 3
invokespecial org.reflections.ReflectionsException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 15: StackMap locals:
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/reflections/scanners/MemberUsageScanner;
0 16 1 cls Ljava/lang/Object;
0 16 2 store Lorg/reflections/Store;
1 12 3 ctClass Ljavassist/CtClass;
3 4 4 member Ljavassist/CtBehavior;
8 9 4 member Ljavassist/CtBehavior;
14 15 3 e Ljava/lang/Exception;
Exception table:
from to target type
0 12 13 Class java.lang.Exception
MethodParameters:
Name Flags
cls
store
void scanMember(javassist.CtBehavior, org.reflections.Store);
descriptor: (Ljavassist/CtBehavior;Lorg/reflections/Store;)V
flags: (0x0000)
Code:
stack=6, locals=4, args_size=3
start local 0 start local 1 start local 2 0: new java.lang.StringBuilder
dup
aload 1
invokevirtual javassist.CtBehavior.getDeclaringClass:()Ljavassist/CtClass;
invokevirtual javassist.CtClass.getName:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
invokevirtual javassist.CtBehavior.getMethodInfo:()Ljavassist/bytecode/MethodInfo;
invokevirtual javassist.bytecode.MethodInfo.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
1: ldc "("
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
aload 1
invokevirtual javassist.CtBehavior.getMethodInfo:()Ljavassist/bytecode/MethodInfo;
invokevirtual org.reflections.scanners.MemberUsageScanner.parameterNames:(Ljavassist/bytecode/MethodInfo;)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;
2: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 3
start local 3 3: aload 1
new org.reflections.scanners.MemberUsageScanner$1
dup
aload 0
aload 2
aload 3
invokespecial org.reflections.scanners.MemberUsageScanner$1.<init>:(Lorg/reflections/scanners/MemberUsageScanner;Lorg/reflections/Store;Ljava/lang/String;)V
invokevirtual javassist.CtBehavior.instrument:(Ljavassist/expr/ExprEditor;)V
4: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/reflections/scanners/MemberUsageScanner;
0 5 1 member Ljavassist/CtBehavior;
0 5 2 store Lorg/reflections/Store;
3 5 3 key Ljava/lang/String;
Exceptions:
throws javassist.CannotCompileException
MethodParameters:
Name Flags
member
store
private void put(org.reflections.Store, java.lang.String, int, java.lang.String);
descriptor: (Lorg/reflections/Store;Ljava/lang/String;ILjava/lang/String;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=5, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
aload 2
invokevirtual org.reflections.scanners.MemberUsageScanner.acceptResult:(Ljava/lang/String;)Z
ifeq 2
1: aload 0
aload 1
aload 2
new java.lang.StringBuilder
dup
aload 4
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc " #"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
iload 3
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual org.reflections.scanners.MemberUsageScanner.put:(Lorg/reflections/Store;Ljava/lang/String;Ljava/lang/String;)V
2: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/reflections/scanners/MemberUsageScanner;
0 3 1 store Lorg/reflections/Store;
0 3 2 key Ljava/lang/String;
0 3 3 lineNumber I
0 3 4 value Ljava/lang/String;
MethodParameters:
Name Flags
store
key
lineNumber
value
java.lang.String parameterNames(javassist.bytecode.MethodInfo);
descriptor: (Ljavassist/bytecode/MethodInfo;)Ljava/lang/String;
flags: (0x0000)
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual org.reflections.scanners.MemberUsageScanner.getMetadataAdapter:()Lorg/reflections/adapters/MetadataAdapter;
aload 1
invokeinterface org.reflections.adapters.MetadataAdapter.getParameterNames:(Ljava/lang/Object;)Ljava/util/List;
ldc ", "
invokestatic org.reflections.util.Utils.join:(Ljava/util/Collection;Ljava/lang/String;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/reflections/scanners/MemberUsageScanner;
0 1 1 info Ljavassist/bytecode/MethodInfo;
MethodParameters:
Name Flags
info
private javassist.ClassPool getClassPool();
descriptor: ()Ljavassist/ClassPool;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=1
start local 0 0: aload 0
getfield org.reflections.scanners.MemberUsageScanner.classPool:Ljavassist/ClassPool;
ifnonnull 15
1: aload 0
dup
astore 1
monitorenter
2: aload 0
new javassist.ClassPool
dup
invokespecial javassist.ClassPool.<init>:()V
putfield org.reflections.scanners.MemberUsageScanner.classPool:Ljavassist/ClassPool;
3: aload 0
invokevirtual org.reflections.scanners.MemberUsageScanner.getConfiguration:()Lorg/reflections/Configuration;
invokeinterface org.reflections.Configuration.getClassLoaders:()[Ljava/lang/ClassLoader;
astore 2
start local 2 4: aload 2
ifnonnull 6
5: iconst_0
anewarray java.lang.ClassLoader
invokestatic org.reflections.util.ClasspathHelper.classLoaders:([Ljava/lang/ClassLoader;)[Ljava/lang/ClassLoader;
astore 2
6: StackMap locals: org.reflections.scanners.MemberUsageScanner java.lang.ClassLoader[]
StackMap stack:
aload 2
dup
astore 6
arraylength
istore 5
iconst_0
istore 4
goto 10
StackMap locals: org.reflections.scanners.MemberUsageScanner org.reflections.scanners.MemberUsageScanner java.lang.ClassLoader[] top int int java.lang.ClassLoader[]
StackMap stack:
7: aload 6
iload 4
aaload
astore 3
start local 3 8: aload 0
getfield org.reflections.scanners.MemberUsageScanner.classPool:Ljavassist/ClassPool;
new javassist.LoaderClassPath
dup
aload 3
invokespecial javassist.LoaderClassPath.<init>:(Ljava/lang/ClassLoader;)V
invokevirtual javassist.ClassPool.appendClassPath:(Ljavassist/ClassPath;)Ljavassist/ClassPath;
pop
end local 3 9: iinc 4 1
StackMap locals:
StackMap stack:
10: iload 4
iload 5
if_icmplt 7
end local 2 11: aload 1
monitorexit
12: goto 15
StackMap locals: org.reflections.scanners.MemberUsageScanner org.reflections.scanners.MemberUsageScanner
StackMap stack: java.lang.Throwable
13: aload 1
monitorexit
14: athrow
15: StackMap locals:
StackMap stack:
aload 0
getfield org.reflections.scanners.MemberUsageScanner.classPool:Ljavassist/ClassPool;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lorg/reflections/scanners/MemberUsageScanner;
4 11 2 classLoaders [Ljava/lang/ClassLoader;
8 9 3 classLoader Ljava/lang/ClassLoader;
Exception table:
from to target type
2 12 13 any
13 14 13 any
}
SourceFile: "MemberUsageScanner.java"
NestMembers:
org.reflections.scanners.MemberUsageScanner$1
InnerClasses:
org.reflections.scanners.MemberUsageScanner$1