class net.sf.cglib.proxy.MethodInterceptorGenerator extends java.lang.Object implements net.sf.cglib.proxy.CallbackGenerator
{
public static final net.sf.cglib.proxy.MethodInterceptorGenerator INSTANCE;
static final java.lang.String EMPTY_ARGS_NAME;
static final java.lang.String FIND_PROXY_NAME;
static final java.lang.Class[] FIND_PROXY_TYPES;
private static final net.sf.cglib.asm.$Type ABSTRACT_METHOD_ERROR;
private static final net.sf.cglib.asm.$Type METHOD;
private static final net.sf.cglib.asm.$Type REFLECT_UTILS;
private static final net.sf.cglib.asm.$Type METHOD_PROXY;
private static final net.sf.cglib.asm.$Type METHOD_INTERCEPTOR;
private static final net.sf.cglib.core.Signature GET_DECLARED_METHODS;
private static final net.sf.cglib.core.Signature GET_DECLARING_CLASS;
private static final net.sf.cglib.core.Signature FIND_METHODS;
private static final net.sf.cglib.core.Signature MAKE_PROXY;
private static final net.sf.cglib.core.Signature INTERCEPT;
private static final net.sf.cglib.core.Signature FIND_PROXY;
private static final net.sf.cglib.core.Signature TO_STRING;
private static final net.sf.cglib.core.Transformer METHOD_TO_CLASS;
private static final net.sf.cglib.core.Signature CSTRUCT_SIGNATURE;
void <init>()
{
net.sf.cglib.proxy.MethodInterceptorGenerator v;
v := @this: net.sf.cglib.proxy.MethodInterceptorGenerator;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
private java.lang.String getMethodField(net.sf.cglib.core.Signature)
{
net.sf.cglib.proxy.MethodInterceptorGenerator v;
net.sf.cglib.core.Signature v;
java.lang.String v, v;
v := @this: net.sf.cglib.proxy.MethodInterceptorGenerator;
v := @parameter: net.sf.cglib.core.Signature;
v = virtualinvoke v.<net.sf.cglib.core.Signature: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001$Method");
return v;
}
private java.lang.String getMethodProxyField(net.sf.cglib.core.Signature)
{
net.sf.cglib.proxy.MethodInterceptorGenerator v;
net.sf.cglib.core.Signature v;
java.lang.String v, v;
v := @this: net.sf.cglib.proxy.MethodInterceptorGenerator;
v := @parameter: net.sf.cglib.core.Signature;
v = virtualinvoke v.<net.sf.cglib.core.Signature: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001$Proxy");
return v;
}
public void generate(net.sf.cglib.core.ClassEmitter, net.sf.cglib.proxy.CallbackGenerator$Context, java.util.List)
{
net.sf.cglib.asm.$Label v;
net.sf.cglib.core.ClassEmitter v;
net.sf.cglib.asm.$Type[] v, v;
java.util.HashMap v;
net.sf.cglib.proxy.MethodInterceptorGenerator v;
net.sf.cglib.core.Signature v, v, v;
net.sf.cglib.proxy.CallbackGenerator$Context v;
int v, v;
java.lang.String v, v, v;
boolean v;
java.util.Iterator v;
net.sf.cglib.asm.$Type v, v, v, v, v;
java.util.List v;
java.lang.Object v;
net.sf.cglib.core.CodeEmitter v, v;
v := @this: net.sf.cglib.proxy.MethodInterceptorGenerator;
v := @parameter: net.sf.cglib.core.ClassEmitter;
v := @parameter: net.sf.cglib.proxy.CallbackGenerator$Context;
v := @parameter: java.util.List;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
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()>();
v = virtualinvoke v.<net.sf.cglib.core.MethodInfo: net.sf.cglib.core.Signature getSignature()>();
v = interfaceinvoke v.<net.sf.cglib.proxy.CallbackGenerator$Context: net.sf.cglib.core.Signature getImplSignature(net.sf.cglib.core.MethodInfo)>(v);
v = specialinvoke v.<net.sf.cglib.proxy.MethodInterceptorGenerator: java.lang.String getMethodField(net.sf.cglib.core.Signature)>(v);
v = specialinvoke v.<net.sf.cglib.proxy.MethodInterceptorGenerator: java.lang.String getMethodProxyField(net.sf.cglib.core.Signature)>(v);
v = virtualinvoke v.<net.sf.cglib.core.Signature: java.lang.String toString()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD>;
virtualinvoke v.<net.sf.cglib.core.ClassEmitter: void declare_field(int,java.lang.String,net.sf.cglib.asm.$Type,java.lang.Object)>(26, v, v, null);
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD_PROXY>;
virtualinvoke v.<net.sf.cglib.core.ClassEmitter: void declare_field(int,java.lang.String,net.sf.cglib.asm.$Type,java.lang.Object)>(26, v, v, null);
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_OBJECT_ARRAY>;
virtualinvoke v.<net.sf.cglib.core.ClassEmitter: void declare_field(int,java.lang.String,net.sf.cglib.asm.$Type,java.lang.Object)>(26, "CGLIB$emptyArgs", v, null);
v = virtualinvoke v.<net.sf.cglib.core.MethodInfo: net.sf.cglib.asm.$Type[] getExceptionTypes()>();
v = virtualinvoke v.<net.sf.cglib.core.ClassEmitter: net.sf.cglib.core.CodeEmitter begin_method(int,net.sf.cglib.core.Signature,net.sf.cglib.asm.$Type[])>(16, v, v);
staticinvoke <net.sf.cglib.proxy.MethodInterceptorGenerator: void superHelper(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,net.sf.cglib.proxy.CallbackGenerator$Context)>(v, v, v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void return_value()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void end_method()>();
v = interfaceinvoke v.<net.sf.cglib.proxy.CallbackGenerator$Context: net.sf.cglib.core.CodeEmitter beginMethod(net.sf.cglib.core.ClassEmitter,net.sf.cglib.core.MethodInfo)>(v, v);
v = virtualinvoke v.<net.sf.cglib.core.CodeEmitter: net.sf.cglib.asm.$Label make_label()>();
v = interfaceinvoke v.<net.sf.cglib.proxy.CallbackGenerator$Context: int getIndex(net.sf.cglib.core.MethodInfo)>(v);
interfaceinvoke v.<net.sf.cglib.proxy.CallbackGenerator$Context: void emitCallback(net.sf.cglib.core.CodeEmitter,int)>(v, v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void dup()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void ifnull(net.sf.cglib.asm.$Label)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void load_this()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void getfield(java.lang.String)>(v);
v = virtualinvoke v.<net.sf.cglib.core.Signature: net.sf.cglib.asm.$Type[] getArgumentTypes()>();
v = lengthof v;
if v != 0 goto label;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void getfield(java.lang.String)>("CGLIB$emptyArgs");
goto label;
label:
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void create_arg_array()>();
label:
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void getfield(java.lang.String)>(v);
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD_INTERCEPTOR>;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature INTERCEPT>;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void invoke_interface(net.sf.cglib.asm.$Type,net.sf.cglib.core.Signature)>(v, v);
v = virtualinvoke v.<net.sf.cglib.core.Signature: net.sf.cglib.asm.$Type getReturnType()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void unbox_or_zero(net.sf.cglib.asm.$Type)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void return_value()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void mark(net.sf.cglib.asm.$Label)>(v);
staticinvoke <net.sf.cglib.proxy.MethodInterceptorGenerator: void superHelper(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo,net.sf.cglib.proxy.CallbackGenerator$Context)>(v, v, v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void return_value()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void end_method()>();
goto label;
label:
virtualinvoke v.<net.sf.cglib.proxy.MethodInterceptorGenerator: void generateFindProxy(net.sf.cglib.core.ClassEmitter,java.util.Map)>(v, v);
return;
}
private static void superHelper(net.sf.cglib.core.CodeEmitter, net.sf.cglib.core.MethodInfo, net.sf.cglib.proxy.CallbackGenerator$Context)
{
net.sf.cglib.core.MethodInfo v;
net.sf.cglib.asm.$Type v;
net.sf.cglib.proxy.CallbackGenerator$Context v;
int v;
java.lang.String v, v;
boolean v;
net.sf.cglib.core.CodeEmitter v;
v := @parameter: net.sf.cglib.core.CodeEmitter;
v := @parameter: net.sf.cglib.core.MethodInfo;
v := @parameter: net.sf.cglib.proxy.CallbackGenerator$Context;
v = virtualinvoke v.<net.sf.cglib.core.MethodInfo: int getModifiers()>();
v = staticinvoke <net.sf.cglib.core.TypeUtils: boolean isAbstract(int)>(v);
if v == 0 goto label;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type ABSTRACT_METHOD_ERROR>;
v = virtualinvoke v.<net.sf.cglib.core.MethodInfo: java.lang.String toString()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u is abstract");
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void throw_exception(net.sf.cglib.asm.$Type,java.lang.String)>(v, v);
goto label;
label:
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void load_this()>();
interfaceinvoke v.<net.sf.cglib.proxy.CallbackGenerator$Context: void emitLoadArgsAndInvoke(net.sf.cglib.core.CodeEmitter,net.sf.cglib.core.MethodInfo)>(v, v);
label:
return;
}
public void generateStatic(net.sf.cglib.core.CodeEmitter, net.sf.cglib.proxy.CallbackGenerator$Context, java.util.List) throws java.lang.Exception
{
net.sf.cglib.core.Transformer v;
net.sf.cglib.core.Signature v, v, v, v, v, v;
net.sf.cglib.proxy.CallbackGenerator$Context v;
java.util.Map v;
boolean v;
java.util.Set v;
java.util.List v;
net.sf.cglib.core.CodeEmitter v;
net.sf.cglib.proxy.MethodInterceptorGenerator v;
int v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v;
net.sf.cglib.core.Local v, v;
java.util.Iterator v;
net.sf.cglib.asm.$Type v, v, v, v, v, v;
java.lang.Object v, v, v, v;
v := @this: net.sf.cglib.proxy.MethodInterceptorGenerator;
v := @parameter: net.sf.cglib.core.CodeEmitter;
v := @parameter: net.sf.cglib.proxy.CallbackGenerator$Context;
v := @parameter: java.util.List;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(int)>(0);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void 'newarray'()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void putfield(java.lang.String)>("CGLIB$emptyArgs");
v = virtualinvoke v.<net.sf.cglib.core.CodeEmitter: net.sf.cglib.core.Local make_local()>();
v = virtualinvoke v.<net.sf.cglib.core.CodeEmitter: net.sf.cglib.core.Local make_local()>();
staticinvoke <net.sf.cglib.core.EmitUtils: void load_class_this(net.sf.cglib.core.CodeEmitter)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void store_local(net.sf.cglib.core.Local)>(v);
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Transformer METHOD_TO_CLASS>;
v = staticinvoke <net.sf.cglib.core.CollectionUtils: java.util.Map bucket(java.util.Collection,net.sf.cglib.core.Transformer)>(v, v);
v = interfaceinvoke v.<java.util.Map: java.util.Set keySet()>();
v = interfaceinvoke v.<java.util.Set: 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()>();
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = interfaceinvoke v.<java.util.List: int size()>();
v = 2 * v;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(int)>(v);
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_STRING>;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void 'newarray'(net.sf.cglib.asm.$Type)>(v);
v = 0;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = virtualinvoke v.<net.sf.cglib.core.MethodInfo: net.sf.cglib.core.Signature getSignature()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void dup()>();
v = 2 * v;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(int)>(v);
v = virtualinvoke v.<net.sf.cglib.core.Signature: java.lang.String getName()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(java.lang.String)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void aastore()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void dup()>();
v = 2 * v;
v = v + 1;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(int)>(v);
v = virtualinvoke v.<net.sf.cglib.core.Signature: java.lang.String getDescriptor()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(java.lang.String)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void aastore()>();
v = v + 1;
goto label;
label:
v = virtualinvoke v.<net.sf.cglib.core.ClassInfo: net.sf.cglib.asm.$Type getType()>();
staticinvoke <net.sf.cglib.core.EmitUtils: void load_class(net.sf.cglib.core.CodeEmitter,net.sf.cglib.asm.$Type)>(v, v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void dup()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void store_local(net.sf.cglib.core.Local)>(v);
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_CLASS>;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature GET_DECLARED_METHODS>;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void invoke_virtual(net.sf.cglib.asm.$Type,net.sf.cglib.core.Signature)>(v, v);
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type REFLECT_UTILS>;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature FIND_METHODS>;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void invoke_static(net.sf.cglib.asm.$Type,net.sf.cglib.core.Signature)>(v, v);
v = 0;
label:
v = interfaceinvoke v.<java.util.List: int size()>();
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = virtualinvoke v.<net.sf.cglib.core.MethodInfo: net.sf.cglib.core.Signature getSignature()>();
v = interfaceinvoke v.<net.sf.cglib.proxy.CallbackGenerator$Context: net.sf.cglib.core.Signature getImplSignature(net.sf.cglib.core.MethodInfo)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void dup()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(int)>(v);
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD>;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void array_load(net.sf.cglib.asm.$Type)>(v);
v = specialinvoke v.<net.sf.cglib.proxy.MethodInterceptorGenerator: java.lang.String getMethodField(net.sf.cglib.core.Signature)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void putfield(java.lang.String)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void load_local(net.sf.cglib.core.Local)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void load_local(net.sf.cglib.core.Local)>(v);
v = virtualinvoke v.<net.sf.cglib.core.Signature: java.lang.String getDescriptor()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(java.lang.String)>(v);
v = virtualinvoke v.<net.sf.cglib.core.Signature: java.lang.String getName()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(java.lang.String)>(v);
v = virtualinvoke v.<net.sf.cglib.core.Signature: java.lang.String getName()>();
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void push(java.lang.String)>(v);
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD_PROXY>;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature MAKE_PROXY>;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void invoke_static(net.sf.cglib.asm.$Type,net.sf.cglib.core.Signature)>(v, v);
v = specialinvoke v.<net.sf.cglib.proxy.MethodInterceptorGenerator: java.lang.String getMethodProxyField(net.sf.cglib.core.Signature)>(v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void putfield(java.lang.String)>(v);
v = v + 1;
goto label;
label:
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void pop()>();
goto label;
label:
return;
}
public void generateFindProxy(net.sf.cglib.core.ClassEmitter, java.util.Map)
{
java.lang.Object[] v;
net.sf.cglib.core.ClassEmitter v;
net.sf.cglib.proxy.MethodInterceptorGenerator$2 v;
java.util.Set v;
java.lang.String[] v;
net.sf.cglib.asm.$Type v;
net.sf.cglib.proxy.MethodInterceptorGenerator v;
net.sf.cglib.core.Signature v, v;
java.util.Map v;
net.sf.cglib.core.CodeEmitter v;
v := @this: net.sf.cglib.proxy.MethodInterceptorGenerator;
v := @parameter: net.sf.cglib.core.ClassEmitter;
v := @parameter: java.util.Map;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature FIND_PROXY>;
v = virtualinvoke v.<net.sf.cglib.core.ClassEmitter: net.sf.cglib.core.CodeEmitter begin_method(int,net.sf.cglib.core.Signature,net.sf.cglib.asm.$Type[])>(9, v, null);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void load_arg(int)>(0);
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_OBJECT>;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature TO_STRING>;
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void invoke_virtual(net.sf.cglib.asm.$Type,net.sf.cglib.core.Signature)>(v, v);
v = new net.sf.cglib.proxy.MethodInterceptorGenerator$2;
specialinvoke v.<net.sf.cglib.proxy.MethodInterceptorGenerator$2: void <init>(net.sf.cglib.proxy.MethodInterceptorGenerator,net.sf.cglib.core.CodeEmitter,java.util.Map)>(v, v, v);
v = interfaceinvoke v.<java.util.Map: java.util.Set keySet()>();
v = newarray (java.lang.String)[0];
v = interfaceinvoke v.<java.util.Set: java.lang.Object[] toArray(java.lang.Object[])>(v);
staticinvoke <net.sf.cglib.core.EmitUtils: void string_switch(net.sf.cglib.core.CodeEmitter,java.lang.String[],int,net.sf.cglib.core.ObjectSwitchCallback)>(v, v, 1, v);
virtualinvoke v.<net.sf.cglib.core.CodeEmitter: void end_method()>();
return;
}
static void <clinit>()
{
net.sf.cglib.core.Signature v, v, v, v, v, v, v, v;
net.sf.cglib.asm.$Type[] v, v, v;
net.sf.cglib.proxy.MethodInterceptorGenerator v;
net.sf.cglib.proxy.MethodInterceptorGenerator$1 v;
java.lang.Class[] v;
net.sf.cglib.asm.$Type v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v = new net.sf.cglib.proxy.MethodInterceptorGenerator;
specialinvoke v.<net.sf.cglib.proxy.MethodInterceptorGenerator: void <init>()>();
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.proxy.MethodInterceptorGenerator INSTANCE> = v;
v = newarray (java.lang.Class)[1];
v[0] = class "Lnet/sf/cglib/core/Signature;";
<net.sf.cglib.proxy.MethodInterceptorGenerator: java.lang.Class[] FIND_PROXY_TYPES> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.asm.$Type parseType(java.lang.String)>("AbstractMethodError");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type ABSTRACT_METHOD_ERROR> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.asm.$Type parseType(java.lang.String)>("java.lang.reflect.Method");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.asm.$Type parseType(java.lang.String)>("net.sf.cglib.core.ReflectUtils");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type REFLECT_UTILS> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.asm.$Type parseType(java.lang.String)>("net.sf.cglib.proxy.MethodProxy");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD_PROXY> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.asm.$Type parseType(java.lang.String)>("net.sf.cglib.proxy.MethodInterceptor");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD_INTERCEPTOR> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("java.lang.reflect.Method[] getDeclaredMethods()");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature GET_DECLARED_METHODS> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("Class getDeclaringClass()");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature GET_DECLARING_CLASS> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("java.lang.reflect.Method[] findMethods(String[], java.lang.reflect.Method[])");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature FIND_METHODS> = v;
v = new net.sf.cglib.core.Signature;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD_PROXY>;
v = newarray (net.sf.cglib.asm.$Type)[5];
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_CLASS>;
v[0] = v;
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_CLASS>;
v[1] = v;
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_STRING>;
v[2] = v;
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_STRING>;
v[3] = v;
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_STRING>;
v[4] = v;
specialinvoke v.<net.sf.cglib.core.Signature: void <init>(java.lang.String,net.sf.cglib.asm.$Type,net.sf.cglib.asm.$Type[])>("create", v, v);
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature MAKE_PROXY> = v;
v = new net.sf.cglib.core.Signature;
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_OBJECT>;
v = newarray (net.sf.cglib.asm.$Type)[4];
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_OBJECT>;
v[0] = v;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD>;
v[1] = v;
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_OBJECT_ARRAY>;
v[2] = v;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD_PROXY>;
v[3] = v;
specialinvoke v.<net.sf.cglib.core.Signature: void <init>(java.lang.String,net.sf.cglib.asm.$Type,net.sf.cglib.asm.$Type[])>("intercept", v, v);
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature INTERCEPT> = v;
v = new net.sf.cglib.core.Signature;
v = <net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.asm.$Type METHOD_PROXY>;
v = newarray (net.sf.cglib.asm.$Type)[1];
v = <net.sf.cglib.core.Constants: net.sf.cglib.asm.$Type TYPE_SIGNATURE>;
v[0] = v;
specialinvoke v.<net.sf.cglib.core.Signature: void <init>(java.lang.String,net.sf.cglib.asm.$Type,net.sf.cglib.asm.$Type[])>("CGLIB$findMethodProxy", v, v);
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature FIND_PROXY> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseSignature(java.lang.String)>("String toString()");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature TO_STRING> = v;
v = new net.sf.cglib.proxy.MethodInterceptorGenerator$1;
specialinvoke v.<net.sf.cglib.proxy.MethodInterceptorGenerator$1: void <init>()>();
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Transformer METHOD_TO_CLASS> = v;
v = staticinvoke <net.sf.cglib.core.TypeUtils: net.sf.cglib.core.Signature parseConstructor(java.lang.String)>("String, String");
<net.sf.cglib.proxy.MethodInterceptorGenerator: net.sf.cglib.core.Signature CSTRUCT_SIGNATURE> = v;
return;
}
}