public class org.aspectj.bridge.ReflectionFactory
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.aspectj.bridge.ReflectionFactory
super_class: java.lang.Object
{
public static final java.lang.String OLD_AJC;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "bridge.tools.impl.OldAjc"
public static final java.lang.String ECLIPSE;
descriptor: Ljava/lang/String;
flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
ConstantValue: "org.aspectj.ajdt.ajc.AjdtCommand"
private static final java.lang.Object[] NONE;
descriptor: [Ljava/lang/Object;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: iconst_0
anewarray java.lang.Object
putstatic org.aspectj.bridge.ReflectionFactory.NONE:[Ljava/lang/Object;
return
LocalVariableTable:
Start End Slot Name Signature
public static org.aspectj.bridge.ICommand makeCommand(java.lang.String, org.aspectj.bridge.IMessageHandler);
descriptor: (Ljava/lang/String;Lorg/aspectj/bridge/IMessageHandler;)Lorg/aspectj/bridge/ICommand;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: ldc Lorg/aspectj/bridge/ICommand;
aload 0
getstatic org.aspectj.bridge.ReflectionFactory.NONE:[Ljava/lang/Object;
aload 1
invokestatic org.aspectj.bridge.ReflectionFactory.make:(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Object;Lorg/aspectj/bridge/IMessageHandler;)Ljava/lang/Object;
checkcast org.aspectj.bridge.ICommand
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 cname Ljava/lang/String;
0 1 1 errorSink Lorg/aspectj/bridge/IMessageHandler;
MethodParameters:
Name Flags
cname
errorSink
private static make(java.lang.Class<?>, java.lang.String, [], org.aspectj.bridge.IMessageHandler);
descriptor: (Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Object;Lorg/aspectj/bridge/IMessageHandler;)Ljava/lang/Object;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=6, locals=10, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 3
ifnull 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: istore 4
start local 4 3: aconst_null
astore 5
start local 5 4: aload 1
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 6
start local 6 5: aconst_null
astore 7
start local 7 6: aload 2
getstatic org.aspectj.bridge.ReflectionFactory.NONE:[Ljava/lang/Object;
if_acmpne 9
7: aload 6
invokevirtual java.lang.Class.newInstance:()Ljava/lang/Object;
astore 5
8: goto 16
9: StackMap locals: java.lang.Class java.lang.String java.lang.Object[] org.aspectj.bridge.IMessageHandler int java.lang.Object java.lang.Class java.lang.String
StackMap stack:
aload 2
invokestatic org.aspectj.bridge.ReflectionFactory.getTypes:([Ljava/lang/Object;)[Ljava/lang/Class;
astore 8
start local 8 10: aload 6
aload 8
invokevirtual java.lang.Class.getConstructor:([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;
astore 9
start local 9 11: aload 9
ifnull 14
12: aload 9
aload 2
invokevirtual java.lang.reflect.Constructor.newInstance:([Ljava/lang/Object;)Ljava/lang/Object;
astore 5
13: goto 16
14: StackMap locals: java.lang.Class[] java.lang.reflect.Constructor
StackMap stack:
iload 4
ifeq 16
15: new java.lang.StringBuilder
dup
ldc "no constructor for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " using "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 8
invokestatic java.util.Arrays.asList:([Ljava/lang/Object;)Ljava/util/List;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
end local 9 end local 8 16: StackMap locals:
StackMap stack:
aload 5
ifnull 21
17: aload 0
aload 5
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifne 21
18: iload 4
ifeq 20
19: new java.lang.StringBuilder
dup
ldc "expecting type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " got "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
20: StackMap locals:
StackMap stack:
aconst_null
astore 5
21: StackMap locals:
StackMap stack:
aload 7
ifnull 30
22: new org.aspectj.bridge.Message
dup
aload 7
getstatic org.aspectj.bridge.IMessage.FAIL:Lorg/aspectj/bridge/IMessage$Kind;
aconst_null
aconst_null
invokespecial org.aspectj.bridge.Message.<init>:(Ljava/lang/String;Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/Throwable;Lorg/aspectj/bridge/ISourceLocation;)V
astore 8
start local 8 23: aload 3
aload 8
invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
pop
end local 8 end local 7 end local 6 24: goto 30
StackMap locals: java.lang.Class java.lang.String java.lang.Object[] org.aspectj.bridge.IMessageHandler int java.lang.Object
StackMap stack: java.lang.Throwable
25: astore 6
start local 6 26: iload 4
ifeq 30
27: new java.lang.StringBuilder
dup
ldc "ReflectionFactory unable to load "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " as "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 7
start local 7 28: new org.aspectj.bridge.Message
dup
aload 7
getstatic org.aspectj.bridge.IMessage.FAIL:Lorg/aspectj/bridge/IMessage$Kind;
aload 6
aconst_null
invokespecial org.aspectj.bridge.Message.<init>:(Ljava/lang/String;Lorg/aspectj/bridge/IMessage$Kind;Ljava/lang/Throwable;Lorg/aspectj/bridge/ISourceLocation;)V
astore 8
start local 8 29: aload 3
aload 8
invokeinterface org.aspectj.bridge.IMessageHandler.handleMessage:(Lorg/aspectj/bridge/IMessage;)Z
pop
end local 8 end local 7 end local 6 30: StackMap locals:
StackMap stack:
aload 5
areturn
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 31 0 c Ljava/lang/Class<*>;
0 31 1 cname Ljava/lang/String;
0 31 2 args [Ljava/lang/Object;
0 31 3 errorSink Lorg/aspectj/bridge/IMessageHandler;
3 31 4 makeErrors Z
4 31 5 result Ljava/lang/Object;
5 24 6 cfn Ljava/lang/Class<*>;
6 24 7 error Ljava/lang/String;
10 16 8 types [Ljava/lang/Class;
11 16 9 constructor Ljava/lang/reflect/Constructor<*>;
23 24 8 mssg Lorg/aspectj/bridge/IMessage;
26 30 6 t Ljava/lang/Throwable;
28 30 7 mssg Ljava/lang/String;
29 30 8 m Lorg/aspectj/bridge/IMessage;
Exception table:
from to target type
4 24 25 Class java.lang.Throwable
Signature: (Ljava/lang/Class<*>;Ljava/lang/String;[Ljava/lang/Object;Lorg/aspectj/bridge/IMessageHandler;)Ljava/lang/Object;
MethodParameters:
Name Flags
c
cname
args
errorSink
private static java.lang.Class<?>[] getTypes([]);
descriptor: ([Ljava/lang/Object;)[Ljava/lang/Class;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
ifnull 1
aload 0
arraylength
ifle 2
1: StackMap locals:
StackMap stack:
iconst_0
anewarray java.lang.Class
areturn
2: StackMap locals:
StackMap stack:
aload 0
arraylength
anewarray java.lang.Class
astore 1
start local 1 3: iconst_0
istore 2
start local 2 4: goto 8
5: StackMap locals: java.lang.Class[] int
StackMap stack:
aload 0
iload 2
aaload
ifnull 7
6: aload 1
iload 2
aload 0
iload 2
aaload
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
aastore
7: StackMap locals:
StackMap stack:
iinc 2 1
StackMap locals:
StackMap stack:
8: iload 2
aload 1
arraylength
if_icmplt 5
end local 2 9: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 args [Ljava/lang/Object;
3 10 1 result [Ljava/lang/Class;
4 9 2 i I
Signature: ([Ljava/lang/Object;)[Ljava/lang/Class<*>;
MethodParameters:
Name Flags
args
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/aspectj/bridge/ReflectionFactory;
}
SourceFile: "ReflectionFactory.java"
InnerClasses:
public final Kind = org.aspectj.bridge.IMessage$Kind of org.aspectj.bridge.IMessage