public abstract class net.sf.cglib.core.KeyFactory extends java.lang.Object
{
private static final net.sf.cglib.core.Signature GET_NAME;
private static final net.sf.cglib.core.Signature GET_CLASS;
private static final net.sf.cglib.core.Signature HASH_CODE;
private static final net.sf.cglib.core.Signature EQUALS;
private static final net.sf.cglib.core.Signature TO_STRING;
private static final net.sf.cglib.core.Signature APPEND_STRING;
private static final net.sf.cglib.asm.$Type KEY_FACTORY;
private static final net.sf.cglib.core.Signature GET_SORT;
private static final int[] PRIMES;
public static final net.sf.cglib.core.Customizer CLASS_BY_NAME;
public static final net.sf.cglib.core.FieldTypeCustomizer STORE_CLASS_AS_STRING;
public static final net.sf.cglib.core.HashCodeCustomizer HASH_ASM_TYPE;
public static final net.sf.cglib.core.Customizer OBJECT_BY_CLASS;
protected void <init>()
{
net.sf.cglib.core.KeyFactory v;
v := @this: net.sf.cglib.core.KeyFactory;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static net.sf.cglib.core.KeyFactory create(java.lang.Class)
{
net.sf.cglib.core.KeyFactory v;
java.lang.Class v;
v := @parameter: java.lang.Class;
v = staticinvoke <net.sf.cglib.core.KeyFactory: net.sf.cglib.core.KeyFactory create(java.lang.Class,net.sf.cglib.core.Customizer)>(v, null);
return v;
}
public static net.sf.cglib.core.KeyFactory create(java.lang.Class, net.sf.cglib.core.Customizer)
{
net.sf.cglib.core.KeyFactory v;
java.lang.Class v;
java.lang.ClassLoader v;
net.sf.cglib.core.Customizer v;
v := @parameter: java.lang.Class;
v := @parameter: net.sf.cglib.core.Customizer;
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
v = staticinvoke <net.sf.cglib.core.KeyFactory: net.sf.cglib.core.KeyFactory create(java.lang.ClassLoader,java.lang.Class,net.sf.cglib.core.Customizer)>(v, v, v);
return v;
}
public static net.sf.cglib.core.KeyFactory create(java.lang.Class, net.sf.cglib.core.KeyFactoryCustomizer, java.util.List)
{
java.util.List v;
net.sf.cglib.core.KeyFactoryCustomizer v;
net.sf.cglib.core.KeyFactory v;
java.lang.Class v;
java.lang.ClassLoader v;
v := @parameter: java.lang.Class;
v := @parameter: net.sf.cglib.core.KeyFactoryCustomizer;
v := @parameter: java.util.List;
v = virtualinvoke v.<java.lang.Class: java.lang.ClassLoader getClassLoader()>();
v = staticinvoke <net.sf.cglib.core.KeyFactory: net.sf.cglib.core.KeyFactory create(java.lang.ClassLoader,java.lang.Class,net.sf.cglib.core.KeyFactoryCustomizer,java.util.List)>(v, v, v, v);
return v;
}
public static net.sf.cglib.core.KeyFactory create(java.lang.ClassLoader, java.lang.Class, net.sf.cglib.core.Customizer)
{
java.util.List v;
net.sf.cglib.core.KeyFactory v;
java.lang.Class v;
java.lang.ClassLoader v;
net.sf.cglib.core.Customizer v;
v := @parameter: java.lang.ClassLoader;
v := @parameter: java.lang.Class;
v := @parameter: net.sf.cglib.core.Customizer;
v = staticinvoke <java.util.Collections: java.util.List emptyList()>();
v = staticinvoke <net.sf.cglib.core.KeyFactory: net.sf.cglib.core.KeyFactory create(java.lang.ClassLoader,java.lang.Class,net.sf.cglib.core.KeyFactoryCustomizer,java.util.List)>(v, v, v, v);
return v;
}
public static net.sf.cglib.core.KeyFactory create(java.lang.ClassLoader, java.lang.Class, net.sf.cglib.core.KeyFactoryCustomizer, java.util.List)
{
net.sf.cglib.core.KeyFactory$Generator v;
java.util.Iterator v;
net.sf.cglib.core.KeyFactory v;
java.util.List v;
net.sf.cglib.core.KeyFactoryCustomizer v;
java.lang.Class v;
java.lang.Object v;
java.lang.ClassLoader v;
boolean v, v;
v := @parameter: java.lang.ClassLoader;
v := @parameter: java.lang.Class;
v := @parameter: net.sf.cglib.core.KeyFactoryCustomizer;
v := @parameter: java.util.List;
v = new net.sf.cglib.core.KeyFactory$Generator;
specialinvoke v.<net.sf.cglib.core.KeyFactory$Generator: void <init>()>();
virtualinvoke v.<net.sf.cglib.core.KeyFactory$Generator: void setInterface(java.lang.Class)>(v);
if v == null goto label;
virtualinvoke v.<net.sf.cglib.core.KeyFactory$Generator: void addCustomizer(net.sf.cglib.core.KeyFactoryCustomizer)>(v);
label:
if v == null goto label;
v = interfaceinvoke v.<java.util.List: boolean isEmpty()>();
if v != 0 goto label;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<net.sf.cglib.core.KeyFactory$Generator: void addCustomizer(net.sf.cglib.core.KeyFactoryCustomizer)>(v);
goto label;
label:
virtualinvoke v.<net.sf.cglib.core.KeyFactory$Generator: void setClassLoader(java.lang.ClassLoader)>(v);
v = virtualinvoke v.<net.sf.cglib.core.KeyFactory$Generator: net.sf.cglib.core.KeyFactory create()>();
return v;
}
static void <clinit>()
{
net.sf.cglib.core.KeyFactory$2 v;
net.sf.cglib.core.KeyFactory$1 v;
net.sf.cglib.core.KeyFactory$4 v;
net.sf.cglib.core.KeyFactory$3 v;
net.sf.cglib.asm.$Type v;
int[] v;
net.sf.cglib.core.Signature v, v, v, v, v, v, v;
int v, v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("String getName()");
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Signature GET_NAME> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("Class getClass()");
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Signature GET_CLASS> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("int hashCode()");
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Signature HASH_CODE> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("boolean equals(Object)");
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Signature EQUALS> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("String toString()");
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Signature TO_STRING> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("StringBuffer append(String)");
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Signature APPEND_STRING> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.asm.$Type parseType(java.lang.String)>("net.sf.cglib.core.KeyFactory");
<net.sf.cglib.core.KeyFactory: net.sf.cglib.asm.$Type KEY_FACTORY> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("int getSort()");
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Signature GET_SORT> = v;
v = newarray (int)[51];
v[0] = 11;
v[1] = 73;
v[2] = 179;
v[3] = 331;
v[4] = 521;
v[5] = 787;
v[6] = 1213;
v[7] = 1823;
v[8] = 2609;
v[9] = 3691;
v[10] = 5189;
v[11] = 7247;
v[12] = 10037;
v[13] = 13931;
v[14] = 19289;
v[15] = 26627;
v = (int) 36683;
v[16] = v;
v = (int) 50441;
v[17] = v;
v[18] = 69403;
v[19] = 95401;
v[20] = 131129;
v[21] = 180179;
v[22] = 247501;
v[23] = 340057;
v[24] = 467063;
v[25] = 641371;
v[26] = 880603;
v[27] = 1209107;
v[28] = 1660097;
v[29] = 2279161;
v[30] = 3129011;
v[31] = 4295723;
v[32] = 5897291;
v[33] = 8095873;
v[34] = 11114263;
v[35] = 15257791;
v[36] = 20946017;
v[37] = 28754629;
v[38] = 39474179;
v[39] = 54189869;
v[40] = 74391461;
v[41] = 102123817;
v[42] = 140194277;
v[43] = 192456917;
v[44] = 264202273;
v[45] = 362693231;
v[46] = 497900099;
v[47] = 683510293;
v[48] = 938313161;
v[49] = 1288102441;
v[50] = 1768288259;
<net.sf.cglib.core.KeyFactory: int[] PRIMES> = v;
v = new net.sf.cglib.core.KeyFactory$1;
specialinvoke v.<net.sf.cglib.core.KeyFactory$1: void <init>()>();
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Customizer CLASS_BY_NAME> = v;
v = new net.sf.cglib.core.KeyFactory$2;
specialinvoke v.<net.sf.cglib.core.KeyFactory$2: void <init>()>();
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.FieldTypeCustomizer STORE_CLASS_AS_STRING> = v;
v = new net.sf.cglib.core.KeyFactory$3;
specialinvoke v.<net.sf.cglib.core.KeyFactory$3: void <init>()>();
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.HashCodeCustomizer HASH_ASM_TYPE> = v;
v = new net.sf.cglib.core.KeyFactory$4;
specialinvoke v.<net.sf.cglib.core.KeyFactory$4: void <init>()>();
<net.sf.cglib.core.KeyFactory: net.sf.cglib.core.Customizer OBJECT_BY_CLASS> = v;
return;
}
}