class net.sf.cglib.proxy.CallbackInfo
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: net.sf.cglib.proxy.CallbackInfo
super_class: java.lang.Object
{
private java.lang.Class cls;
descriptor: Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
private net.sf.cglib.proxy.CallbackGenerator generator;
descriptor: Lnet/sf/cglib/proxy/CallbackGenerator;
flags: (0x0002) ACC_PRIVATE
private org.objectweb.asm.Type type;
descriptor: Lorg/objectweb/asm/Type;
flags: (0x0002) ACC_PRIVATE
private static final net.sf.cglib.proxy.CallbackInfo[] CALLBACKS;
descriptor: [Lnet/sf/cglib/proxy/CallbackInfo;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=7, locals=0, args_size=0
0: bipush 7
anewarray net.sf.cglib.proxy.CallbackInfo
dup
iconst_0
1: new net.sf.cglib.proxy.CallbackInfo
dup
ldc Lnet/sf/cglib/proxy/NoOp;
getstatic net.sf.cglib.proxy.NoOpGenerator.INSTANCE:Lnet/sf/cglib/proxy/NoOpGenerator;
invokespecial net.sf.cglib.proxy.CallbackInfo.<init>:(Ljava/lang/Class;Lnet/sf/cglib/proxy/CallbackGenerator;)V
aastore
dup
iconst_1
2: new net.sf.cglib.proxy.CallbackInfo
dup
ldc Lnet/sf/cglib/proxy/MethodInterceptor;
getstatic net.sf.cglib.proxy.MethodInterceptorGenerator.INSTANCE:Lnet/sf/cglib/proxy/MethodInterceptorGenerator;
invokespecial net.sf.cglib.proxy.CallbackInfo.<init>:(Ljava/lang/Class;Lnet/sf/cglib/proxy/CallbackGenerator;)V
aastore
dup
iconst_2
3: new net.sf.cglib.proxy.CallbackInfo
dup
ldc Lnet/sf/cglib/proxy/InvocationHandler;
getstatic net.sf.cglib.proxy.InvocationHandlerGenerator.INSTANCE:Lnet/sf/cglib/proxy/InvocationHandlerGenerator;
invokespecial net.sf.cglib.proxy.CallbackInfo.<init>:(Ljava/lang/Class;Lnet/sf/cglib/proxy/CallbackGenerator;)V
aastore
dup
iconst_3
4: new net.sf.cglib.proxy.CallbackInfo
dup
ldc Lnet/sf/cglib/proxy/LazyLoader;
getstatic net.sf.cglib.proxy.LazyLoaderGenerator.INSTANCE:Lnet/sf/cglib/proxy/LazyLoaderGenerator;
invokespecial net.sf.cglib.proxy.CallbackInfo.<init>:(Ljava/lang/Class;Lnet/sf/cglib/proxy/CallbackGenerator;)V
aastore
dup
iconst_4
5: new net.sf.cglib.proxy.CallbackInfo
dup
ldc Lnet/sf/cglib/proxy/Dispatcher;
getstatic net.sf.cglib.proxy.DispatcherGenerator.INSTANCE:Lnet/sf/cglib/proxy/DispatcherGenerator;
invokespecial net.sf.cglib.proxy.CallbackInfo.<init>:(Ljava/lang/Class;Lnet/sf/cglib/proxy/CallbackGenerator;)V
aastore
dup
iconst_5
6: new net.sf.cglib.proxy.CallbackInfo
dup
ldc Lnet/sf/cglib/proxy/FixedValue;
getstatic net.sf.cglib.proxy.FixedValueGenerator.INSTANCE:Lnet/sf/cglib/proxy/FixedValueGenerator;
invokespecial net.sf.cglib.proxy.CallbackInfo.<init>:(Ljava/lang/Class;Lnet/sf/cglib/proxy/CallbackGenerator;)V
aastore
dup
bipush 6
7: new net.sf.cglib.proxy.CallbackInfo
dup
ldc Lnet/sf/cglib/proxy/ProxyRefDispatcher;
getstatic net.sf.cglib.proxy.DispatcherGenerator.PROXY_REF_INSTANCE:Lnet/sf/cglib/proxy/DispatcherGenerator;
invokespecial net.sf.cglib.proxy.CallbackInfo.<init>:(Ljava/lang/Class;Lnet/sf/cglib/proxy/CallbackGenerator;)V
aastore
8: putstatic net.sf.cglib.proxy.CallbackInfo.CALLBACKS:[Lnet/sf/cglib/proxy/CallbackInfo;
9: return
LocalVariableTable:
Start End Slot Name Signature
public static org.objectweb.asm.Type[] determineTypes(java.lang.Class[]);
descriptor: ([Ljava/lang/Class;)[Lorg/objectweb/asm/Type;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokestatic net.sf.cglib.proxy.CallbackInfo.determineTypes:([Ljava/lang/Class;Z)[Lorg/objectweb/asm/Type;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 callbackTypes [Ljava/lang/Class;
MethodParameters:
Name Flags
callbackTypes
public static org.objectweb.asm.Type[] determineTypes(java.lang.Class[], boolean);
descriptor: ([Ljava/lang/Class;Z)[Lorg/objectweb/asm/Type;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
arraylength
anewarray org.objectweb.asm.Type
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 5
3: StackMap locals: org.objectweb.asm.Type[] int
StackMap stack:
aload 2
iload 3
aload 0
iload 3
aaload
iload 1
invokestatic net.sf.cglib.proxy.CallbackInfo.determineType:(Ljava/lang/Class;Z)Lorg/objectweb/asm/Type;
aastore
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
aload 2
arraylength
if_icmplt 3
end local 3 6: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 callbackTypes [Ljava/lang/Class;
0 7 1 checkAll Z
1 7 2 types [Lorg/objectweb/asm/Type;
2 6 3 i I
MethodParameters:
Name Flags
callbackTypes
checkAll
public static org.objectweb.asm.Type[] determineTypes(net.sf.cglib.proxy.Callback[]);
descriptor: ([Lnet/sf/cglib/proxy/Callback;)[Lorg/objectweb/asm/Type;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokestatic net.sf.cglib.proxy.CallbackInfo.determineTypes:([Lnet/sf/cglib/proxy/Callback;Z)[Lorg/objectweb/asm/Type;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 callbacks [Lnet/sf/cglib/proxy/Callback;
MethodParameters:
Name Flags
callbacks
public static org.objectweb.asm.Type[] determineTypes(net.sf.cglib.proxy.Callback[], boolean);
descriptor: ([Lnet/sf/cglib/proxy/Callback;Z)[Lorg/objectweb/asm/Type;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: aload 0
arraylength
anewarray org.objectweb.asm.Type
astore 2
start local 2 1: iconst_0
istore 3
start local 3 2: goto 5
3: StackMap locals: org.objectweb.asm.Type[] int
StackMap stack:
aload 2
iload 3
aload 0
iload 3
aaload
iload 1
invokestatic net.sf.cglib.proxy.CallbackInfo.determineType:(Lnet/sf/cglib/proxy/Callback;Z)Lorg/objectweb/asm/Type;
aastore
4: iinc 3 1
StackMap locals:
StackMap stack:
5: iload 3
aload 2
arraylength
if_icmplt 3
end local 3 6: aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 callbacks [Lnet/sf/cglib/proxy/Callback;
0 7 1 checkAll Z
1 7 2 types [Lorg/objectweb/asm/Type;
2 6 3 i I
MethodParameters:
Name Flags
callbacks
checkAll
public static net.sf.cglib.proxy.CallbackGenerator[] getGenerators(org.objectweb.asm.Type[]);
descriptor: ([Lorg/objectweb/asm/Type;)[Lnet/sf/cglib/proxy/CallbackGenerator;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
arraylength
anewarray net.sf.cglib.proxy.CallbackGenerator
astore 1
start local 1 1: iconst_0
istore 2
start local 2 2: goto 5
3: StackMap locals: net.sf.cglib.proxy.CallbackGenerator[] int
StackMap stack:
aload 1
iload 2
aload 0
iload 2
aaload
invokestatic net.sf.cglib.proxy.CallbackInfo.getGenerator:(Lorg/objectweb/asm/Type;)Lnet/sf/cglib/proxy/CallbackGenerator;
aastore
4: iinc 2 1
StackMap locals:
StackMap stack:
5: iload 2
aload 1
arraylength
if_icmplt 3
end local 2 6: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 callbackTypes [Lorg/objectweb/asm/Type;
1 7 1 generators [Lnet/sf/cglib/proxy/CallbackGenerator;
2 6 2 i I
MethodParameters:
Name Flags
callbackTypes
private void <init>(java.lang.Class, net.sf.cglib.proxy.CallbackGenerator);
descriptor: (Ljava/lang/Class;Lnet/sf/cglib/proxy/CallbackGenerator;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield net.sf.cglib.proxy.CallbackInfo.cls:Ljava/lang/Class;
2: aload 0
aload 2
putfield net.sf.cglib.proxy.CallbackInfo.generator:Lnet/sf/cglib/proxy/CallbackGenerator;
3: aload 0
aload 1
invokestatic org.objectweb.asm.Type.getType:(Ljava/lang/Class;)Lorg/objectweb/asm/Type;
putfield net.sf.cglib.proxy.CallbackInfo.type:Lorg/objectweb/asm/Type;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lnet/sf/cglib/proxy/CallbackInfo;
0 5 1 cls Ljava/lang/Class;
0 5 2 generator Lnet/sf/cglib/proxy/CallbackGenerator;
MethodParameters:
Name Flags
cls
generator
private static org.objectweb.asm.Type determineType(net.sf.cglib.proxy.Callback, boolean);
descriptor: (Lnet/sf/cglib/proxy/Callback;Z)Lorg/objectweb/asm/Type;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
ifnonnull 2
1: new java.lang.IllegalStateException
dup
ldc "Callback is null"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
iload 1
invokestatic net.sf.cglib.proxy.CallbackInfo.determineType:(Ljava/lang/Class;Z)Lorg/objectweb/asm/Type;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 callback Lnet/sf/cglib/proxy/Callback;
0 3 1 checkAll Z
MethodParameters:
Name Flags
callback
checkAll
private static org.objectweb.asm.Type determineType(java.lang.Class, boolean);
descriptor: (Ljava/lang/Class;Z)Lorg/objectweb/asm/Type;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=6, args_size=2
start local 0 start local 1 0: aconst_null
astore 2
start local 2 1: aconst_null
astore 3
start local 3 2: iconst_0
istore 4
start local 4 3: goto 13
4: StackMap locals: java.lang.Class org.objectweb.asm.Type int
StackMap stack:
getstatic net.sf.cglib.proxy.CallbackInfo.CALLBACKS:[Lnet/sf/cglib/proxy/CallbackInfo;
iload 4
aaload
astore 5
start local 5 5: aload 5
getfield net.sf.cglib.proxy.CallbackInfo.cls:Ljava/lang/Class;
aload 0
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ifeq 12
6: aload 2
ifnull 8
7: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Callback implements both "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " and "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
getfield net.sf.cglib.proxy.CallbackInfo.cls:Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
8: StackMap locals: net.sf.cglib.proxy.CallbackInfo
StackMap stack:
aload 5
getfield net.sf.cglib.proxy.CallbackInfo.cls:Ljava/lang/Class;
astore 2
9: aload 5
getfield net.sf.cglib.proxy.CallbackInfo.type:Lorg/objectweb/asm/Type;
astore 3
10: iload 1
ifne 12
11: goto 14
end local 5 12: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
13: iload 4
getstatic net.sf.cglib.proxy.CallbackInfo.CALLBACKS:[Lnet/sf/cglib/proxy/CallbackInfo;
arraylength
if_icmplt 4
end local 4 14: StackMap locals:
StackMap stack:
aload 2
ifnonnull 16
15: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Unknown callback type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 callbackType Ljava/lang/Class;
0 17 1 checkAll Z
1 17 2 cur Ljava/lang/Class;
2 17 3 type Lorg/objectweb/asm/Type;
3 14 4 i I
5 12 5 info Lnet/sf/cglib/proxy/CallbackInfo;
MethodParameters:
Name Flags
callbackType
checkAll
private static net.sf.cglib.proxy.CallbackGenerator getGenerator(org.objectweb.asm.Type);
descriptor: (Lorg/objectweb/asm/Type;)Lnet/sf/cglib/proxy/CallbackGenerator;
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=5, locals=3, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 6
2: StackMap locals: int
StackMap stack:
getstatic net.sf.cglib.proxy.CallbackInfo.CALLBACKS:[Lnet/sf/cglib/proxy/CallbackInfo;
iload 1
aaload
astore 2
start local 2 3: aload 2
getfield net.sf.cglib.proxy.CallbackInfo.type:Lorg/objectweb/asm/Type;
aload 0
invokevirtual org.objectweb.asm.Type.equals:(Ljava/lang/Object;)Z
ifeq 5
4: aload 2
getfield net.sf.cglib.proxy.CallbackInfo.generator:Lnet/sf/cglib/proxy/CallbackGenerator;
areturn
end local 2 5: StackMap locals:
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
6: iload 1
getstatic net.sf.cglib.proxy.CallbackInfo.CALLBACKS:[Lnet/sf/cglib/proxy/CallbackInfo;
arraylength
if_icmplt 2
end local 1 7: new java.lang.IllegalStateException
dup
new java.lang.StringBuilder
dup
ldc "Unknown callback type "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 callbackType Lorg/objectweb/asm/Type;
1 7 1 i I
3 5 2 info Lnet/sf/cglib/proxy/CallbackInfo;
MethodParameters:
Name Flags
callbackType
}
SourceFile: "CallbackInfo.java"