public class net.sf.cglib.core.KeyFactory$Generator extends net.sf.cglib.core.AbstractClassGenerator
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: net.sf.cglib.core.KeyFactory$Generator
super_class: net.sf.cglib.core.AbstractClassGenerator
{
private static final net.sf.cglib.core.AbstractClassGenerator$Source SOURCE;
descriptor: Lnet/sf/cglib/core/AbstractClassGenerator$Source;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final java.lang.Class[] KNOWN_CUSTOMIZER_TYPES;
descriptor: [Ljava/lang/Class;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private java.lang.Class keyInterface;
descriptor: Ljava/lang/Class;
flags: (0x0002) ACC_PRIVATE
private net.sf.cglib.core.internal.CustomizerRegistry customizers;
descriptor: Lnet/sf/cglib/core/internal/CustomizerRegistry;
flags: (0x0002) ACC_PRIVATE
private int constant;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int multiplier;
descriptor: I
flags: (0x0002) ACC_PRIVATE
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=4, locals=0, args_size=0
0: new net.sf.cglib.core.AbstractClassGenerator$Source
dup
ldc Lnet/sf/cglib/core/KeyFactory;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokespecial net.sf.cglib.core.AbstractClassGenerator$Source.<init>:(Ljava/lang/String;)V
putstatic net.sf.cglib.core.KeyFactory$Generator.SOURCE:Lnet/sf/cglib/core/AbstractClassGenerator$Source;
1: iconst_2
anewarray java.lang.Class
dup
iconst_0
ldc Lnet/sf/cglib/core/Customizer;
aastore
dup
iconst_1
ldc Lnet/sf/cglib/core/FieldTypeCustomizer;
aastore
putstatic net.sf.cglib.core.KeyFactory$Generator.KNOWN_CUSTOMIZER_TYPES:[Ljava/lang/Class;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
getstatic net.sf.cglib.core.KeyFactory$Generator.SOURCE:Lnet/sf/cglib/core/AbstractClassGenerator$Source;
invokespecial net.sf.cglib.core.AbstractClassGenerator.<init>:(Lnet/sf/cglib/core/AbstractClassGenerator$Source;)V
1: aload 0
new net.sf.cglib.core.internal.CustomizerRegistry
dup
getstatic net.sf.cglib.core.KeyFactory$Generator.KNOWN_CUSTOMIZER_TYPES:[Ljava/lang/Class;
invokespecial net.sf.cglib.core.internal.CustomizerRegistry.<init>:([Ljava/lang/Class;)V
putfield net.sf.cglib.core.KeyFactory$Generator.customizers:Lnet/sf/cglib/core/internal/CustomizerRegistry;
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
protected java.lang.ClassLoader getDefaultClassLoader();
descriptor: ()Ljava/lang/ClassLoader;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.keyInterface:Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
protected java.security.ProtectionDomain getProtectionDomain();
descriptor: ()Ljava/security/ProtectionDomain;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.keyInterface:Ljava/lang/Class;
invokestatic net.sf.cglib.core.ReflectUtils.getProtectionDomain:(Ljava/lang/Class;)Ljava/security/ProtectionDomain;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
public void setCustomizer(net.sf.cglib.core.Customizer);
descriptor: (Lnet/sf/cglib/core/Customizer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokestatic net.sf.cglib.core.internal.CustomizerRegistry.singleton:(Lnet/sf/cglib/core/Customizer;)Lnet/sf/cglib/core/internal/CustomizerRegistry;
putfield net.sf.cglib.core.KeyFactory$Generator.customizers:Lnet/sf/cglib/core/internal/CustomizerRegistry;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 2 1 customizer Lnet/sf/cglib/core/Customizer;
RuntimeVisibleAnnotations:
java.lang.Deprecated()
MethodParameters:
Name Flags
customizer
public void addCustomizer(net.sf.cglib.core.KeyFactoryCustomizer);
descriptor: (Lnet/sf/cglib/core/KeyFactoryCustomizer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.customizers:Lnet/sf/cglib/core/internal/CustomizerRegistry;
aload 1
invokevirtual net.sf.cglib.core.internal.CustomizerRegistry.add:(Lnet/sf/cglib/core/KeyFactoryCustomizer;)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 2 1 customizer Lnet/sf/cglib/core/KeyFactoryCustomizer;
MethodParameters:
Name Flags
customizer
public <T> java.util.List<T> getCustomizers(java.lang.Class<T>);
descriptor: (Ljava/lang/Class;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.customizers:Lnet/sf/cglib/core/internal/CustomizerRegistry;
aload 1
invokevirtual net.sf.cglib.core.internal.CustomizerRegistry.get:(Ljava/lang/Class;)Ljava/util/List;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 1 1 klass Ljava/lang/Class<TT;>;
Signature: <T:Ljava/lang/Object;>(Ljava/lang/Class<TT;>;)Ljava/util/List<TT;>;
MethodParameters:
Name Flags
klass
public void setInterface(java.lang.Class);
descriptor: (Ljava/lang/Class;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield net.sf.cglib.core.KeyFactory$Generator.keyInterface:Ljava/lang/Class;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 2 1 keyInterface Ljava/lang/Class;
MethodParameters:
Name Flags
keyInterface
public net.sf.cglib.core.KeyFactory create();
descriptor: ()Lnet/sf/cglib/core/KeyFactory;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.keyInterface:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual net.sf.cglib.core.KeyFactory$Generator.setNamePrefix:(Ljava/lang/String;)V
1: aload 0
aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.keyInterface:Ljava/lang/Class;
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokespecial net.sf.cglib.core.AbstractClassGenerator.create:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast net.sf.cglib.core.KeyFactory
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
public void setHashConstant(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield net.sf.cglib.core.KeyFactory$Generator.constant:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 2 1 constant I
MethodParameters:
Name Flags
constant
public void setHashMultiplier(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield net.sf.cglib.core.KeyFactory$Generator.multiplier:I
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 2 1 multiplier I
MethodParameters:
Name Flags
multiplier
protected java.lang.Object firstInstance(java.lang.Class);
descriptor: (Ljava/lang/Class;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokestatic net.sf.cglib.core.ReflectUtils.newInstance:(Ljava/lang/Class;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 1 1 type Ljava/lang/Class;
MethodParameters:
Name Flags
type
protected java.lang.Object nextInstance(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 1 1 instance Ljava/lang/Object;
MethodParameters:
Name Flags
instance
public void generateClass(org.objectweb.asm.ClassVisitor);
descriptor: (Lorg/objectweb/asm/ClassVisitor;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=13, args_size=2
start local 0 start local 1 0: new net.sf.cglib.core.ClassEmitter
dup
aload 1
invokespecial net.sf.cglib.core.ClassEmitter.<init>:(Lorg/objectweb/asm/ClassVisitor;)V
astore 2
start local 2 1: aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.keyInterface:Ljava/lang/Class;
invokestatic net.sf.cglib.core.ReflectUtils.findNewInstance:(Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 3
start local 3 2: aload 3
invokevirtual java.lang.reflect.Method.getReturnType:()Ljava/lang/Class;
ldc Ljava/lang/Object;
invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
ifne 4
3: new java.lang.IllegalArgumentException
dup
ldc "newInstance method must return Object"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals: net.sf.cglib.core.ClassEmitter java.lang.reflect.Method
StackMap stack:
aload 3
invokevirtual java.lang.reflect.Method.getParameterTypes:()[Ljava/lang/Class;
invokestatic net.sf.cglib.core.TypeUtils.getTypes:([Ljava/lang/Class;)[Lorg/objectweb/asm/Type;
astore 4
start local 4 5: aload 2
bipush 52
6: iconst_1
7: aload 0
invokevirtual net.sf.cglib.core.KeyFactory$Generator.getClassName:()Ljava/lang/String;
8: getstatic net.sf.cglib.core.KeyFactory.KEY_FACTORY:Lorg/objectweb/asm/Type;
9: iconst_1
anewarray org.objectweb.asm.Type
dup
iconst_0
aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.keyInterface:Ljava/lang/Class;
invokestatic org.objectweb.asm.Type.getType:(Ljava/lang/Class;)Lorg/objectweb/asm/Type;
aastore
10: ldc "<generated>"
11: invokevirtual net.sf.cglib.core.ClassEmitter.begin_class:(IILjava/lang/String;Lorg/objectweb/asm/Type;[Lorg/objectweb/asm/Type;Ljava/lang/String;)V
12: aload 2
invokestatic net.sf.cglib.core.EmitUtils.null_constructor:(Lnet/sf/cglib/core/ClassEmitter;)V
13: aload 2
aload 3
invokestatic net.sf.cglib.core.ReflectUtils.getSignature:(Ljava/lang/reflect/Member;)Lnet/sf/cglib/core/Signature;
invokestatic net.sf.cglib.core.EmitUtils.factory_method:(Lnet/sf/cglib/core/ClassEmitter;Lnet/sf/cglib/core/Signature;)V
14: iconst_0
istore 5
start local 5 15: aload 2
iconst_1
16: aload 4
invokestatic net.sf.cglib.core.TypeUtils.parseConstructor:([Lorg/objectweb/asm/Type;)Lnet/sf/cglib/core/Signature;
17: aconst_null
18: invokevirtual net.sf.cglib.core.ClassEmitter.begin_method:(ILnet/sf/cglib/core/Signature;[Lorg/objectweb/asm/Type;)Lnet/sf/cglib/core/CodeEmitter;
astore 6
start local 6 19: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.load_this:()V
20: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.super_invoke_constructor:()V
21: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.load_this:()V
22: aload 0
ldc Lnet/sf/cglib/core/FieldTypeCustomizer;
invokevirtual net.sf.cglib.core.KeyFactory$Generator.getCustomizers:(Ljava/lang/Class;)Ljava/util/List;
astore 7
start local 7 23: iconst_0
istore 8
start local 8 24: goto 45
25: StackMap locals: net.sf.cglib.core.KeyFactory$Generator org.objectweb.asm.ClassVisitor net.sf.cglib.core.ClassEmitter java.lang.reflect.Method org.objectweb.asm.Type[] int net.sf.cglib.core.CodeEmitter java.util.List int
StackMap stack:
aload 4
iload 8
aaload
astore 9
start local 9 26: aload 9
astore 10
start local 10 27: aload 7
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 12
goto 30
StackMap locals: net.sf.cglib.core.KeyFactory$Generator org.objectweb.asm.ClassVisitor net.sf.cglib.core.ClassEmitter java.lang.reflect.Method org.objectweb.asm.Type[] int net.sf.cglib.core.CodeEmitter java.util.List int org.objectweb.asm.Type org.objectweb.asm.Type top java.util.Iterator
StackMap stack:
28: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast net.sf.cglib.core.FieldTypeCustomizer
astore 11
start local 11 29: aload 11
iload 8
aload 10
invokeinterface net.sf.cglib.core.FieldTypeCustomizer.getOutType:(ILorg/objectweb/asm/Type;)Lorg/objectweb/asm/Type;
astore 10
end local 11 30: StackMap locals:
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 28
31: iload 5
aload 10
invokevirtual org.objectweb.asm.Type.hashCode:()I
iadd
istore 5
32: aload 2
bipush 18
33: aload 0
iload 8
invokevirtual net.sf.cglib.core.KeyFactory$Generator.getFieldName:(I)Ljava/lang/String;
34: aload 10
35: aconst_null
36: invokevirtual net.sf.cglib.core.ClassEmitter.declare_field:(ILjava/lang/String;Lorg/objectweb/asm/Type;Ljava/lang/Object;)V
37: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.dup:()V
38: aload 6
iload 8
invokevirtual net.sf.cglib.core.CodeEmitter.load_arg:(I)V
39: aload 7
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 12
goto 42
StackMap locals:
StackMap stack:
40: aload 12
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast net.sf.cglib.core.FieldTypeCustomizer
astore 11
start local 11 41: aload 11
aload 6
iload 8
aload 9
invokeinterface net.sf.cglib.core.FieldTypeCustomizer.customize:(Lnet/sf/cglib/core/CodeEmitter;ILorg/objectweb/asm/Type;)V
end local 11 42: StackMap locals:
StackMap stack:
aload 12
invokeinterface java.util.Iterator.hasNext:()Z
ifne 40
43: aload 6
aload 0
iload 8
invokevirtual net.sf.cglib.core.KeyFactory$Generator.getFieldName:(I)Ljava/lang/String;
invokevirtual net.sf.cglib.core.CodeEmitter.putfield:(Ljava/lang/String;)V
end local 10 end local 9 44: iinc 8 1
StackMap locals: net.sf.cglib.core.KeyFactory$Generator org.objectweb.asm.ClassVisitor net.sf.cglib.core.ClassEmitter java.lang.reflect.Method org.objectweb.asm.Type[] int net.sf.cglib.core.CodeEmitter java.util.List int
StackMap stack:
45: iload 8
aload 4
arraylength
if_icmplt 25
end local 8 46: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.return_value:()V
47: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.end_method:()V
48: aload 2
iconst_1
getstatic net.sf.cglib.core.KeyFactory.HASH_CODE:Lnet/sf/cglib/core/Signature;
aconst_null
invokevirtual net.sf.cglib.core.ClassEmitter.begin_method:(ILnet/sf/cglib/core/Signature;[Lorg/objectweb/asm/Type;)Lnet/sf/cglib/core/CodeEmitter;
astore 6
49: aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.constant:I
ifeq 50
aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.constant:I
goto 51
StackMap locals:
StackMap stack:
50: getstatic net.sf.cglib.core.KeyFactory.PRIMES:[I
iload 5
invokestatic java.lang.Math.abs:(I)I
getstatic net.sf.cglib.core.KeyFactory.PRIMES:[I
arraylength
irem
iaload
StackMap locals:
StackMap stack: int
51: istore 8
start local 8 52: aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.multiplier:I
ifeq 53
aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.multiplier:I
goto 54
StackMap locals: int
StackMap stack:
53: getstatic net.sf.cglib.core.KeyFactory.PRIMES:[I
iload 5
bipush 13
imul
invokestatic java.lang.Math.abs:(I)I
getstatic net.sf.cglib.core.KeyFactory.PRIMES:[I
arraylength
irem
iaload
StackMap locals:
StackMap stack: int
54: istore 9
start local 9 55: aload 6
iload 8
invokevirtual net.sf.cglib.core.CodeEmitter.push:(I)V
56: iconst_0
istore 10
start local 10 57: goto 62
58: StackMap locals: int int
StackMap stack:
aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.load_this:()V
59: aload 6
aload 0
iload 10
invokevirtual net.sf.cglib.core.KeyFactory$Generator.getFieldName:(I)Ljava/lang/String;
invokevirtual net.sf.cglib.core.CodeEmitter.getfield:(Ljava/lang/String;)V
60: aload 6
aload 4
iload 10
aaload
iload 9
aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.customizers:Lnet/sf/cglib/core/internal/CustomizerRegistry;
invokestatic net.sf.cglib.core.EmitUtils.hash_code:(Lnet/sf/cglib/core/CodeEmitter;Lorg/objectweb/asm/Type;ILnet/sf/cglib/core/internal/CustomizerRegistry;)V
61: iinc 10 1
StackMap locals:
StackMap stack:
62: iload 10
aload 4
arraylength
if_icmplt 58
end local 10 63: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.return_value:()V
64: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.end_method:()V
65: aload 2
iconst_1
getstatic net.sf.cglib.core.KeyFactory.EQUALS:Lnet/sf/cglib/core/Signature;
aconst_null
invokevirtual net.sf.cglib.core.ClassEmitter.begin_method:(ILnet/sf/cglib/core/Signature;[Lorg/objectweb/asm/Type;)Lnet/sf/cglib/core/CodeEmitter;
astore 6
66: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.make_label:()Lorg/objectweb/asm/Label;
astore 10
start local 10 67: aload 6
iconst_0
invokevirtual net.sf.cglib.core.CodeEmitter.load_arg:(I)V
68: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.instance_of_this:()V
69: aload 6
sipush 153
aload 10
invokevirtual net.sf.cglib.core.CodeEmitter.if_jump:(ILorg/objectweb/asm/Label;)V
70: iconst_0
istore 11
start local 11 71: goto 79
72: StackMap locals: net.sf.cglib.core.KeyFactory$Generator org.objectweb.asm.ClassVisitor net.sf.cglib.core.ClassEmitter java.lang.reflect.Method org.objectweb.asm.Type[] int net.sf.cglib.core.CodeEmitter java.util.List int int org.objectweb.asm.Label int
StackMap stack:
aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.load_this:()V
73: aload 6
aload 0
iload 11
invokevirtual net.sf.cglib.core.KeyFactory$Generator.getFieldName:(I)Ljava/lang/String;
invokevirtual net.sf.cglib.core.CodeEmitter.getfield:(Ljava/lang/String;)V
74: aload 6
iconst_0
invokevirtual net.sf.cglib.core.CodeEmitter.load_arg:(I)V
75: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.checkcast_this:()V
76: aload 6
aload 0
iload 11
invokevirtual net.sf.cglib.core.KeyFactory$Generator.getFieldName:(I)Ljava/lang/String;
invokevirtual net.sf.cglib.core.CodeEmitter.getfield:(Ljava/lang/String;)V
77: aload 6
aload 4
iload 11
aaload
aload 10
aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.customizers:Lnet/sf/cglib/core/internal/CustomizerRegistry;
invokestatic net.sf.cglib.core.EmitUtils.not_equals:(Lnet/sf/cglib/core/CodeEmitter;Lorg/objectweb/asm/Type;Lorg/objectweb/asm/Label;Lnet/sf/cglib/core/internal/CustomizerRegistry;)V
78: iinc 11 1
StackMap locals:
StackMap stack:
79: iload 11
aload 4
arraylength
if_icmplt 72
end local 11 80: aload 6
iconst_1
invokevirtual net.sf.cglib.core.CodeEmitter.push:(I)V
81: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.return_value:()V
82: aload 6
aload 10
invokevirtual net.sf.cglib.core.CodeEmitter.mark:(Lorg/objectweb/asm/Label;)V
83: aload 6
iconst_0
invokevirtual net.sf.cglib.core.CodeEmitter.push:(I)V
84: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.return_value:()V
85: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.end_method:()V
86: aload 2
iconst_1
getstatic net.sf.cglib.core.KeyFactory.TO_STRING:Lnet/sf/cglib/core/Signature;
aconst_null
invokevirtual net.sf.cglib.core.ClassEmitter.begin_method:(ILnet/sf/cglib/core/Signature;[Lorg/objectweb/asm/Type;)Lnet/sf/cglib/core/CodeEmitter;
astore 6
87: aload 6
getstatic net.sf.cglib.core.Constants.TYPE_STRING_BUFFER:Lorg/objectweb/asm/Type;
invokevirtual net.sf.cglib.core.CodeEmitter.new_instance:(Lorg/objectweb/asm/Type;)V
88: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.dup:()V
89: aload 6
getstatic net.sf.cglib.core.Constants.TYPE_STRING_BUFFER:Lorg/objectweb/asm/Type;
invokevirtual net.sf.cglib.core.CodeEmitter.invoke_constructor:(Lorg/objectweb/asm/Type;)V
90: iconst_0
istore 11
start local 11 91: goto 99
92: StackMap locals:
StackMap stack:
iload 11
ifle 95
93: aload 6
ldc ", "
invokevirtual net.sf.cglib.core.CodeEmitter.push:(Ljava/lang/String;)V
94: aload 6
getstatic net.sf.cglib.core.Constants.TYPE_STRING_BUFFER:Lorg/objectweb/asm/Type;
getstatic net.sf.cglib.core.KeyFactory.APPEND_STRING:Lnet/sf/cglib/core/Signature;
invokevirtual net.sf.cglib.core.CodeEmitter.invoke_virtual:(Lorg/objectweb/asm/Type;Lnet/sf/cglib/core/Signature;)V
95: StackMap locals:
StackMap stack:
aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.load_this:()V
96: aload 6
aload 0
iload 11
invokevirtual net.sf.cglib.core.KeyFactory$Generator.getFieldName:(I)Ljava/lang/String;
invokevirtual net.sf.cglib.core.CodeEmitter.getfield:(Ljava/lang/String;)V
97: aload 6
aload 4
iload 11
aaload
getstatic net.sf.cglib.core.EmitUtils.DEFAULT_DELIMITERS:Lnet/sf/cglib/core/EmitUtils$ArrayDelimiters;
aload 0
getfield net.sf.cglib.core.KeyFactory$Generator.customizers:Lnet/sf/cglib/core/internal/CustomizerRegistry;
invokestatic net.sf.cglib.core.EmitUtils.append_string:(Lnet/sf/cglib/core/CodeEmitter;Lorg/objectweb/asm/Type;Lnet/sf/cglib/core/EmitUtils$ArrayDelimiters;Lnet/sf/cglib/core/internal/CustomizerRegistry;)V
98: iinc 11 1
StackMap locals:
StackMap stack:
99: iload 11
aload 4
arraylength
if_icmplt 92
end local 11 100: aload 6
getstatic net.sf.cglib.core.Constants.TYPE_STRING_BUFFER:Lorg/objectweb/asm/Type;
getstatic net.sf.cglib.core.KeyFactory.TO_STRING:Lnet/sf/cglib/core/Signature;
invokevirtual net.sf.cglib.core.CodeEmitter.invoke_virtual:(Lorg/objectweb/asm/Type;Lnet/sf/cglib/core/Signature;)V
101: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.return_value:()V
102: aload 6
invokevirtual net.sf.cglib.core.CodeEmitter.end_method:()V
103: aload 2
invokevirtual net.sf.cglib.core.ClassEmitter.end_class:()V
104: return
end local 10 end local 9 end local 8 end local 7 end local 6 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 105 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 105 1 v Lorg/objectweb/asm/ClassVisitor;
1 105 2 ce Lnet/sf/cglib/core/ClassEmitter;
2 105 3 newInstance Ljava/lang/reflect/Method;
5 105 4 parameterTypes [Lorg/objectweb/asm/Type;
15 105 5 seed I
19 105 6 e Lnet/sf/cglib/core/CodeEmitter;
23 105 7 fieldTypeCustomizers Ljava/util/List<Lnet/sf/cglib/core/FieldTypeCustomizer;>;
24 46 8 i I
26 44 9 parameterType Lorg/objectweb/asm/Type;
27 44 10 fieldType Lorg/objectweb/asm/Type;
29 30 11 customizer Lnet/sf/cglib/core/FieldTypeCustomizer;
41 42 11 customizer Lnet/sf/cglib/core/FieldTypeCustomizer;
52 105 8 hc I
55 105 9 hm I
57 63 10 i I
67 105 10 fail Lorg/objectweb/asm/Label;
71 80 11 i I
91 100 11 i I
MethodParameters:
Name Flags
v
private java.lang.String getFieldName(int);
descriptor: (I)Ljava/lang/String;
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: new java.lang.StringBuilder
dup
ldc "FIELD_"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
iload 1
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lnet/sf/cglib/core/KeyFactory$Generator;
0 1 1 arg I
MethodParameters:
Name Flags
arg
}
SourceFile: "KeyFactory.java"
NestHost: net.sf.cglib.core.KeyFactory
InnerClasses:
protected Source = net.sf.cglib.core.AbstractClassGenerator$Source of net.sf.cglib.core.AbstractClassGenerator
public ArrayDelimiters = net.sf.cglib.core.EmitUtils$ArrayDelimiters of net.sf.cglib.core.EmitUtils
public Generator = net.sf.cglib.core.KeyFactory$Generator of net.sf.cglib.core.KeyFactory