public class net.sf.cglib.transform.impl.UndeclaredThrowableTransformer extends net.sf.cglib.transform.ClassEmitterTransformer
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: net.sf.cglib.transform.impl.UndeclaredThrowableTransformer
super_class: net.sf.cglib.transform.ClassEmitterTransformer
{
private org.objectweb.asm.Type wrapper;
descriptor: Lorg/objectweb/asm/Type;
flags: (0x0002) ACC_PRIVATE
public void <init>(java.lang.Class);
descriptor: (Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 0
invokespecial net.sf.cglib.transform.ClassEmitterTransformer.<init>:()V
1: aload 0
aload 1
invokestatic org.objectweb.asm.Type.getType:(Ljava/lang/Class;)Lorg/objectweb/asm/Type;
putfield net.sf.cglib.transform.impl.UndeclaredThrowableTransformer.wrapper:Lorg/objectweb/asm/Type;
2: iconst_0
istore 2
start local 2 3: aload 1
invokevirtual java.lang.Class.getConstructors:()[Ljava/lang/reflect/Constructor;
astore 3
start local 3 4: iconst_0
istore 4
start local 4 5: goto 11
6: StackMap locals: net.sf.cglib.transform.impl.UndeclaredThrowableTransformer java.lang.Class int java.lang.reflect.Constructor[] int
StackMap stack:
aload 3
iload 4
aaload
invokevirtual java.lang.reflect.Constructor.getParameterTypes:()[Ljava/lang/Class;
astore 5
start local 5 7: aload 5
arraylength
iconst_1
if_icmpne 10
aload 5
iconst_0
aaload
ldc Ljava/lang/Throwable;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifeq 10
8: iconst_1
istore 2
9: goto 12
end local 5 10: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
11: iload 4
aload 3
arraylength
if_icmplt 6
end local 4 12: StackMap locals:
StackMap stack:
iload 2
ifne 14
13: new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " does not have a single-arg constructor that takes a Throwable"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lnet/sf/cglib/transform/impl/UndeclaredThrowableTransformer;
0 15 1 wrapper Ljava/lang/Class;
3 15 2 found Z
4 15 3 cstructs [Ljava/lang/reflect/Constructor;
5 12 4 i I
7 10 5 types [Ljava/lang/Class;
MethodParameters:
Name Flags
wrapper
public net.sf.cglib.core.CodeEmitter begin_method(int, net.sf.cglib.core.Signature, org.objectweb.asm.Type[]);
descriptor: (ILnet/sf/cglib/core/Signature;[Lorg/objectweb/asm/Type;)Lnet/sf/cglib/core/CodeEmitter;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
aload 2
aload 3
invokespecial net.sf.cglib.transform.ClassEmitterTransformer.begin_method:(ILnet/sf/cglib/core/Signature;[Lorg/objectweb/asm/Type;)Lnet/sf/cglib/core/CodeEmitter;
astore 4
start local 4 1: iload 1
invokestatic net.sf.cglib.core.TypeUtils.isAbstract:(I)Z
ifne 2
aload 2
getstatic net.sf.cglib.core.Constants.SIG_STATIC:Lnet/sf/cglib/core/Signature;
invokevirtual net.sf.cglib.core.Signature.equals:(Ljava/lang/Object;)Z
ifeq 3
2: StackMap locals: net.sf.cglib.core.CodeEmitter
StackMap stack:
aload 4
areturn
3: StackMap locals:
StackMap stack:
new net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1
dup
aload 0
aload 4
aload 3
invokespecial net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1.<init>:(Lnet/sf/cglib/transform/impl/UndeclaredThrowableTransformer;Lnet/sf/cglib/core/CodeEmitter;[Lorg/objectweb/asm/Type;)V
areturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lnet/sf/cglib/transform/impl/UndeclaredThrowableTransformer;
0 4 1 access I
0 4 2 sig Lnet/sf/cglib/core/Signature;
0 4 3 exceptions [Lorg/objectweb/asm/Type;
1 4 4 e Lnet/sf/cglib/core/CodeEmitter;
MethodParameters:
Name Flags
access
sig final
exceptions final
}
SourceFile: "UndeclaredThrowableTransformer.java"
NestMembers:
net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1
InnerClasses:
net.sf.cglib.transform.impl.UndeclaredThrowableTransformer$1