public class org.apache.ibatis.ognl.OgnlRuntime extends java.lang.Object
{
public static final java.lang.Object NotFound;
public static final java.lang.Object[] NoArguments;
public static final java.lang.Object NoConversionPossible;
public static int INDEXED_PROPERTY_NONE;
public static int INDEXED_PROPERTY_INT;
public static int INDEXED_PROPERTY_OBJECT;
public static final java.lang.String NULL_STRING;
public static final java.lang.String SET_PREFIX;
public static final java.lang.String GET_PREFIX;
public static final java.lang.String IS_PREFIX;
private static final java.util.Map HEX_PADDING;
private static final int HEX_LENGTH;
private static final java.lang.String NULL_OBJECT_STRING;
static final java.lang.String USE_JDK9PLUS_ACCESS_HANDLER;
static final java.lang.String USE_STRICTER_INVOCATION;
private static final boolean _useJDK9PlusAccessHandler;
private static final boolean _useStricterInvocation;
private static final int _majorJavaVersion;
private static final boolean _jdk9Plus;
private static final org.apache.ibatis.ognl.AccessibleObjectHandler _accessibleObjectHandler;
private static final java.lang.reflect.Method SYS_CONSOLE_REF;
private static final java.lang.reflect.Method SYS_EXIT_REF;
private static final java.lang.reflect.Method AO_SETACCESSIBLE_REF;
private static final java.lang.reflect.Method AO_SETACCESSIBLE_ARR_REF;
static final java.lang.String OGNL_SECURITY_MANAGER;
static final java.lang.String OGNL_SM_FORCE_DISABLE_ON_INIT;
private static final boolean _disableOgnlSecurityManagerOnInit;
static final java.lang.String USE_FIRSTMATCH_GETSET_LOOKUP;
private static final boolean _useFirstMatchGetSetLookup;
static final org.apache.ibatis.ognl.OgnlCache cache;
private static final org.apache.ibatis.ognl.PrimitiveTypes primitiveTypes;
private static final org.apache.ibatis.ognl.PrimitiveDefaults primitiveDefaults;
static java.lang.SecurityManager securityManager;
static final org.apache.ibatis.ognl.EvaluationPool _evaluationPool;
static final java.util.Map _methodAccessCache;
static final java.util.Map _methodPermCache;
static final org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheSetMethod;
static final org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheGetMethod;
private static org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler _compiler;
private static final org.apache.ibatis.ognl.PrimitiveWrapperClasses primitiveWrapperClasses;
private static final org.apache.ibatis.ognl.NumericCasts numericCasts;
private static final org.apache.ibatis.ognl.NumericValues numericValues;
private static final org.apache.ibatis.ognl.NumericLiterals numericLiterals;
private static final org.apache.ibatis.ognl.NumericDefaults numericDefaults;
private static final java.lang.Class[] EMPTY_CLASS_ARRAY;
public static final org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport NoArgsReport;
public void <init>()
{
org.apache.ibatis.ognl.OgnlRuntime v;
v := @this: org.apache.ibatis.ognl.OgnlRuntime;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public static void clearCache()
{
org.apache.ibatis.ognl.OgnlCache v;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: void clear()>();
return;
}
public static void clearAdditionalCache()
{
org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache v, v;
org.apache.ibatis.ognl.OgnlCache v;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheSetMethod>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: void clear()>();
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheGetMethod>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: void clear()>();
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: void clear()>();
return;
}
public static int getMajorJavaVersion()
{
int v;
v = <org.apache.ibatis.ognl.OgnlRuntime: int _majorJavaVersion>;
return v;
}
public static boolean isJdk9Plus()
{
boolean v;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _jdk9Plus>;
return v;
}
public static java.lang.String getNumericValueGetter(java.lang.Class)
{
java.lang.Class v;
java.lang.String v;
org.apache.ibatis.ognl.NumericValues v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.NumericValues numericValues>;
v = virtualinvoke v.<org.apache.ibatis.ognl.NumericValues: java.lang.String get(java.lang.Class)>(v);
return v;
}
public static java.lang.Class getPrimitiveWrapperClass(java.lang.Class)
{
org.apache.ibatis.ognl.PrimitiveWrapperClasses v;
java.lang.Class v, v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PrimitiveWrapperClasses primitiveWrapperClasses>;
v = virtualinvoke v.<org.apache.ibatis.ognl.PrimitiveWrapperClasses: java.lang.Class get(java.lang.Class)>(v);
return v;
}
public static java.lang.String getNumericCast(java.lang.Class)
{
java.lang.Class v;
java.lang.String v;
org.apache.ibatis.ognl.NumericCasts v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.NumericCasts numericCasts>;
v = virtualinvoke v.<org.apache.ibatis.ognl.NumericCasts: java.lang.String get(java.lang.Class)>(v);
return v;
}
public static java.lang.String getNumericLiteral(java.lang.Class)
{
java.lang.Class v;
org.apache.ibatis.ognl.NumericLiterals v;
java.lang.String v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.NumericLiterals numericLiterals>;
v = virtualinvoke v.<org.apache.ibatis.ognl.NumericLiterals: java.lang.String get(java.lang.Class)>(v);
return v;
}
public static void setCompiler(org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler)
{
org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler v;
v := @parameter: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler;
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler _compiler> = v;
return;
}
public static org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()
{
org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler v;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler _compiler>;
return v;
}
public static void compileExpression(org.apache.ibatis.ognl.OgnlContext, org.apache.ibatis.ognl.Node, java.lang.Object) throws java.lang.Exception
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.Node v;
java.lang.Object v;
org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: org.apache.ibatis.ognl.Node;
v := @parameter: java.lang.Object;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler _compiler>;
interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: void compileExpression(org.apache.ibatis.ognl.OgnlContext,org.apache.ibatis.ognl.Node,java.lang.Object)>(v, v, v);
return;
}
public static java.lang.Class getTargetClass(java.lang.Object)
{
java.lang.Object v;
boolean v;
v := @parameter: java.lang.Object;
if v == null goto label;
v = v instanceof java.lang.Class;
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
return v;
}
public static java.lang.String getBaseName(java.lang.Object)
{
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
v := @parameter: java.lang.Object;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getClassBaseName(java.lang.Class)>(v);
label:
return v;
}
public static java.lang.String getClassBaseName(java.lang.Class)
{
int v, v;
java.lang.Class v;
java.lang.String v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(46);
v = v + 1;
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(v);
return v;
}
public static java.lang.String getClassName(java.lang.Object, boolean)
{
java.lang.Object v;
java.lang.String v;
boolean v, v;
v := @parameter: java.lang.Object;
v := @parameter: boolean;
v = v instanceof java.lang.Class;
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getClassName(java.lang.Class,boolean)>(v, v);
return v;
}
public static java.lang.String getClassName(java.lang.Class, boolean)
{
java.lang.Class v;
java.lang.String v;
boolean v;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
goto label;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getClassBaseName(java.lang.Class)>(v);
label:
return v;
}
public static java.lang.String getPackageName(java.lang.Object)
{
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
v := @parameter: java.lang.Object;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getClassPackageName(java.lang.Class)>(v);
label:
return v;
}
public static java.lang.String getClassPackageName(java.lang.Class)
{
int v;
java.lang.Class v;
java.lang.String v, v;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: int lastIndexOf(int)>(46);
if v >= 0 goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
label:
return v;
}
public static java.lang.String getPointerString(int)
{
java.lang.Integer v;
java.util.Map v, v;
int v, v, v;
java.lang.Object v;
java.lang.StringBuilder v, v;
java.lang.String v, v, v, v;
v := @parameter: int;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = staticinvoke <java.lang.Integer: java.lang.String toHexString(int)>(v);
v = virtualinvoke v.<java.lang.String: int length()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map HEX_PADDING>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = v;
if v != null goto label;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = virtualinvoke v.<java.lang.String: int length()>();
label:
if v >= 8 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(48);
v = v + 1;
goto label;
label:
v = new java.lang.String;
specialinvoke v.<java.lang.String: void <init>(java.lang.StringBuilder)>(v);
v = v;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map HEX_PADDING>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = new java.lang.String;
specialinvoke v.<java.lang.String: void <init>(java.lang.StringBuilder)>(v);
return v;
}
public static java.lang.String getPointerString(java.lang.Object)
{
int v;
java.lang.Object v;
java.lang.String v;
v := @parameter: java.lang.Object;
if v != null goto label;
v = 0;
goto label;
label:
v = staticinvoke <java.lang.System: int identityHashCode(java.lang.Object)>(v);
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getPointerString(int)>(v);
return v;
}
public static java.lang.String getUniqueDescriptor(java.lang.Object, boolean)
{
java.lang.Class[] v;
java.lang.Class v, v;
java.lang.Object v;
java.lang.StringBuilder v;
java.lang.String v, v, v, v;
boolean v, v;
v := @parameter: java.lang.Object;
v := @parameter: boolean;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
if v == null goto label;
v = v instanceof java.lang.reflect.Proxy;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.Class[] getInterfaces()>();
v = v[0];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getClassName(java.lang.Class,boolean)>(v, v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(94);
v = staticinvoke <java.lang.reflect.Proxy: java.lang.reflect.InvocationHandler getInvocationHandler(java.lang.Object)>(v);
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getClassName(java.lang.Object,boolean)>(v, v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(64);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getPointerString(java.lang.Object)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("<null>");
label:
v = new java.lang.String;
specialinvoke v.<java.lang.String: void <init>(java.lang.StringBuilder)>(v);
return v;
}
public static java.lang.String getUniqueDescriptor(java.lang.Object)
{
java.lang.Object v;
java.lang.String v;
v := @parameter: java.lang.Object;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getUniqueDescriptor(java.lang.Object,boolean)>(v, 0);
return v;
}
public static java.lang.Class[] getParameterTypes(java.lang.reflect.Method) throws org.apache.ibatis.ognl.internal.CacheException
{
java.lang.Class[] v;
org.apache.ibatis.ognl.OgnlCache v;
java.lang.reflect.Method v;
v := @parameter: java.lang.reflect.Method;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.lang.Class[] getMethodParameterTypes(java.lang.reflect.Method)>(v);
return v;
}
public static java.lang.Class[] findParameterTypes(java.lang.Class, java.lang.reflect.Method)
{
org.apache.ibatis.ognl.internal.entry.GenericMethodParameterTypeCacheEntry v;
java.lang.Class[] v, v;
org.apache.ibatis.ognl.OgnlCache v;
java.lang.reflect.Type v, v;
java.lang.Class v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.reflect.Method;
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Type getGenericSuperclass()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Type getGenericSuperclass()>();
v = v instanceof java.lang.reflect.ParameterizedType;
if v != 0 goto label;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] getParameterTypes(java.lang.reflect.Method)>(v);
return v;
label:
v = new org.apache.ibatis.ognl.internal.entry.GenericMethodParameterTypeCacheEntry;
specialinvoke v.<org.apache.ibatis.ognl.internal.entry.GenericMethodParameterTypeCacheEntry: void <init>(java.lang.reflect.Method,java.lang.Class)>(v, v);
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.lang.Class[] getGenericMethodParameterTypes(org.apache.ibatis.ognl.internal.entry.GenericMethodParameterTypeCacheEntry)>(v);
return v;
}
public static java.lang.Class[] getParameterTypes(java.lang.reflect.Constructor) throws org.apache.ibatis.ognl.internal.CacheException
{
java.lang.Class[] v;
org.apache.ibatis.ognl.OgnlCache v;
java.lang.reflect.Constructor v;
v := @parameter: java.lang.reflect.Constructor;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.lang.Class[] getParameterTypes(java.lang.reflect.Constructor)>(v);
return v;
}
public static java.lang.SecurityManager getSecurityManager()
{
java.lang.SecurityManager v;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.SecurityManager securityManager>;
return v;
}
public static void setSecurityManager(java.lang.SecurityManager)
{
java.lang.SecurityManager v;
v := @parameter: java.lang.SecurityManager;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.SecurityManager securityManager> = v;
return;
}
public static java.security.Permission getPermission(java.lang.reflect.Method) throws org.apache.ibatis.ognl.internal.CacheException
{
org.apache.ibatis.ognl.OgnlCache v;
java.security.Permission v;
org.apache.ibatis.ognl.internal.entry.PermissionCacheEntry v;
java.lang.reflect.Method v;
v := @parameter: java.lang.reflect.Method;
v = new org.apache.ibatis.ognl.internal.entry.PermissionCacheEntry;
specialinvoke v.<org.apache.ibatis.ognl.internal.entry.PermissionCacheEntry: void <init>(java.lang.reflect.Method)>(v);
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.security.Permission getInvokePermission(org.apache.ibatis.ognl.internal.entry.PermissionCacheEntry)>(v);
return v;
}
public static java.lang.Object invokeMethod(java.lang.Object, java.lang.reflect.Method, java.lang.Object[]) throws java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException
{
java.util.Map v, v, v, v, v, v, v, v;
java.security.Permission v, v, v;
java.lang.Throwable v, v, v;
java.lang.Object[] v;
java.lang.String v, v, v, v;
java.lang.SecurityException v, v, v;
java.lang.reflect.Method v, v, v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.IllegalAccessException v, v, v, v;
int v, v;
java.lang.Boolean v, v, v;
org.apache.ibatis.ognl.AccessibleObjectHandler v, v, v;
java.lang.SecurityManager v, v, v, v;
java.lang.Class v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v, v, v;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.reflect.Method;
v := @parameter: java.lang.Object[];
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _useStricterInvocation>;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_REF>;
if v == null goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_REF>;
v = virtualinvoke v.<java.lang.reflect.Method: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_ARR_REF>;
if v == null goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_ARR_REF>;
v = virtualinvoke v.<java.lang.reflect.Method: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_EXIT_REF>;
if v == null goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_EXIT_REF>;
v = virtualinvoke v.<java.lang.reflect.Method: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_CONSOLE_REF>;
if v == null goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_CONSOLE_REF>;
v = virtualinvoke v.<java.lang.reflect.Method: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
label:
v = class "Lorg/apache/ibatis/ognl/AccessibleObjectHandler;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Lorg/apache/ibatis/ognl/ClassResolver;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Lorg/apache/ibatis/ognl/MethodAccessor;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Lorg/apache/ibatis/ognl/MemberAccess;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Lorg/apache/ibatis/ognl/OgnlContext;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Ljava/lang/Runtime;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Ljava/lang/ClassLoader;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Ljava/lang/ProcessBuilder;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.AccessibleObjectHandlerJDK9Plus: boolean unsafeOrDescendant(java.lang.Class)>(v);
if v == 0 goto label;
label:
v = new java.lang.IllegalAccessException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.Method)>(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[])>("Method [\u] cannot be called from within OGNL invokeMethod() under stricter invocation mode.");
specialinvoke v.<java.lang.IllegalAccessException: void <init>(java.lang.String)>(v);
throw v;
label:
entermonitor v;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodAccessCache>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v != 0 goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: boolean isAccessible()>();
if v != 0 goto label;
v = <java.lang.Boolean: java.lang.Boolean TRUE>;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodAccessCache>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = <java.lang.Boolean: java.lang.Boolean FALSE>;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodAccessCache>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = <java.lang.Boolean: java.lang.Boolean FALSE>;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodAccessCache>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = <java.lang.Boolean: java.lang.Boolean TRUE>;
v = virtualinvoke v.<java.lang.Boolean: boolean equals(java.lang.Object)>(v);
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodPermCache>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.SecurityManager securityManager>;
if v == null goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.SecurityManager securityManager>;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.security.Permission getPermission(java.lang.reflect.Method)>(v);
virtualinvoke v.<java.lang.SecurityManager: void checkPermission(java.security.Permission)>(v);
v = <java.lang.Boolean: java.lang.Boolean TRUE>;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodPermCache>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = <java.lang.Boolean: java.lang.Boolean FALSE>;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodPermCache>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = new java.lang.IllegalAccessException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.Method)>(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[])>("Method [\u] cannot be accessed.");
specialinvoke v.<java.lang.IllegalAccessException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <java.lang.Boolean: java.lang.Boolean TRUE>;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodPermCache>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = <java.lang.Boolean: java.lang.Boolean FALSE>;
v = virtualinvoke v.<java.lang.Boolean: boolean equals(java.lang.Object)>(v);
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
if v == 0 goto label;
entermonitor v;
label:
if v == 0 goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.SecurityManager securityManager>;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.security.Permission getPermission(java.lang.reflect.Method)>(v);
virtualinvoke v.<java.lang.SecurityManager: void checkPermission(java.security.Permission)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalAccessException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.Method)>(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[])>("Method [\u] cannot be accessed.");
specialinvoke v.<java.lang.IllegalAccessException: void <init>(java.lang.String)>(v);
throw v;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.AccessibleObjectHandler _accessibleObjectHandler>;
interfaceinvoke v.<org.apache.ibatis.ognl.AccessibleObjectHandler: void setAccessible(java.lang.reflect.AccessibleObject,boolean)>(v, 1);
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object invokeMethodInsideSandbox(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])>(v, v, v);
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.AccessibleObjectHandler _accessibleObjectHandler>;
interfaceinvoke v.<org.apache.ibatis.ognl.AccessibleObjectHandler: void setAccessible(java.lang.reflect.AccessibleObject,boolean)>(v, 0);
goto label;
label:
v := @caughtexception;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.AccessibleObjectHandler _accessibleObjectHandler>;
interfaceinvoke v.<org.apache.ibatis.ognl.AccessibleObjectHandler: void setAccessible(java.lang.reflect.AccessibleObject,boolean)>(v, 0);
throw v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
if v == 0 goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.SecurityManager securityManager>;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.security.Permission getPermission(java.lang.reflect.Method)>(v);
virtualinvoke v.<java.lang.SecurityManager: void checkPermission(java.security.Permission)>(v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalAccessException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.Method)>(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[])>("Method [\u] cannot be accessed.");
specialinvoke v.<java.lang.IllegalAccessException: void <init>(java.lang.String)>(v);
throw v;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object invokeMethodInsideSandbox(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])>(v, v, v);
label:
return v;
catch java.lang.SecurityException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.SecurityException from label to label with label;
}
private static java.lang.Object invokeMethodInsideSandbox(java.lang.Object, java.lang.reflect.Method, java.lang.Object[]) throws java.lang.reflect.InvocationTargetException, java.lang.IllegalAccessException
{
java.security.AccessControlContext v;
org.apache.ibatis.ognl.security.UserMethod v;
java.lang.NoSuchMethodException v, v, v;
java.lang.SecurityException v;
java.lang.reflect.Method v, v, v, v;
boolean v, v, v;
java.lang.IllegalAccessException v;
java.lang.Exception v, v;
java.lang.reflect.InvocationTargetException v, v, v, v;
java.lang.Throwable v;
java.lang.Object[] v, v, v, v;
java.lang.String v;
java.security.Permissions v;
java.security.PrivilegedActionException v;
java.lang.Class[] v, v, v;
java.security.ProtectionDomain[] v;
java.security.ProtectionDomain v;
java.lang.Class v, v, v, v, v, v, v;
java.lang.Object v, v, v, v, v, v, v;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.reflect.Method;
v := @parameter: java.lang.Object[];
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _disableOgnlSecurityManagerOnInit>;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Object invoke(java.lang.Object,java.lang.Object[])>(v, v);
return v;
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("org.apache.ibatis.ognl.security.manager");
if v != null goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Object invoke(java.lang.Object,java.lang.Object[])>(v, v);
label:
return v;
label:
v := @caughtexception;
label:
v = class "Ljava/lang/ClassLoader;";
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = new java.lang.IllegalAccessException;
specialinvoke v.<java.lang.IllegalAccessException: void <init>(java.lang.String)>("OGNL direct access to class loader denied!");
throw v;
label:
v = new org.apache.ibatis.ognl.security.UserMethod;
specialinvoke v.<org.apache.ibatis.ognl.security.UserMethod: void <init>(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])>(v, v, v);
v = new java.security.Permissions;
specialinvoke v.<java.security.Permissions: void <init>()>();
v = new java.security.ProtectionDomain;
specialinvoke v.<java.security.ProtectionDomain: void <init>(java.security.CodeSource,java.security.PermissionCollection)>(null, v);
v = new java.security.AccessControlContext;
v = newarray (java.security.ProtectionDomain)[1];
v[0] = v;
specialinvoke v.<java.security.AccessControlContext: void <init>(java.security.ProtectionDomain[])>(v);
v = staticinvoke <org.apache.ibatis.ognl.security.OgnlSecurityManagerFactory: java.lang.Object getOgnlSecurityManager()>();
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = newarray (java.lang.Class)[0];
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>("enter", v);
v = newarray (java.lang.Object)[0];
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Object invoke(java.lang.Object,java.lang.Object[])>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.reflect.InvocationTargetException;
specialinvoke v.<java.lang.reflect.InvocationTargetException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
if v != null goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Object invoke(java.lang.Object,java.lang.Object[])>(v, v);
return v;
label:
v = staticinvoke <java.security.AccessController: java.lang.Object doPrivileged(java.security.PrivilegedExceptionAction,java.security.AccessControlContext)>(v, v);
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = newarray (java.lang.Class)[1];
v = <java.lang.Long: java.lang.Class TYPE>;
v[0] = v;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>("leave", v);
v = newarray (java.lang.Object)[1];
v[0] = v;
virtualinvoke v.<java.lang.reflect.Method: java.lang.Object invoke(java.lang.Object,java.lang.Object[])>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.reflect.InvocationTargetException;
specialinvoke v.<java.lang.reflect.InvocationTargetException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<java.security.PrivilegedActionException: java.lang.Exception getException()>();
v = v instanceof java.lang.reflect.InvocationTargetException;
if v == 0 goto label;
v = virtualinvoke v.<java.security.PrivilegedActionException: java.lang.Exception getException()>();
throw v;
label:
v = new java.lang.reflect.InvocationTargetException;
specialinvoke v.<java.lang.reflect.InvocationTargetException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
v := @caughtexception;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = newarray (java.lang.Class)[1];
v = <java.lang.Long: java.lang.Class TYPE>;
v[0] = v;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>("leave", v);
v = newarray (java.lang.Object)[1];
v[0] = v;
virtualinvoke v.<java.lang.reflect.Method: java.lang.Object invoke(java.lang.Object,java.lang.Object[])>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.reflect.InvocationTargetException;
specialinvoke v.<java.lang.reflect.InvocationTargetException: void <init>(java.lang.Throwable)>(v);
throw v;
label:
throw v;
catch java.lang.SecurityException from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.security.PrivilegedActionException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
}
public static java.lang.Class getArgClass(java.lang.Object)
{
java.lang.Class v, v, v, v, v, v, v, v, v, v;
java.lang.Object v;
v := @parameter: java.lang.Object;
if v != null goto label;
return null;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if v != class "Ljava/lang/Boolean;" goto label;
v = <java.lang.Boolean: java.lang.Class TYPE>;
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
if v != class "Ljava/lang/Number;" goto label;
if v != class "Ljava/lang/Integer;" goto label;
v = <java.lang.Integer: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Double;" goto label;
v = <java.lang.Double: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Byte;" goto label;
v = <java.lang.Byte: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Long;" goto label;
v = <java.lang.Long: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Float;" goto label;
v = <java.lang.Float: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Short;" goto label;
v = <java.lang.Short: java.lang.Class TYPE>;
return v;
label:
if v != class "Ljava/lang/Character;" goto label;
v = <java.lang.Character: java.lang.Class TYPE>;
return v;
label:
return v;
}
public static java.lang.Class[] getArgClasses(java.lang.Object[])
{
java.lang.Object[] v;
int v, v, v;
java.lang.Class[] v;
java.lang.Class v;
java.lang.Object v;
v := @parameter: java.lang.Object[];
if v != null goto label;
return null;
label:
v = lengthof v;
v = newarray (java.lang.Class)[v];
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getArgClass(java.lang.Object)>(v);
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
public static boolean isTypeCompatible(java.lang.Object, java.lang.Class)
{
org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport v;
boolean[] v, v;
java.lang.Class v, v;
java.lang.Object v;
boolean v, v, v;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
if v != null goto label;
return 1;
label:
v = new org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport;
v = newarray (boolean)[1];
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: void <init>(int,boolean[])>(0, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getArgClass(java.lang.Object)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isTypeCompatible(java.lang.Class,java.lang.Class,int,org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport)>(v, v, 0, v);
if v != 0 goto label;
return 0;
label:
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: boolean[] conversionNeeded>;
v = v[0];
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean isTypeCompatible(java.lang.Class, java.lang.Class, int, org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport)
{
boolean v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
boolean[] v, v, v;
org.apache.ibatis.ognl.PrimitiveWrapperClasses v;
java.lang.Class v, v, v, v, v, v, v, v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.Class;
v := @parameter: int;
v := @parameter: org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport;
if v != null goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 500;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
if v != v goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 25;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
v = class "Ljava/util/Collection;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
if v != class "Ljava/lang/Object;" goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: boolean[] conversionNeeded>;
v[v] = 1;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 30;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
return 0;
label:
v = class "Ljava/util/Collection;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: boolean[] conversionNeeded>;
v[v] = 1;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 50;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
v = class "Ljava/util/Collection;";
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 2;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: boolean[] conversionNeeded>;
v[v] = 1;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 50;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 40;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PrimitiveWrapperClasses primitiveWrapperClasses>;
v = virtualinvoke v.<org.apache.ibatis.ognl.PrimitiveWrapperClasses: java.lang.Class get(java.lang.Class)>(v);
if v != v goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 2;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = v + 10;
v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score> = v;
return 1;
label:
return 0;
}
public static boolean areArgsCompatible(java.lang.Object[], java.lang.Class[])
{
java.lang.Object[] v;
org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport v;
boolean[] v;
java.lang.Class[] v, v;
int v, v;
boolean v;
v := @parameter: java.lang.Object[];
v := @parameter: java.lang.Class[];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] getArgClasses(java.lang.Object[])>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport areArgsCompatible(java.lang.Class[],java.lang.Class[],java.lang.reflect.Method)>(v, v, null);
if v != null goto label;
return 0;
label:
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: boolean[] conversionNeeded>;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v == 0 goto label;
return 0;
label:
v = v + 1;
goto label;
label:
return 1;
}
public static org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport areArgsCompatible(java.lang.Class[], java.lang.Class[], java.lang.reflect.Method)
{
java.lang.reflect.Method v;
boolean v, v, v, v, v, v;
org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
boolean[] v, v;
java.lang.Class[] v, v;
java.lang.Class v, v, v, v, v, v, v;
v := @parameter: java.lang.Class[];
v := @parameter: java.lang.Class[];
v := @parameter: java.lang.reflect.Method;
if v == null goto label;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
if v == null goto label;
v = lengthof v;
if v != 0 goto label;
label:
if v == null goto label;
v = lengthof v;
if v != 0 goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport NoArgsReport>;
return v;
label:
if v == 0 goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport NoArgsReport>;
return v;
label:
return null;
label:
v = lengthof v;
v = lengthof v;
if v == v goto label;
if v != 0 goto label;
return null;
label:
if v == 0 goto label;
v = new org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport;
v = lengthof v;
v = newarray (boolean)[v];
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: void <init>(int,boolean[])>(1000, v);
v = lengthof v;
v = v - 1;
v = lengthof v;
if v <= v goto label;
return null;
label:
v = 0;
v = lengthof v;
v = v - 1;
label:
if v >= v goto label;
v = v[v];
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isTypeCompatible(java.lang.Class,java.lang.Class,int,org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport)>(v, v, v, v);
if v != 0 goto label;
return null;
label:
v = v + 1;
goto label;
label:
v = lengthof v;
v = v - 1;
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = lengthof v;
v = v - 1;
v = lengthof v;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isTypeCompatible(java.lang.Class,java.lang.Class,int,org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport)>(v, v, v, v);
if v != 0 goto label;
return null;
label:
v = v + 1;
goto label;
label:
return v;
label:
v = new org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport;
v = lengthof v;
v = newarray (boolean)[v];
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: void <init>(int,boolean[])>(0, v);
v = 0;
v = lengthof v;
label:
if v >= v goto label;
v = v[v];
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isTypeCompatible(java.lang.Class,java.lang.Class,int,org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport)>(v, v, v, v);
if v != 0 goto label;
return null;
label:
v = v + 1;
goto label;
label:
return v;
}
public static boolean isMoreSpecific(java.lang.Class[], java.lang.Class[])
{
java.lang.Class[] v, v;
int v, v;
java.lang.Class v, v;
boolean v, v, v;
v := @parameter: java.lang.Class[];
v := @parameter: java.lang.Class[];
v = 0;
v = lengthof v;
label:
if v >= v goto label;
v = v[v];
v = v[v];
if v == v goto label;
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
return 0;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
return 1;
label:
v = v + 1;
goto label;
label:
return 0;
}
public static java.lang.String getModifierString(int)
{
int v;
java.lang.String v;
boolean v, v, v, v, v, v, v, v;
v := @parameter: int;
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
v = "public";
goto label;
label:
v = staticinvoke <java.lang.reflect.Modifier: boolean isProtected(int)>(v);
if v == 0 goto label;
v = "protected";
goto label;
label:
v = staticinvoke <java.lang.reflect.Modifier: boolean isPrivate(int)>(v);
if v == 0 goto label;
v = "private";
goto label;
label:
v = "";
label:
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v == 0 goto label;
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[])>("static \u0001");
label:
v = staticinvoke <java.lang.reflect.Modifier: boolean isFinal(int)>(v);
if v == 0 goto label;
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[])>("final \u0001");
label:
v = staticinvoke <java.lang.reflect.Modifier: boolean isNative(int)>(v);
if v == 0 goto label;
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[])>("native \u0001");
label:
v = staticinvoke <java.lang.reflect.Modifier: boolean isSynchronized(int)>(v);
if v == 0 goto label;
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[])>("synchronized \u0001");
label:
v = staticinvoke <java.lang.reflect.Modifier: boolean isTransient(int)>(v);
if v == 0 goto label;
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[])>("transient \u0001");
label:
return v;
}
public static java.lang.Class classForName(org.apache.ibatis.ognl.OgnlContext, java.lang.String) throws java.lang.ClassNotFoundException
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.ClassResolver v, v;
org.apache.ibatis.ognl.DefaultClassResolver v;
java.lang.Class v;
java.lang.ClassNotFoundException v;
java.lang.String v, v;
org.apache.ibatis.ognl.PrimitiveTypes v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.String;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PrimitiveTypes primitiveTypes>;
v = virtualinvoke v.<org.apache.ibatis.ognl.PrimitiveTypes: java.lang.Class get(java.lang.String)>(v);
if v != null goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.ClassResolver getClassResolver()>();
v = v;
if v != null goto label;
label:
v = new org.apache.ibatis.ognl.DefaultClassResolver;
specialinvoke v.<org.apache.ibatis.ognl.DefaultClassResolver: void <init>()>();
v = v;
label:
v = interfaceinvoke v.<org.apache.ibatis.ognl.ClassResolver: java.lang.Class classForName(java.lang.String,org.apache.ibatis.ognl.OgnlContext)>(v, v);
if v != null goto label;
v = new java.lang.ClassNotFoundException;
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[])>("Unable to resolve class: \u0001");
specialinvoke v.<java.lang.ClassNotFoundException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
}
public static boolean isInstance(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.OgnlException v;
java.lang.Class v;
java.lang.ClassNotFoundException v;
java.lang.Object v;
java.lang.String v, v;
boolean v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class classForName(org.apache.ibatis.ognl.OgnlContext,java.lang.String)>(v, v);
v = virtualinvoke v.<java.lang.Class: boolean isInstance(java.lang.Object)>(v);
label:
return v;
label:
v := @caughtexception;
v = new org.apache.ibatis.ognl.OgnlException;
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[])>("No such class: \u0001");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
catch java.lang.ClassNotFoundException from label to label with label;
}
public static java.lang.Object getPrimitiveDefaultValue(java.lang.Class)
{
java.lang.Class v;
java.lang.Object v;
org.apache.ibatis.ognl.PrimitiveDefaults v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PrimitiveDefaults primitiveDefaults>;
v = virtualinvoke v.<org.apache.ibatis.ognl.PrimitiveDefaults: java.lang.Object get(java.lang.Class)>(v);
return v;
}
public static java.lang.Object getNumericDefaultValue(java.lang.Class)
{
java.lang.Class v;
java.lang.Object v;
org.apache.ibatis.ognl.NumericDefaults v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.NumericDefaults numericDefaults>;
v = virtualinvoke v.<org.apache.ibatis.ognl.NumericDefaults: java.lang.Object get(java.lang.Class)>(v);
return v;
}
public static java.lang.Object getConvertedType(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.reflect.Member, java.lang.String, java.lang.Object, java.lang.Class)
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.reflect.Member v;
org.apache.ibatis.ognl.TypeConverter v;
java.lang.Class v;
java.lang.Object v, v, v;
java.lang.String v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.reflect.Member;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.TypeConverter getTypeConverter()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.TypeConverter: java.lang.Object convertValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object,java.lang.Class)>(v, v, v, v, v, v);
return v;
}
public static boolean getConvertedTypes(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.reflect.Member, java.lang.String, java.lang.Class[], java.lang.Object[], java.lang.Object[])
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v, v;
int v, v, v, v, v;
java.lang.String v;
boolean v, v;
java.lang.reflect.Member v;
java.lang.Class[] v;
java.lang.Class v;
java.lang.Object v, v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.reflect.Member;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class[];
v := @parameter: java.lang.Object[];
v := @parameter: java.lang.Object[];
v = 0;
v = lengthof v;
v = lengthof v;
if v != v goto label;
v = 1;
v = 0;
v = lengthof v;
v = v - 1;
label:
if v == 0 goto label;
if v > v goto label;
v = v[v];
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isTypeCompatible(java.lang.Object,java.lang.Class)>(v, v);
if v == 0 goto label;
v[v] = v;
goto label;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object getConvertedType(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object,java.lang.Class)>(v, v, v, v, v, v);
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object NoConversionPossible>;
if v != v goto label;
v = 0;
goto label;
label:
v[v] = v;
label:
v = v + 1;
goto label;
label:
return v;
}
public static java.lang.reflect.Constructor getConvertedConstructorAndArgs(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.util.List, java.lang.Object[], java.lang.Object[])
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v, v;
java.lang.Class[] v;
java.lang.reflect.Constructor v;
java.util.List v;
org.apache.ibatis.ognl.TypeConverter v;
int v, v;
java.lang.Object v, v;
boolean v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.util.List;
v := @parameter: java.lang.Object[];
v := @parameter: java.lang.Object[];
v = null;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.TypeConverter getTypeConverter()>();
if v == null goto label;
if v == null goto label;
v = 0;
v = interfaceinvoke v.<java.util.List: int size()>();
label:
if v != null goto label;
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] getParameterTypes(java.lang.reflect.Constructor)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean getConvertedTypes(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Class[],java.lang.Object[],java.lang.Object[])>(v, v, v, null, v, v, v);
if v == 0 goto label;
v = v;
label:
v = v + 1;
goto label;
label:
return v;
}
public static java.lang.reflect.Method getAppropriateMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Object, java.lang.String, java.lang.String, java.util.List, java.lang.Object[], java.lang.Object[])
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v, v;
org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport v;
org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod v;
int v, v, v, v;
java.lang.String v, v;
java.lang.reflect.Method v;
boolean v, v, v;
boolean[] v;
java.lang.Class[] v, v;
java.util.List v;
java.lang.Class v, v;
java.lang.Object v, v, v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: java.lang.Object[];
v := @parameter: java.lang.Object[];
v = null;
if v == null goto label;
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
goto label;
label:
v = null;
label:
if v != null goto label;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] getArgClasses(java.lang.Object[])>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod findBestMethod(java.util.List,java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, v, v);
if v == null goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.Class[] mParameterTypes>;
v = lengthof v;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = lengthof v;
if v <= 0 goto label;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport report>;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: boolean[] conversionNeeded>;
v = v[v];
if v != 0 goto label;
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
v = v[v];
if v != null goto label;
label:
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object getConvertedType(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object,java.lang.Class)>(v, v, v, v, v, v);
v[v] = v;
label:
v = v + 1;
goto label;
label:
if v != null goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getConvertedMethodAndArgs(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,java.util.List,java.lang.Object[],java.lang.Object[])>(v, v, v, v, v, v);
label:
return v;
}
public static java.lang.reflect.Method getConvertedMethodAndArgs(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, java.util.List, java.lang.Object[], java.lang.Object[])
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v, v;
java.lang.Class[] v;
java.util.List v;
org.apache.ibatis.ognl.TypeConverter v;
int v, v;
java.lang.Class v;
java.lang.Object v, v;
java.lang.String v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: java.lang.Object[];
v := @parameter: java.lang.Object[];
v = null;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.TypeConverter getTypeConverter()>();
if v == null goto label;
if v == null goto label;
v = 0;
v = interfaceinvoke v.<java.util.List: int size()>();
label:
if v != null goto label;
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
goto label;
label:
v = null;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] findParameterTypes(java.lang.Class,java.lang.reflect.Method)>(v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean getConvertedTypes(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Class[],java.lang.Object[],java.lang.Object[])>(v, v, v, v, v, v, v);
if v == 0 goto label;
v = v;
label:
v = v + 1;
goto label;
label:
return v;
}
private static org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod findBestMethod(java.util.List, java.lang.Class, java.lang.String, java.lang.Class[])
{
java.lang.String v, v, v, v, v, v, v, v, v, v;
java.lang.Class[] v, v, v, v, v;
org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod v, v, v, v, v;
java.lang.reflect.Method v, v, v, v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.List v;
org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport v;
int v, v, v, v, v, v, v, v, v, v, v;
java.io.PrintStream v, v;
java.util.Iterator v;
java.lang.IllegalArgumentException v, v, v;
java.lang.Class v, v, v, v, v, v;
java.lang.Object v;
v := @parameter: java.util.List;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class[];
v = null;
v = null;
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 = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] findParameterTypes(java.lang.Class,java.lang.reflect.Method)>(v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport areArgsCompatible(java.lang.Class[],java.lang.Class[],java.lang.reflect.Method)>(v, v, v);
if v == null goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: int score>;
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
v = v + 200;
goto label;
label:
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>(v);
if v == 0 goto label;
v = v + 500;
goto label;
label:
v = v + 5000;
label:
if v == null goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: int score>;
if v <= v goto label;
label:
v = new org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod;
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: void <init>(java.lang.reflect.Method,int,org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport,java.lang.Class[])>(v, v, v, v);
v = v;
v = null;
goto label;
label:
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: int score>;
if v != v goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = staticinvoke <java.util.Arrays: boolean equals(java.lang.Object[],java.lang.Object[])>(v, v);
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
v = new org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod;
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: void <init>(java.lang.reflect.Method,int,org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport,java.lang.Class[])>(v, v, v, v);
v = v;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v != 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v != 0 goto label;
v = new org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod;
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: void <init>(java.lang.reflect.Method,int,org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport,java.lang.Class[])>(v, v, v, v);
v = v;
v = null;
goto label;
label:
v = <java.lang.System: java.io.PrintStream err>;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,java.lang.reflect.Method,java.lang.reflect.Method)>(v, v, 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[])>("Two vararg methods with same score(\u): \"\u0001\" and \"\u0001\" please report!");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
goto label;
label:
v = 0;
v = 0;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.Class[] mParameterTypes>;
v = v[v];
v = v[v];
if v != null goto label;
if v == v goto label;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v + 1000;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v + 1000;
goto label;
label:
v = new java.lang.IllegalArgumentException;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.Method,java.lang.reflect.Method)>(v, 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[])>("Can\'t decide wich method to use: \"\u0001\" or \"\u0001\"");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
v = v;
goto label;
label:
if v == v goto label;
if v != v goto label;
v = v + 100;
goto label;
label:
if v != v goto label;
v = v + 100;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v + 50;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v + 50;
goto label;
label:
v = new java.lang.IllegalArgumentException;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.reflect.Method,java.lang.reflect.Method)>(v, 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[])>("Can\'t decide wich method to use: \"\u0001\" or \"\u0001\"");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
v = v;
label:
v = v + 1;
goto label;
label:
if v != v goto label;
if v != null goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isAbstract(int)>(v);
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isAbstract(int)>(v);
if v != v goto label;
v = <java.lang.System: java.io.PrintStream err>;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,java.lang.reflect.Method,java.lang.reflect.Method)>(v, v, 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[])>("Two methods with same score(\u): \"\u0001\" and \"\u0001\" please report!");
virtualinvoke v.<java.io.PrintStream: void println(java.lang.String)>(v);
goto label;
label:
if v <= v goto label;
v = new org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod;
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: void <init>(java.lang.reflect.Method,int,org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport,java.lang.Class[])>(v, v, v, v);
v = v;
v = null;
goto label;
label:
if v == null goto label;
throw v;
label:
return v;
}
public static java.lang.Object callAppropriateMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Object, java.lang.String, java.lang.String, java.util.List, java.lang.Object[]) throws org.apache.ibatis.ognl.MethodFailedException
{
java.lang.NoSuchMethodException v;
org.apache.ibatis.ognl.MethodFailedException v;
java.lang.reflect.Method v;
boolean v, v, v, v;
java.lang.reflect.InvocationTargetException v;
java.util.List v;
java.lang.StringBuilder v;
java.lang.Throwable v;
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v, v, v, v;
java.lang.ReflectiveOperationException v;
java.util.ArrayList v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v;
java.lang.Class[] v;
java.lang.Class v, v, v, v, v, v, v;
java.lang.Object v, v, v, v, v, v, v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v := @parameter: java.lang.Object[];
v = lengthof v;
v = newarray (java.lang.Object)[v];
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getAppropriateMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object,java.lang.String,java.lang.String,java.util.List,java.lang.Object[],java.lang.Object[])>(v, v, v, v, v, v, v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isMethodAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Method,java.lang.String)>(v, v, v, v);
if v != 0 goto label;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = "";
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: 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[])>("\u.");
label:
v = 0;
v = lengthof v;
v = v - 1;
label:
if v > v goto label;
v = v[v];
if v != null goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String NULL_STRING>;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
if v >= v goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", ");
label:
v = v + 1;
goto label;
label:
v = new java.lang.NoSuchMethodException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.StringBuilder)>(v, v, 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\u0001(\u)");
specialinvoke v.<java.lang.NoSuchMethodException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = v + 1;
v = newarray (java.lang.Object)[v];
v = lengthof v;
if v <= 0 goto label;
v = lengthof v;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
label:
v = lengthof v;
if v <= v goto label;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = v;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
if v == null goto label;
v = v[v];
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
v = lengthof v;
if v != 1 goto label;
v = v[0];
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <java.lang.reflect.Array: java.lang.Object newInstance(java.lang.Class,int)>(v, 1);
goto label;
label:
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = interfaceinvoke v.<java.util.List: int size()>();
staticinvoke <java.lang.reflect.Array: java.lang.Object newInstance(java.lang.Class,int)>(v, v);
label:
v = interfaceinvoke v.<java.util.List: java.lang.Object[] toArray()>();
v = lengthof v;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
goto label;
label:
v = newarray (java.lang.Object)[0];
label:
v = lengthof v;
if v != 1 goto label;
v = v[0];
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = v;
goto label;
label:
v[v] = v;
goto label;
label:
v = v + 1;
goto label;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object invokeMethod(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])>(v, v, v);
label:
return v;
label:
v := @caughtexception;
v = v;
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<java.lang.reflect.InvocationTargetException: java.lang.Throwable getTargetException()>();
label:
v = new org.apache.ibatis.ognl.MethodFailedException;
specialinvoke v.<org.apache.ibatis.ognl.MethodFailedException: void <init>(java.lang.Object,java.lang.String,java.lang.Throwable)>(v, v, v);
throw v;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
catch java.lang.reflect.InvocationTargetException from label to label with label;
}
public static java.lang.Object callStaticMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.String, java.lang.String, java.lang.Object[]) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v;
org.apache.ibatis.ognl.MethodAccessor v;
org.apache.ibatis.ognl.MethodFailedException v;
java.lang.Class v;
java.lang.ClassNotFoundException v;
java.lang.Object v;
java.lang.String v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object[];
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class classForName(org.apache.ibatis.ognl.OgnlContext,java.lang.String)>(v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.MethodAccessor getMethodAccessor(java.lang.Class)>(v);
v = interfaceinvoke v.<org.apache.ibatis.ognl.MethodAccessor: java.lang.Object callStaticMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Class,java.lang.String,java.lang.Object[])>(v, v, v, v);
label:
return v;
label:
v := @caughtexception;
v = new org.apache.ibatis.ognl.MethodFailedException;
specialinvoke v.<org.apache.ibatis.ognl.MethodFailedException: void <init>(java.lang.Object,java.lang.String,java.lang.Throwable)>(v, v, v);
throw v;
catch java.lang.ClassNotFoundException from label to label with label;
}
public static java.lang.Object callMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, java.lang.String, java.lang.Object[]) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v;
java.lang.Object v, v;
java.lang.String v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object[];
if v != null goto label;
v = v;
goto label;
label:
v = v;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object callMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,java.lang.Object[])>(v, v, v, v);
return v;
}
public static java.lang.Object callMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, java.lang.Object[]) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v;
java.lang.NullPointerException v;
org.apache.ibatis.ognl.MethodAccessor v;
java.lang.Class v;
java.lang.Object v, v;
java.lang.String v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object[];
if v != null goto label;
v = new java.lang.NullPointerException;
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[])>("target is null for method \u0001");
specialinvoke v.<java.lang.NullPointerException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.MethodAccessor getMethodAccessor(java.lang.Class)>(v);
v = interfaceinvoke v.<org.apache.ibatis.ognl.MethodAccessor: java.lang.Object callMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,java.lang.Object[])>(v, v, v, v);
return v;
}
public static java.lang.Object callConstructor(org.apache.ibatis.ognl.OgnlContext, java.lang.String, java.lang.Object[]) throws org.apache.ibatis.ognl.OgnlException
{
java.lang.Throwable v;
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v, v;
java.lang.NoSuchMethodException v;
java.lang.ReflectiveOperationException v;
java.lang.reflect.Constructor v, v;
org.apache.ibatis.ognl.MethodFailedException v;
int v;
java.lang.String v, v, v;
boolean v, v, v, v;
java.lang.IllegalAccessException v;
java.util.Iterator v;
org.apache.ibatis.ognl.MemberAccess v;
java.lang.Class[] v, v;
java.lang.reflect.InvocationTargetException v;
java.util.List v;
java.lang.Class v;
java.lang.Object v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object[];
v = v;
label:
v = null;
v = null;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class classForName(org.apache.ibatis.ognl.OgnlContext,java.lang.String)>(v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.List getConstructors(java.lang.Class)>(v);
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 = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] getParameterTypes(java.lang.reflect.Constructor)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean areArgsCompatible(java.lang.Object[],java.lang.Class[])>(v, v);
if v == 0 goto label;
if v == null goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isMoreSpecific(java.lang.Class[],java.lang.Class[])>(v, v);
if v == 0 goto label;
label:
v = v;
v = v;
goto label;
label:
if v != null goto label;
v = lengthof v;
v = newarray (java.lang.Object)[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Constructor getConvertedConstructorAndArgs(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.util.List,java.lang.Object[],java.lang.Object[])>(v, v, v, v, v);
v = v;
if v != null goto label;
v = new java.lang.NoSuchMethodException;
specialinvoke v.<java.lang.NoSuchMethodException: void <init>()>();
throw v;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: boolean isAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, v, v, null);
if v != 0 goto label;
v = new java.lang.IllegalAccessException;
v = virtualinvoke v.<java.lang.Class: 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[])>("access denied to \u0001()");
specialinvoke v.<java.lang.IllegalAccessException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.lang.reflect.Constructor: java.lang.Object newInstance(java.lang.Object[])>(v);
label:
return v;
label:
v := @caughtexception;
v = v;
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<java.lang.reflect.InvocationTargetException: java.lang.Throwable getTargetException()>();
label:
v = new org.apache.ibatis.ognl.MethodFailedException;
specialinvoke v.<org.apache.ibatis.ognl.MethodFailedException: void <init>(java.lang.Object,java.lang.String,java.lang.Throwable)>(v, "new", v);
throw v;
catch java.lang.ClassNotFoundException from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
catch java.lang.InstantiationException from label to label with label;
catch java.lang.reflect.InvocationTargetException from label to label with label;
}
public static java.lang.Object getMethodValue(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String) throws org.apache.ibatis.ognl.OgnlException, java.lang.IllegalAccessException, java.lang.NoSuchMethodException, java.beans.IntrospectionException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object v, v;
java.lang.String v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object getMethodValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,boolean)>(v, v, v, 0);
return v;
}
public static java.lang.Object getMethodValue(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, boolean) throws org.apache.ibatis.ognl.OgnlException, java.lang.IllegalAccessException, java.lang.NoSuchMethodException
{
java.lang.Throwable v;
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v;
org.apache.ibatis.ognl.MemberAccess v;
java.lang.NoSuchMethodException v;
java.lang.reflect.InvocationTargetException v;
org.apache.ibatis.ognl.OgnlException v;
java.lang.Class v, v;
java.lang.Object v, v;
java.lang.String v;
java.lang.reflect.Method v;
boolean v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v = null;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getGetMethod(java.lang.Class,java.lang.String)>(v, v);
if v != null goto label;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getReadMethod(java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, null);
label:
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: boolean isAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, v, v, v);
if v != 0 goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object NotFound>;
label:
if v != null goto label;
if v == null goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object[] NoArguments>;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object invokeMethod(java.lang.Object,java.lang.reflect.Method,java.lang.Object[])>(v, v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.ibatis.ognl.OgnlException;
v = virtualinvoke v.<java.lang.reflect.InvocationTargetException: java.lang.Throwable getTargetException()>();
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v = new java.lang.NoSuchMethodException;
specialinvoke v.<java.lang.NoSuchMethodException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
catch java.lang.reflect.InvocationTargetException from label to label with label;
}
public static boolean setMethodValue(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object v, v;
java.lang.String v;
boolean v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean setMethodValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,java.lang.Object,boolean)>(v, v, v, v, 0);
return v;
}
public static boolean setMethodValue(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, java.lang.Object, boolean) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v;
org.apache.ibatis.ognl.MemberAccess v;
java.util.List v;
java.lang.Class v;
java.lang.Object v, v;
java.lang.String v, v;
java.lang.reflect.Method v;
boolean v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v := @parameter: boolean;
v = 1;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getSetMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Class,java.lang.String)>(v, v, v);
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: boolean isAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, v, v, v);
if v != 0 goto label;
label:
v = 0;
label:
if v == 0 goto label;
if v == null goto label;
v = newarray (java.lang.Object)[1];
v[0] = v;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = staticinvoke <java.util.Collections: java.util.List nCopies(int,java.lang.Object)>(1, v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object callAppropriateMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object,java.lang.String,java.lang.String,java.util.List,java.lang.Object[])>(v, v, v, v, v, v, v);
goto label;
label:
v = 0;
label:
return v;
}
public static java.util.List getConstructors(java.lang.Class)
{
java.lang.Class v;
java.util.List v;
org.apache.ibatis.ognl.OgnlCache v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.util.List getConstructor(java.lang.Class)>(v);
return v;
}
public static java.util.Map getMethods(java.lang.Class, boolean)
{
org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry$MethodType v;
org.apache.ibatis.ognl.OgnlCache v;
java.util.Map v;
org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry v;
java.lang.Class v;
boolean v;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
if v == 0 goto label;
v = <org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry$MethodType: org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry$MethodType STATIC>;
goto label;
label:
v = <org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry$MethodType: org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry$MethodType NON_STATIC>;
label:
v = new org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry;
specialinvoke v.<org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry: void <init>(java.lang.Class,org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry$MethodType)>(v, v);
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.util.Map getMethod(org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry)>(v);
return v;
}
private static boolean isDefaultMethod(java.lang.reflect.Method)
{
int v, v;
java.lang.Class v;
java.lang.reflect.Method v;
boolean v, v;
v := @parameter: java.lang.reflect.Method;
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = v & 1033;
if v != 1 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
private static boolean isNonDefaultPublicInterfaceMethod(java.lang.reflect.Method)
{
int v, v;
java.lang.Class v;
java.lang.reflect.Method v;
boolean v, v;
v := @parameter: java.lang.reflect.Method;
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = v & 1033;
if v != 1025 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static java.util.Map getAllMethods(java.lang.Class, boolean)
{
java.lang.Class v;
boolean v;
java.util.Map v;
v := @parameter: java.lang.Class;
v := @parameter: boolean;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map getMethods(java.lang.Class,boolean)>(v, v);
return v;
}
public static java.util.List getMethods(java.lang.Class, java.lang.String, boolean)
{
java.util.Map v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
boolean v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map getMethods(java.lang.Class,boolean)>(v, v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public static java.util.List getAllMethods(java.lang.Class, java.lang.String, boolean)
{
java.util.Map v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
boolean v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map getAllMethods(java.lang.Class,boolean)>(v, v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public static java.util.Map getFields(java.lang.Class)
{
java.lang.Class v;
org.apache.ibatis.ognl.OgnlCache v;
java.util.Map v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.util.Map getField(java.lang.Class)>(v);
return v;
}
public static java.lang.reflect.Field getField(java.lang.Class, java.lang.String)
{
java.util.Map v, v;
java.lang.Class v, v;
java.lang.Object v;
java.lang.String v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map getFields(java.lang.Class)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
label:
if v == null goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map getFields(java.lang.Class)>(v);
interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
goto label;
label:
return v;
}
public static java.lang.Object getFieldValue(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String) throws java.lang.NoSuchFieldException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object v, v;
java.lang.String v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object getFieldValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,boolean)>(v, v, v, 0);
return v;
}
public static java.lang.Object getFieldValue(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, boolean) throws java.lang.NoSuchFieldException
{
java.lang.Throwable v;
org.apache.ibatis.ognl.OgnlContext v;
java.lang.NoSuchFieldException v, v, v;
int v;
java.lang.String v;
boolean v, v, v;
java.lang.IllegalAccessException v;
org.apache.ibatis.ognl.MemberAccess v, v, v, v;
java.lang.reflect.Field v;
java.lang.Class v;
java.lang.Object v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v = null;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Field getField(java.lang.Class,java.lang.String)>(v, v);
if v == 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: boolean isAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, v, v, v);
if v != 0 goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object NotFound>;
label:
if v != null goto label;
if v != null goto label;
v = new java.lang.NoSuchFieldException;
specialinvoke v.<java.lang.NoSuchFieldException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.lang.reflect.Field: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: java.lang.Object setup(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, v, v, v);
label:
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.Object get(java.lang.Object)>(v);
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: void restore(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object)>(v, v, v, v, v);
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: void restore(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object)>(v, v, v, v, v);
throw v;
label:
v = new java.lang.NoSuchFieldException;
specialinvoke v.<java.lang.NoSuchFieldException: void <init>(java.lang.String)>(v);
throw v;
label:
v := @caughtexception;
v = new java.lang.NoSuchFieldException;
specialinvoke v.<java.lang.NoSuchFieldException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
}
public static boolean setFieldValue(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
java.lang.Throwable v;
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.NoSuchPropertyException v;
int v;
java.lang.String v;
boolean v, v, v, v;
java.lang.IllegalAccessException v;
org.apache.ibatis.ognl.MemberAccess v, v, v;
java.lang.reflect.Field v;
java.lang.Class v, v, v;
java.lang.Object v, v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v = 0;
label:
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Field getField(java.lang.Class,java.lang.String)>(v, v);
if v == null goto label;
v = virtualinvoke v.<java.lang.reflect.Field: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v != 0 goto label;
v = staticinvoke <java.lang.reflect.Modifier: boolean isFinal(int)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: java.lang.Object setup(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, v, v, v);
label:
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.Class getType()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isTypeCompatible(java.lang.Object,java.lang.Class)>(v, v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.Class getType()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object getConvertedType(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object,java.lang.Class)>(v, v, v, v, v, v);
v = v;
if v == null goto label;
label:
virtualinvoke v.<java.lang.reflect.Field: void set(java.lang.Object,java.lang.Object)>(v, v);
v = 1;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: void restore(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object)>(v, v, v, v, v);
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: void restore(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object)>(v, v, v, v, v);
throw v;
label:
v := @caughtexception;
v = new org.apache.ibatis.ognl.NoSuchPropertyException;
specialinvoke v.<org.apache.ibatis.ognl.NoSuchPropertyException: void <init>(java.lang.Object,java.lang.Object,java.lang.Throwable)>(v, v, v);
throw v;
label:
return v;
catch java.lang.Throwable from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
}
public static boolean isFieldAccessible(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Class, java.lang.String)
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
java.lang.reflect.Field v;
boolean v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Field getField(java.lang.Class,java.lang.String)>(v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isFieldAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Field,java.lang.String)>(v, v, v, v);
return v;
}
public static boolean isFieldAccessible(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.reflect.Field, java.lang.String)
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.MemberAccess v;
java.lang.Object v;
java.lang.String v;
java.lang.reflect.Field v;
boolean v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.reflect.Field;
v := @parameter: java.lang.String;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: boolean isAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, v, v, v);
return v;
}
public static boolean hasField(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Class, java.lang.String)
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
java.lang.reflect.Field v;
boolean v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Field getField(java.lang.Class,java.lang.String)>(v, v);
if v == null goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isFieldAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Field,java.lang.String)>(v, v, v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static java.lang.Object getStaticField(org.apache.ibatis.ognl.OgnlContext, java.lang.String, java.lang.String) throws org.apache.ibatis.ognl.OgnlException
{
java.lang.Throwable v;
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Enum v;
java.lang.NoSuchFieldException v;
org.apache.ibatis.ognl.OgnlException v, v;
int v;
java.lang.String v, v, v, v, v;
boolean v, v, v, v;
java.lang.IllegalAccessException v;
org.apache.ibatis.ognl.MemberAccess v, v, v, v;
java.lang.IllegalArgumentException v;
java.lang.reflect.Field v;
java.lang.Exception v;
java.lang.Class v;
java.lang.Object v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class classForName(org.apache.ibatis.ognl.OgnlContext,java.lang.String)>(v, v);
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("class");
if v == 0 goto label;
label:
return v;
label:
v = virtualinvoke v.<java.lang.Class: boolean isEnum()>();
if v == 0 goto label;
label:
v = staticinvoke <java.lang.Enum: java.lang.Enum valueOf(java.lang.Class,java.lang.String)>(v, v);
label:
return v;
label:
v := @caughtexception;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Field getField(java.lang.Class,java.lang.String)>(v, v);
if v != null goto label;
v = new java.lang.NoSuchFieldException;
specialinvoke v.<java.lang.NoSuchFieldException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.lang.reflect.Field: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isStatic(int)>(v);
if v != 0 goto label;
v = new org.apache.ibatis.ognl.OgnlException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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[])>("Field \u of class \u is not static");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: boolean isAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, null, v, null);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: java.lang.Object setup(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, null, v, null);
label:
v = virtualinvoke v.<java.lang.reflect.Field: java.lang.Object get(java.lang.Object)>(null);
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: void restore(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object)>(v, null, v, null, v);
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: void restore(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String,java.lang.Object)>(v, null, v, null, v);
throw v;
label:
v = new java.lang.IllegalAccessException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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[])>("Access to \u of class \u is forbidden");
specialinvoke v.<java.lang.IllegalAccessException: void <init>(java.lang.String)>(v);
throw v;
label:
return v;
label:
v := @caughtexception;
v = new org.apache.ibatis.ognl.OgnlException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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[])>("Could not get static field \u from class \u0001");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
catch java.lang.IllegalArgumentException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.ClassNotFoundException from label to label with label;
catch java.lang.NoSuchFieldException from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
catch java.lang.ClassNotFoundException from label to label with label;
catch java.lang.NoSuchFieldException from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
catch java.lang.ClassNotFoundException from label to label with label;
catch java.lang.NoSuchFieldException from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
}
public static java.util.List getDeclaredMethods(java.lang.Class, java.lang.String, boolean)
{
java.util.ArrayList v, v;
java.util.Map v;
org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry v;
java.lang.String v, v, v, v, v, v;
boolean v, v;
java.util.Iterator v;
char v, v;
org.apache.ibatis.ognl.OgnlCache v;
java.lang.Class v;
java.lang.Object v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v := @parameter: boolean;
v = virtualinvoke v.<java.lang.String: char charAt(int)>(0);
v = staticinvoke <java.lang.Character: char toUpperCase(char)>(v);
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int)>(1);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (char,java.lang.String)>(v, 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\u0001");
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(2);
if v == 0 goto label;
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[])>("set\u0001");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
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[])>("is\u0001");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
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[])>("get\u0001");
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
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()>();
v = new org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry;
specialinvoke v.<org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry: void <init>(java.lang.Class)>(v);
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.util.Map getMethod(org.apache.ibatis.ognl.internal.entry.DeclaredMethodCacheEntry)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
goto label;
label:
return v;
}
public static boolean isMethodCallable(java.lang.reflect.Method)
{
java.lang.reflect.Method v;
boolean v, v, v;
v := @parameter: java.lang.reflect.Method;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isSynthetic()>();
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isBridge()>();
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
static boolean isMethodCallable_BridgeOrNonSynthetic(java.lang.reflect.Method)
{
java.lang.reflect.Method v;
boolean v, v, v;
v := @parameter: java.lang.reflect.Method;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isSynthetic()>();
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isBridge()>();
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static java.lang.reflect.Method getGetMethod(java.lang.Class, java.lang.String)
{
org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache v, v;
java.lang.Class v;
java.lang.String v;
java.lang.reflect.Method v, v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheGetMethod>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: java.lang.reflect.Method get(java.lang.Class,java.lang.String)>(v, v);
v = <org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: java.lang.reflect.Method NULL_REPLACEMENT>;
if v != v goto label;
return null;
label:
if v == null goto label;
return v;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method _getGetMethod(java.lang.Class,java.lang.String)>(v, v);
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheGetMethod>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: void put(java.lang.Class,java.lang.String,java.lang.reflect.Method)>(v, v, v);
return v;
}
private static java.lang.reflect.Method _getGetMethod(java.lang.Class, java.lang.String)
{
int v, v, v;
java.lang.String v;
java.lang.reflect.Method v, v, v, v;
boolean v, v, v, v, v;
java.util.Iterator v;
java.lang.Class[] v;
java.util.List v;
java.lang.Class v, v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.List getDeclaredMethods(java.lang.Class,java.lang.String,boolean)>(v, v, 0);
v = null;
v = null;
v = null;
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 = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] findParameterTypes(java.lang.Class,java.lang.reflect.Method)>(v, v);
v = lengthof v;
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v != null goto label;
v = v;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _useFirstMatchGetSetLookup>;
if v != 0 goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
if v == 0 goto label;
v = v;
goto label;
label:
if v != null goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isNonDefaultPublicInterfaceMethod(java.lang.reflect.Method)>(v);
if v == 0 goto label;
if v == 0 goto label;
v = v;
goto label;
label:
if v == null goto label;
v = v;
goto label;
label:
if v == null goto label;
v = v;
goto label;
label:
v = v;
label:
return v;
}
public static boolean isMethodAccessible(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.reflect.Method, java.lang.String)
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.MemberAccess v;
java.lang.Object v;
java.lang.String v;
java.lang.reflect.Method v;
boolean v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.reflect.Method;
v := @parameter: java.lang.String;
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.MemberAccess: boolean isAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Member,java.lang.String)>(v, v, v, v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean hasGetMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Class, java.lang.String)
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getGetMethod(java.lang.Class,java.lang.String)>(v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isMethodAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Method,java.lang.String)>(v, v, v, v);
return v;
}
public static java.lang.reflect.Method getSetMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Class, java.lang.String)
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache v, v;
java.lang.Class v;
java.lang.String v;
java.lang.reflect.Method v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheSetMethod>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: java.lang.reflect.Method get(java.lang.Class,java.lang.String)>(v, v);
v = <org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: java.lang.reflect.Method NULL_REPLACEMENT>;
if v != v goto label;
return null;
label:
if v == null goto label;
return v;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method _getSetMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Class,java.lang.String)>(v, v, v);
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheSetMethod>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: void put(java.lang.Class,java.lang.String,java.lang.reflect.Method)>(v, v, v);
return v;
}
private static java.lang.reflect.Method _getSetMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Class, java.lang.String)
{
org.apache.ibatis.ognl.OgnlContext v;
int v, v, v;
java.lang.String v;
java.lang.reflect.Method v, v, v, v;
boolean v, v, v, v, v;
java.util.Iterator v;
java.lang.Class[] v;
java.util.List v;
java.lang.Class v, v;
java.lang.Object v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.List getDeclaredMethods(java.lang.Class,java.lang.String,boolean)>(v, v, 1);
v = null;
v = null;
v = null;
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 = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] findParameterTypes(java.lang.Class,java.lang.reflect.Method)>(v, v);
v = lengthof v;
if v != 1 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = virtualinvoke v.<java.lang.Class: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v != null goto label;
v = v;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _useFirstMatchGetSetLookup>;
if v != 0 goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: int getModifiers()>();
v = staticinvoke <java.lang.reflect.Modifier: boolean isPublic(int)>(v);
if v == 0 goto label;
if v == 0 goto label;
v = v;
goto label;
label:
if v != null goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isNonDefaultPublicInterfaceMethod(java.lang.reflect.Method)>(v);
if v == 0 goto label;
if v == 0 goto label;
v = v;
goto label;
label:
if v == null goto label;
v = v;
goto label;
label:
if v == null goto label;
v = v;
goto label;
label:
v = v;
label:
return v;
}
public static boolean hasSetMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Class, java.lang.String)
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
java.lang.reflect.Method v;
boolean v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getSetMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Class,java.lang.String)>(v, v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isMethodAccessible(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.reflect.Method,java.lang.String)>(v, v, v, v);
return v;
}
public static boolean hasGetProperty(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Object) throws java.beans.IntrospectionException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Class v;
java.lang.Object v, v;
java.lang.String v;
boolean v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean hasGetMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Class,java.lang.String)>(v, v, v, v);
if v != 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean hasField(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Class,java.lang.String)>(v, v, v, v);
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean hasSetProperty(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Object) throws java.beans.IntrospectionException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Class v;
java.lang.Object v, v;
java.lang.String v;
boolean v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean hasSetMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Class,java.lang.String)>(v, v, v, v);
if v != 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean hasField(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Class,java.lang.String)>(v, v, v, v);
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static java.util.Map getPropertyDescriptors(java.lang.Class)
{
java.lang.Class v;
org.apache.ibatis.ognl.OgnlCache v;
java.util.Map v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: java.util.Map getPropertyDescriptor(java.lang.Class)>(v);
return v;
}
public static java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.Class, java.lang.String) throws org.apache.ibatis.ognl.OgnlException
{
java.util.Map v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
if v != null goto label;
return null;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map getPropertyDescriptors(java.lang.Class)>(v);
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
return v;
}
public static java.beans.PropertyDescriptor[] getPropertyDescriptorsArray(java.lang.Class)
{
java.lang.Object[] v;
java.beans.PropertyDescriptor[] v;
java.util.Collection v;
java.util.Map v;
java.lang.Class v;
v := @parameter: java.lang.Class;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.Map getPropertyDescriptors(java.lang.Class)>(v);
v = interfaceinvoke v.<java.util.Map: java.util.Collection values()>();
v = newarray (java.beans.PropertyDescriptor)[0];
v = interfaceinvoke v.<java.util.Collection: java.lang.Object[] toArray(java.lang.Object[])>(v);
return v;
}
public static java.beans.PropertyDescriptor getPropertyDescriptorFromArray(java.lang.Class, java.lang.String)
{
java.beans.PropertyDescriptor[] v;
java.beans.PropertyDescriptor v, v;
int v, v, v;
java.lang.Class v;
java.lang.String v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = null;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.beans.PropertyDescriptor[] getPropertyDescriptorsArray(java.lang.Class)>(v);
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v != null goto label;
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: int compareTo(java.lang.String)>(v);
if v != 0 goto label;
v = v;
label:
v = v + 1;
goto label;
label:
return v;
}
public static void setMethodAccessor(java.lang.Class, org.apache.ibatis.ognl.MethodAccessor)
{
java.lang.Class v;
org.apache.ibatis.ognl.OgnlCache v;
org.apache.ibatis.ognl.MethodAccessor v;
v := @parameter: java.lang.Class;
v := @parameter: org.apache.ibatis.ognl.MethodAccessor;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(v, v);
return;
}
public static org.apache.ibatis.ognl.MethodAccessor getMethodAccessor(java.lang.Class) throws org.apache.ibatis.ognl.OgnlException
{
java.lang.Class v;
org.apache.ibatis.ognl.OgnlCache v;
org.apache.ibatis.ognl.MethodAccessor v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: org.apache.ibatis.ognl.MethodAccessor getMethodAccessor(java.lang.Class)>(v);
return v;
}
public static void setPropertyAccessor(java.lang.Class, org.apache.ibatis.ognl.PropertyAccessor)
{
org.apache.ibatis.ognl.PropertyAccessor v;
java.lang.Class v;
org.apache.ibatis.ognl.OgnlCache v;
v := @parameter: java.lang.Class;
v := @parameter: org.apache.ibatis.ognl.PropertyAccessor;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(v, v);
return;
}
public static org.apache.ibatis.ognl.PropertyAccessor getPropertyAccessor(java.lang.Class) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.PropertyAccessor v;
java.lang.Class v;
org.apache.ibatis.ognl.OgnlCache v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: org.apache.ibatis.ognl.PropertyAccessor getPropertyAccessor(java.lang.Class)>(v);
return v;
}
public static org.apache.ibatis.ognl.ElementsAccessor getElementsAccessor(java.lang.Class) throws org.apache.ibatis.ognl.OgnlException
{
java.lang.Class v;
org.apache.ibatis.ognl.ElementsAccessor v;
org.apache.ibatis.ognl.OgnlCache v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: org.apache.ibatis.ognl.ElementsAccessor getElementsAccessor(java.lang.Class)>(v);
return v;
}
public static void setElementsAccessor(java.lang.Class, org.apache.ibatis.ognl.ElementsAccessor)
{
java.lang.Class v;
org.apache.ibatis.ognl.ElementsAccessor v;
org.apache.ibatis.ognl.OgnlCache v;
v := @parameter: java.lang.Class;
v := @parameter: org.apache.ibatis.ognl.ElementsAccessor;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(v, v);
return;
}
public static org.apache.ibatis.ognl.NullHandler getNullHandler(java.lang.Class) throws org.apache.ibatis.ognl.OgnlException
{
java.lang.Class v;
org.apache.ibatis.ognl.NullHandler v;
org.apache.ibatis.ognl.OgnlCache v;
v := @parameter: java.lang.Class;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: org.apache.ibatis.ognl.NullHandler getNullHandler(java.lang.Class)>(v);
return v;
}
public static void setNullHandler(java.lang.Class, org.apache.ibatis.ognl.NullHandler)
{
java.lang.Class v;
org.apache.ibatis.ognl.NullHandler v;
org.apache.ibatis.ognl.OgnlCache v;
v := @parameter: java.lang.Class;
v := @parameter: org.apache.ibatis.ognl.NullHandler;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(v, v);
return;
}
public static java.lang.Object getProperty(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.PropertyAccessor v;
org.apache.ibatis.ognl.OgnlException v, v;
java.lang.Class v, v;
java.lang.Object v, v, v;
java.lang.String v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
if v != null goto label;
v = new org.apache.ibatis.ognl.OgnlException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Object)>(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[])>("source is null for getProperty(null, \"\u0001\")");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String)>(v);
throw v;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getTargetClass(java.lang.Object)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PropertyAccessor getPropertyAccessor(java.lang.Class)>(v);
if v != null goto label;
v = new org.apache.ibatis.ognl.OgnlException;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getTargetClass(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.Class: 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[])>("No property accessor for \u0001");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String)>(v);
throw v;
label:
v = interfaceinvoke v.<org.apache.ibatis.ognl.PropertyAccessor: java.lang.Object getProperty(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
return v;
}
public static void setProperty(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Object, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.PropertyAccessor v;
org.apache.ibatis.ognl.OgnlException v, v;
java.lang.Class v, v;
java.lang.Object v, v, v;
java.lang.String v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
if v != null goto label;
v = new org.apache.ibatis.ognl.OgnlException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Object,java.lang.Object)>(v, 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[])>("target is null for setProperty(null, \"\u0001\", \u)");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String)>(v);
throw v;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getTargetClass(java.lang.Object)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PropertyAccessor getPropertyAccessor(java.lang.Class)>(v);
if v != null goto label;
v = new org.apache.ibatis.ognl.OgnlException;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getTargetClass(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.Class: 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[])>("No property accessor for \u0001");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String)>(v);
throw v;
label:
interfaceinvoke v.<org.apache.ibatis.ognl.PropertyAccessor: void setProperty(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object,java.lang.Object)>(v, v, v, v);
return;
}
public static int getIndexedPropertyType(java.lang.Class, java.lang.String) throws org.apache.ibatis.ognl.OgnlException
{
java.lang.Exception v;
org.apache.ibatis.ognl.OgnlException v;
java.beans.PropertyDescriptor v;
int v;
java.lang.Class v;
java.lang.String v, v;
boolean v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = <org.apache.ibatis.ognl.OgnlRuntime: int INDEXED_PROPERTY_NONE>;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.Class,java.lang.String)>(v, v);
if v == null goto label;
v = v instanceof java.beans.IndexedPropertyDescriptor;
if v == 0 goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: int INDEXED_PROPERTY_INT>;
goto label;
label:
v = v instanceof org.apache.ibatis.ognl.ObjectIndexedPropertyDescriptor;
if v == 0 goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: int INDEXED_PROPERTY_OBJECT>;
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.ibatis.ognl.OgnlException;
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[])>("problem determining if \'\u0001\' is an indexed property");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
return v;
catch java.lang.Exception from label to label with label;
}
public static java.lang.Object getIndexedProperty(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v;
org.apache.ibatis.ognl.OgnlException v, v, v;
java.lang.String v, v, v, v;
java.lang.reflect.Method v;
boolean v, v;
java.lang.Exception v;
java.beans.PropertyDescriptor v;
java.lang.Class v;
java.lang.Object v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v = newarray (java.lang.Object)[1];
v[0] = v;
label:
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.Class,java.lang.String)>(v, v);
v = v instanceof java.beans.IndexedPropertyDescriptor;
if v == 0 goto label;
v = virtualinvoke v.<java.beans.IndexedPropertyDescriptor: java.lang.reflect.Method getIndexedReadMethod()>();
goto label;
label:
v = v instanceof org.apache.ibatis.ognl.ObjectIndexedPropertyDescriptor;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.ObjectIndexedPropertyDescriptor: java.lang.reflect.Method getIndexedReadMethod()>();
goto label;
label:
v = new org.apache.ibatis.ognl.OgnlException;
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[])>("property \'\u0001\' is not an indexed property");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object callMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,java.lang.Object[])>(v, v, v, v);
label:
return v;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.apache.ibatis.ognl.OgnlException;
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[])>("getting indexed property descriptor for \'\u0001\'");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
catch org.apache.ibatis.ognl.OgnlException from label to label with label;
catch java.lang.Exception from label to label with label;
}
public static void setIndexedProperty(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.String, java.lang.Object, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object[] v;
org.apache.ibatis.ognl.OgnlException v, v, v;
java.lang.String v, v, v, v;
java.lang.reflect.Method v;
boolean v, v;
java.lang.Exception v;
java.beans.PropertyDescriptor v;
java.lang.Class v;
java.lang.Object v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
label:
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.beans.PropertyDescriptor getPropertyDescriptor(java.lang.Class,java.lang.String)>(v, v);
v = v instanceof java.beans.IndexedPropertyDescriptor;
if v == 0 goto label;
v = virtualinvoke v.<java.beans.IndexedPropertyDescriptor: java.lang.reflect.Method getIndexedWriteMethod()>();
goto label;
label:
v = v instanceof org.apache.ibatis.ognl.ObjectIndexedPropertyDescriptor;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.ObjectIndexedPropertyDescriptor: java.lang.reflect.Method getIndexedWriteMethod()>();
goto label;
label:
v = new org.apache.ibatis.ognl.OgnlException;
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[])>("property \'\u0001\' is not an indexed property");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object callMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,java.lang.Object[])>(v, v, v, v);
label:
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new org.apache.ibatis.ognl.OgnlException;
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[])>("getting indexed property descriptor for \'\u0001\'");
specialinvoke v.<org.apache.ibatis.ognl.OgnlException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
return;
catch org.apache.ibatis.ognl.OgnlException from label to label with label;
catch java.lang.Exception from label to label with label;
}
public static org.apache.ibatis.ognl.EvaluationPool getEvaluationPool()
{
org.apache.ibatis.ognl.EvaluationPool v;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.EvaluationPool _evaluationPool>;
return v;
}
public static void setClassCacheInspector(org.apache.ibatis.ognl.ClassCacheInspector)
{
org.apache.ibatis.ognl.ClassCacheInspector v;
org.apache.ibatis.ognl.OgnlCache v;
v := @parameter: org.apache.ibatis.ognl.ClassCacheInspector;
v = <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlCache: void setClassCacheInspector(org.apache.ibatis.ognl.ClassCacheInspector)>(v);
return;
}
public static java.lang.reflect.Method getMethod(org.apache.ibatis.ognl.OgnlContext, java.lang.Class, java.lang.String, org.apache.ibatis.ognl.Node[], boolean) throws java.lang.Exception
{
boolean v, v, v, v, v, v, v;
org.apache.ibatis.ognl.Node v;
java.util.List v;
org.apache.ibatis.ognl.Node[] v;
org.apache.ibatis.ognl.OgnlContext v;
int v, v, v, v, v, v, v, v;
java.lang.String v;
java.util.Iterator v;
java.lang.Class[] v, v, v;
java.lang.Class v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v, v, v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v := @parameter: org.apache.ibatis.ognl.Node[];
v := @parameter: boolean;
if v == null goto label;
v = lengthof v;
if v <= 0 goto label;
v = lengthof v;
v = newarray (java.lang.Class)[v];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentAccessor()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object get(java.lang.Object)>("_preCast");
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
goto label;
label:
v = null;
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentAccessor(java.lang.Class)>(null);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setPreviousType(java.lang.Class)>(null);
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.String toGetSourceString(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v[v] = v;
v = v + 1;
goto label;
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object put(java.lang.String,java.lang.Object)>("_preCast", v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentAccessor(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
goto label;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] EMPTY_CLASS_ARRAY>;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.util.List getMethods(java.lang.Class,java.lang.String,boolean)>(v, v, v);
if v != null goto label;
return null;
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()>();
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
v = lengthof v;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = lengthof v;
if v == v goto label;
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = 1;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
if v == 0 goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v != 0 goto label;
label:
v = v[v];
if v != null goto label;
v = 0;
goto label;
label:
v = v[v];
v = v[v];
if v == v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
v = <java.lang.Character: java.lang.Class TYPE>;
v = v[v];
if v == v goto label;
v = <java.lang.Byte: java.lang.Class TYPE>;
v = v[v];
if v == v goto label;
v = class "Ljava/lang/Number;";
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getPrimitiveWrapperClass(java.lang.Class)>(v);
v = v[v];
if v == v goto label;
label:
v = 0;
goto label;
label:
v = v + 1;
goto label;
label:
if v == 0 goto label;
return v;
label:
return null;
}
public static java.lang.reflect.Method getReadMethod(java.lang.Class, java.lang.String)
{
java.lang.Class v;
java.lang.String v;
java.lang.reflect.Method v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getReadMethod(java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, null);
return v;
}
public static java.lang.reflect.Method getReadMethod(java.lang.Class, java.lang.String, java.lang.Class[])
{
java.lang.reflect.Method[] v;
org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod v, v;
java.lang.reflect.Method v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Throwable v;
java.util.ArrayList v;
int v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v;
java.lang.Class[] v, v;
java.lang.RuntimeException v;
java.lang.Class v, v, v;
java.lang.Object v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class[];
label:
v = virtualinvoke v.<java.lang.String: int indexOf(int)>(34);
if v < 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String replaceAll(java.lang.String,java.lang.String)>("\"", "");
label:
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method[] getMethods()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isMethodCallable_BridgeOrNonSynthetic(java.lang.reflect.Method)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
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[])>("get\u0001");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
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[])>("has\u0001");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
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[])>("is\u0001");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("set");
if v != 0 goto label;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.util.ArrayList: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod findBestMethod(java.util.List,java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, v, v);
if v == null goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
label:
return v;
label:
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isMethodCallable_BridgeOrNonSynthetic(java.lang.reflect.Method)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("set");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("get");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("is");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("has");
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
v = <java.lang.Void: java.lang.Class TYPE>;
if v == v goto label;
v = virtualinvoke v.<java.util.ArrayList: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.util.ArrayList: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod findBestMethod(java.util.List,java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, v, v);
if v == null goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
label:
return v;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("get");
if v != 0 goto label;
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[])>("get\u0001");
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getReadMethod(java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, v);
if v == null goto label;
label:
return v;
label:
v = virtualinvoke v.<java.util.ArrayList: boolean isEmpty()>();
if v != 0 goto label;
if v != null goto label;
v = 0;
goto label;
label:
v = lengthof v;
label:
v = v;
v = virtualinvoke v.<java.util.ArrayList: 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.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = lengthof v;
if v != v goto label;
label:
return v;
label:
v := @caughtexception;
v = staticinvoke <org.apache.ibatis.ognl.OgnlOps: java.lang.RuntimeException castToRuntime(java.lang.Throwable)>(v);
throw v;
label:
return null;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.lang.reflect.Method getWriteMethod(java.lang.Class, java.lang.String)
{
java.lang.Class v;
java.lang.String v;
java.lang.reflect.Method v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getWriteMethod(java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, null);
return v;
}
public static java.lang.reflect.Method getWriteMethod(java.lang.Class, java.lang.String, java.lang.Class[])
{
java.lang.reflect.Method[] v;
java.beans.MethodDescriptor[] v;
org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod v, v;
java.lang.reflect.Method v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Throwable v;
java.util.ArrayList v;
java.beans.BeanInfo v;
int v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v;
java.lang.Class[] v, v;
java.beans.MethodDescriptor v;
java.lang.RuntimeException v;
java.lang.Class v;
java.lang.Object v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Class[];
label:
v = virtualinvoke v.<java.lang.String: int indexOf(int)>(34);
if v < 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String replaceAll(java.lang.String,java.lang.String)>("\"", "");
label:
v = staticinvoke <java.beans.Introspector: java.beans.BeanInfo getBeanInfo(java.lang.Class)>(v);
v = interfaceinvoke v.<java.beans.BeanInfo: java.beans.MethodDescriptor[] getMethodDescriptors()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.beans.MethodDescriptor: java.lang.reflect.Method getMethod()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isMethodCallable_BridgeOrNonSynthetic(java.lang.reflect.Method)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.beans.MethodDescriptor: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.beans.MethodDescriptor: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
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[])>("set\u0001");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = virtualinvoke v.<java.beans.MethodDescriptor: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("get");
if v != 0 goto label;
v = virtualinvoke v.<java.beans.MethodDescriptor: java.lang.reflect.Method getMethod()>();
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.util.ArrayList: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod findBestMethod(java.util.List,java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, v, v);
if v == null goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
label:
return v;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method[] getMethods()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean isMethodCallable_BridgeOrNonSynthetic(java.lang.reflect.Method)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
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[])>("set\u0001");
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("get");
if v != 0 goto label;
v = virtualinvoke v.<java.util.ArrayList: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
virtualinvoke v.<java.util.ArrayList: boolean add(java.lang.Object)>(v);
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.util.ArrayList: boolean isEmpty()>();
if v != 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod findBestMethod(java.util.List,java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, v, v);
if v == null goto label;
v = v.<org.apache.ibatis.ognl.OgnlRuntime$MatchingMethod: java.lang.reflect.Method mMethod>;
label:
return v;
label:
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("set");
if v != 0 goto label;
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[])>("set\u0001");
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getReadMethod(java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, v);
if v == null goto label;
label:
return v;
label:
v = virtualinvoke v.<java.util.ArrayList: boolean isEmpty()>();
if v != 0 goto label;
if v != null goto label;
v = 0;
goto label;
label:
v = lengthof v;
label:
v = v;
v = virtualinvoke v.<java.util.ArrayList: 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.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = lengthof v;
if v != v goto label;
label:
return v;
label:
if v != null goto label;
v = virtualinvoke v.<java.util.ArrayList: int size()>();
if v != 1 goto label;
v = virtualinvoke v.<java.util.ArrayList: java.lang.Object get(int)>(0);
label:
return v;
label:
v := @caughtexception;
v = staticinvoke <org.apache.ibatis.ognl.OgnlOps: java.lang.RuntimeException castToRuntime(java.lang.Throwable)>(v);
throw v;
label:
return null;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static java.beans.PropertyDescriptor getProperty(java.lang.Class, java.lang.String)
{
java.lang.Throwable v;
java.beans.PropertyDescriptor[] v;
java.lang.RuntimeException v;
java.beans.PropertyDescriptor v;
java.beans.BeanInfo v;
int v, v;
java.lang.Class v;
java.lang.String v, v, v, v, v;
boolean v, v;
v := @parameter: java.lang.Class;
v := @parameter: java.lang.String;
label:
v = staticinvoke <java.beans.Introspector: java.beans.BeanInfo getBeanInfo(java.lang.Class)>(v);
v = interfaceinvoke v.<java.beans.BeanInfo: java.beans.PropertyDescriptor[] getPropertyDescriptors()>();
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.String: java.lang.String toLowerCase()>();
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>(v);
if v == 0 goto label;
label:
return v;
label:
v = v + 1;
goto label;
label:
v := @caughtexception;
v = staticinvoke <org.apache.ibatis.ognl.OgnlOps: java.lang.RuntimeException castToRuntime(java.lang.Throwable)>(v);
throw v;
label:
return null;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static boolean isBoolean(java.lang.String)
{
java.lang.String v, v, v, v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v, v, v;
v := @parameter: java.lang.String;
if v != null goto label;
return 0;
label:
v = "true";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "false";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "!true";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "!false";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "(true)";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "!(true)";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "(false)";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = "!(false)";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean startsWith(java.lang.String)>("org.apache.ibatis.ognl.OgnlOps");
if v == 0 goto label;
label:
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean shouldConvertNumericTypes(org.apache.ibatis.ognl.OgnlContext)
{
org.apache.ibatis.ognl.OgnlContext v;
boolean v, v, v, v, v;
java.lang.Class v, v, v, v, v, v, v, v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
if v != null goto label;
label:
return 1;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
if v != v goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
return 0;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static java.lang.String getChildSource(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, org.apache.ibatis.ognl.Node)
{
java.lang.Throwable v, v;
org.apache.ibatis.ognl.OgnlContext v;
java.lang.NullPointerException v;
int v;
java.lang.ArithmeticException v;
java.lang.String v, v, v;
boolean v, v;
org.apache.ibatis.ognl.Node v;
java.lang.RuntimeException v, v;
java.lang.Class v, v;
java.lang.Object v, v, v, v, v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: org.apache.ibatis.ognl.Node;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object get(java.lang.Object)>("_currentChain");
if v != null goto label;
v = "";
label:
interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
goto label;
label:
v := @caughtexception;
v = <java.lang.Integer: java.lang.Class TYPE>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
return "0";
label:
v := @caughtexception;
v = staticinvoke <org.apache.ibatis.ognl.OgnlOps: java.lang.RuntimeException castToRuntime(java.lang.Throwable)>(v);
throw v;
label:
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.String toGetSourceString(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = staticinvoke <org.apache.ibatis.ognl.OgnlOps: java.lang.RuntimeException castToRuntime(java.lang.Throwable)>(v);
throw v;
label:
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v != 0 goto label;
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
if v == v goto label;
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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\u0001");
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = staticinvoke <org.apache.ibatis.ognl.enhance.ExpressionCompiler: java.lang.String getRootExpression(org.apache.ibatis.ognl.Node,java.lang.Object,org.apache.ibatis.ognl.OgnlContext)>(v, v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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\u0001");
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentAccessor(java.lang.Class)>(v);
label:
v = v instanceof org.apache.ibatis.ognl.ASTChain;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object remove(java.lang.Object)>("_preCast");
if v != null goto label;
v = "";
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, 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\u0001");
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= 1 goto label;
label:
v = "null";
label:
return v;
catch java.lang.NullPointerException from label to label with label;
catch java.lang.ArithmeticException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
static int detectMajorJavaVersion()
{
int v, v, v;
java.lang.String v;
java.lang.Exception v;
v = (int) -1;
v = v;
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("java.version");
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: int parseMajorJavaVersion(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
v = (int) -1;
if v != v goto label;
v = 5;
label:
return v;
catch java.lang.Exception from label to label with label;
}
static int parseMajorJavaVersion(java.lang.String)
{
java.lang.String[] v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v;
boolean v;
java.lang.Exception v;
v := @parameter: java.lang.String;
v = (int) -1;
v = v;
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = virtualinvoke v.<java.lang.String: java.lang.String[] split(java.lang.String)>("[.\\-+]");
v = lengthof v;
if v <= 0 goto label;
v = v[0];
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = lengthof v;
if v <= 1 goto label;
v = v[1];
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = v[0];
v = staticinvoke <java.lang.Integer: int parseInt(java.lang.String)>(v);
v = v[1];
v = virtualinvoke v.<java.lang.String: boolean matches(java.lang.String)>("\\d+");
if v == 0 goto label;
v = v[1];
v = staticinvoke <java.lang.Integer: int parseInt(java.lang.String)>(v);
goto label;
label:
v = (int) -1;
v = v;
goto label;
label:
v = v[0];
v = staticinvoke <java.lang.Integer: int parseInt(java.lang.String)>(v);
v = (int) -1;
v = v;
label:
if v != 1 goto label;
v = (int) -1;
if v == v goto label;
v = v;
goto label;
label:
v = v;
label:
goto label;
label:
v := @caughtexception;
label:
v = (int) -1;
if v != v goto label;
v = 5;
label:
return v;
catch java.lang.Exception from label to label with label;
}
public static boolean getUseJDK9PlusAccessHandlerValue()
{
boolean v;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _useJDK9PlusAccessHandler>;
return v;
}
public static boolean getUseStricterInvocationValue()
{
boolean v;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _useStricterInvocation>;
return v;
}
public static boolean getDisableOgnlSecurityManagerOnInitValue()
{
boolean v;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _disableOgnlSecurityManagerOnInit>;
return v;
}
public static boolean usingJDK9PlusAccessHandler()
{
boolean v, v, v;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _jdk9Plus>;
if v == 0 goto label;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _useJDK9PlusAccessHandler>;
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean getUseFirstMatchGetSetLookupValue()
{
boolean v;
v = <org.apache.ibatis.ognl.OgnlRuntime: boolean _useFirstMatchGetSetLookup>;
return v;
}
static void <clinit>()
{
org.apache.ibatis.ognl.ListPropertyAccessor v;
org.apache.ibatis.ognl.ObjectNullHandler v;
org.apache.ibatis.ognl.EnumerationElementsAccessor v;
org.apache.ibatis.ognl.PrimitiveTypes v;
org.apache.ibatis.ognl.MapPropertyAccessor v;
org.apache.ibatis.ognl.NumericDefaults v;
java.lang.Exception v, v, v, v;
org.apache.ibatis.ognl.NumberElementsAccessor v;
java.lang.Throwable v, v, v, v;
java.lang.Object[] v;
java.lang.String v, v, v, v, v, v;
org.apache.ibatis.ognl.enhance.ExpressionCompiler v;
boolean[] v;
java.lang.Class[] v, v, v, v, v;
org.apache.ibatis.ognl.PrimitiveWrapperClasses v;
java.lang.RuntimeException v;
org.apache.ibatis.ognl.PrimitiveDefaults v;
org.apache.ibatis.ognl.IteratorPropertyAccessor v;
java.lang.ClassNotFoundException v;
org.apache.ibatis.ognl.MapElementsAccessor v;
java.lang.IllegalStateException v;
java.lang.NoSuchMethodException v, v, v, v;
org.apache.ibatis.ognl.CollectionElementsAccessor v;
org.apache.ibatis.ognl.ArrayPropertyAccessor v;
java.lang.SecurityException v, v, v, v;
org.apache.ibatis.ognl.ObjectPropertyAccessor v;
java.lang.reflect.Method v, v, v, v;
boolean v, v, v, v, v, v;
java.util.concurrent.ConcurrentHashMap v, v;
org.apache.ibatis.ognl.NumericLiterals v;
org.apache.ibatis.ognl.ObjectElementsAccessor v;
org.apache.ibatis.ognl.EvaluationPool v;
org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport v;
org.apache.ibatis.ognl.IteratorElementsAccessor v;
java.util.HashMap v;
int v, v, v, v, v, v;
org.apache.ibatis.ognl.ObjectMethodAccessor v;
org.apache.ibatis.ognl.AccessibleObjectHandler v;
org.apache.ibatis.ognl.SetPropertyAccessor v;
java.lang.IllegalArgumentException v;
java.lang.SecurityManager v;
org.apache.ibatis.ognl.NumericCasts v;
org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache v, v;
org.apache.ibatis.ognl.EnumerationPropertyAccessor v;
org.apache.ibatis.ognl.NumericValues v;
org.apache.ibatis.ognl.OgnlCache v;
java.lang.Class v, v, v, v, v, v, v;
java.lang.Object v;
org.apache.ibatis.ognl.ArrayElementsAccessor v;
v = new java.lang.Object;
specialinvoke v.<java.lang.Object: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object NotFound> = v;
v = newarray (java.lang.Object)[0];
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object[] NoArguments> = v;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object NoConversionPossible> = "org.apache.ibatis.ognl.NoConversionPossible";
<org.apache.ibatis.ognl.OgnlRuntime: int INDEXED_PROPERTY_NONE> = 0;
<org.apache.ibatis.ognl.OgnlRuntime: int INDEXED_PROPERTY_INT> = 1;
<org.apache.ibatis.ognl.OgnlRuntime: int INDEXED_PROPERTY_OBJECT> = 2;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (null_type)>(null) <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");
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.String NULL_STRING> = v;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: java.util.Map HEX_PADDING> = v;
v = 0;
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("org.apache.ibatis.ognl.UseJDK9PlusAccessHandler");
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
<org.apache.ibatis.ognl.OgnlRuntime: boolean _useJDK9PlusAccessHandler> = v;
v = 1;
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("org.apache.ibatis.ognl.UseStricterInvocation");
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
<org.apache.ibatis.ognl.OgnlRuntime: boolean _useStricterInvocation> = v;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: int detectMajorJavaVersion()>();
<org.apache.ibatis.ognl.OgnlRuntime: int _majorJavaVersion> = v;
v = <org.apache.ibatis.ognl.OgnlRuntime: int _majorJavaVersion>;
if v < 9 goto label;
v = 1;
goto label;
label:
v = 0;
label:
<org.apache.ibatis.ognl.OgnlRuntime: boolean _jdk9Plus> = v;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: boolean usingJDK9PlusAccessHandler()>();
if v == 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.AccessibleObjectHandlerJDK9Plus: org.apache.ibatis.ognl.AccessibleObjectHandler createHandler()>();
goto label;
label:
v = staticinvoke <org.apache.ibatis.ognl.AccessibleObjectHandlerPreJDK9: org.apache.ibatis.ognl.AccessibleObjectHandler createHandler()>();
label:
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.AccessibleObjectHandler _accessibleObjectHandler> = v;
label:
v = class "Ljava/lang/reflect/AccessibleObject;";
v = newarray (java.lang.Class)[1];
v = <java.lang.Boolean: java.lang.Class TYPE>;
v[0] = v;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>("setAccessible", v);
label:
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_REF> = v;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_REF> = null;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_REF> = null;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_REF> = null;
throw v;
label:
v = class "Ljava/lang/reflect/AccessibleObject;";
v = newarray (java.lang.Class)[2];
v[0] = class "[Ljava/lang/reflect/AccessibleObject;";
v = <java.lang.Boolean: java.lang.Class TYPE>;
v[1] = v;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>("setAccessible", v);
label:
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_ARR_REF> = v;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_ARR_REF> = null;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_ARR_REF> = null;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method AO_SETACCESSIBLE_ARR_REF> = null;
throw v;
label:
v = class "Ljava/lang/System;";
v = newarray (java.lang.Class)[1];
v = <java.lang.Integer: java.lang.Class TYPE>;
v[0] = v;
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>("exit", v);
label:
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_EXIT_REF> = v;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_EXIT_REF> = null;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_EXIT_REF> = null;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_EXIT_REF> = null;
throw v;
label:
v = class "Ljava/lang/System;";
v = newarray (java.lang.Class)[0];
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Method getMethod(java.lang.String,java.lang.Class[])>("console", v);
label:
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_CONSOLE_REF> = v;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_CONSOLE_REF> = null;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_CONSOLE_REF> = null;
goto label;
label:
v := @caughtexception;
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method SYS_CONSOLE_REF> = null;
throw v;
label:
v = 0;
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("org.apache.ibatis.ognl.security.manager");
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = "forceDisableOnInit";
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
<org.apache.ibatis.ognl.OgnlRuntime: boolean _disableOgnlSecurityManagerOnInit> = v;
v = 0;
label:
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("org.apache.ibatis.ognl.UseFirstMatchGetSetLookup");
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
<org.apache.ibatis.ognl.OgnlRuntime: boolean _useFirstMatchGetSetLookup> = v;
v = new org.apache.ibatis.ognl.OgnlCache;
specialinvoke v.<org.apache.ibatis.ognl.OgnlCache: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlCache cache> = v;
v = new org.apache.ibatis.ognl.PrimitiveTypes;
specialinvoke v.<org.apache.ibatis.ognl.PrimitiveTypes: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PrimitiveTypes primitiveTypes> = v;
v = new org.apache.ibatis.ognl.PrimitiveDefaults;
specialinvoke v.<org.apache.ibatis.ognl.PrimitiveDefaults: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PrimitiveDefaults primitiveDefaults> = v;
v = staticinvoke <java.lang.System: java.lang.SecurityManager getSecurityManager()>();
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.SecurityManager securityManager> = v;
v = new org.apache.ibatis.ognl.EvaluationPool;
specialinvoke v.<org.apache.ibatis.ognl.EvaluationPool: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.EvaluationPool _evaluationPool> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodAccessCache> = v;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: java.util.Map _methodPermCache> = v;
v = new org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache;
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheSetMethod> = v;
v = new org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache;
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ClassPropertyMethodCache cacheGetMethod> = v;
v = new org.apache.ibatis.ognl.PrimitiveWrapperClasses;
specialinvoke v.<org.apache.ibatis.ognl.PrimitiveWrapperClasses: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PrimitiveWrapperClasses primitiveWrapperClasses> = v;
v = new org.apache.ibatis.ognl.NumericCasts;
specialinvoke v.<org.apache.ibatis.ognl.NumericCasts: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.NumericCasts numericCasts> = v;
v = new org.apache.ibatis.ognl.NumericValues;
specialinvoke v.<org.apache.ibatis.ognl.NumericValues: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.NumericValues numericValues> = v;
v = new org.apache.ibatis.ognl.NumericLiterals;
specialinvoke v.<org.apache.ibatis.ognl.NumericLiterals: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.NumericLiterals numericLiterals> = v;
v = new org.apache.ibatis.ognl.NumericDefaults;
specialinvoke v.<org.apache.ibatis.ognl.NumericDefaults: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.NumericDefaults numericDefaults> = v;
label:
staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>("org.apache.ibatis.javassist.ClassPool");
v = new org.apache.ibatis.ognl.enhance.ExpressionCompiler;
specialinvoke v.<org.apache.ibatis.ognl.enhance.ExpressionCompiler: void <init>()>();
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler _compiler> = v;
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String,java.lang.Throwable)>("Javassist library is missing in classpath! Please add missed dependency!", v);
throw v;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>("Javassist library cannot be loaded, is it restricted by runtime environment?");
throw v;
label:
v = newarray (java.lang.Class)[0];
<org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class[] EMPTY_CLASS_ARRAY> = v;
v = new org.apache.ibatis.ognl.ArrayPropertyAccessor;
specialinvoke v.<org.apache.ibatis.ognl.ArrayPropertyAccessor: void <init>()>();
v = new org.apache.ibatis.ognl.ObjectPropertyAccessor;
specialinvoke v.<org.apache.ibatis.ognl.ObjectPropertyAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "Ljava/lang/Object;", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "[B", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "[S", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "[C", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "[I", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "[J", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "[F", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "[D", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "[Ljava/lang/Object;", v);
v = new org.apache.ibatis.ognl.ListPropertyAccessor;
specialinvoke v.<org.apache.ibatis.ognl.ListPropertyAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "Ljava/util/List;", v);
v = new org.apache.ibatis.ognl.MapPropertyAccessor;
specialinvoke v.<org.apache.ibatis.ognl.MapPropertyAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "Ljava/util/Map;", v);
v = new org.apache.ibatis.ognl.SetPropertyAccessor;
specialinvoke v.<org.apache.ibatis.ognl.SetPropertyAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "Ljava/util/Set;", v);
v = new org.apache.ibatis.ognl.IteratorPropertyAccessor;
specialinvoke v.<org.apache.ibatis.ognl.IteratorPropertyAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "Ljava/util/Iterator;", v);
v = new org.apache.ibatis.ognl.EnumerationPropertyAccessor;
specialinvoke v.<org.apache.ibatis.ognl.EnumerationPropertyAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setPropertyAccessor(java.lang.Class,org.apache.ibatis.ognl.PropertyAccessor)>(class "Ljava/util/Enumeration;", v);
v = new org.apache.ibatis.ognl.ArrayElementsAccessor;
specialinvoke v.<org.apache.ibatis.ognl.ArrayElementsAccessor: void <init>()>();
v = new org.apache.ibatis.ognl.ObjectElementsAccessor;
specialinvoke v.<org.apache.ibatis.ognl.ObjectElementsAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "Ljava/lang/Object;", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "[B", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "[S", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "[C", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "[I", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "[J", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "[F", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "[D", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "[Ljava/lang/Object;", v);
v = new org.apache.ibatis.ognl.CollectionElementsAccessor;
specialinvoke v.<org.apache.ibatis.ognl.CollectionElementsAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "Ljava/util/Collection;", v);
v = new org.apache.ibatis.ognl.MapElementsAccessor;
specialinvoke v.<org.apache.ibatis.ognl.MapElementsAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "Ljava/util/Map;", v);
v = new org.apache.ibatis.ognl.IteratorElementsAccessor;
specialinvoke v.<org.apache.ibatis.ognl.IteratorElementsAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "Ljava/util/Iterator;", v);
v = new org.apache.ibatis.ognl.EnumerationElementsAccessor;
specialinvoke v.<org.apache.ibatis.ognl.EnumerationElementsAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "Ljava/util/Enumeration;", v);
v = new org.apache.ibatis.ognl.NumberElementsAccessor;
specialinvoke v.<org.apache.ibatis.ognl.NumberElementsAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setElementsAccessor(java.lang.Class,org.apache.ibatis.ognl.ElementsAccessor)>(class "Ljava/lang/Number;", v);
v = new org.apache.ibatis.ognl.ObjectNullHandler;
specialinvoke v.<org.apache.ibatis.ognl.ObjectNullHandler: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "Ljava/lang/Object;", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "[B", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "[S", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "[C", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "[I", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "[J", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "[F", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "[D", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setNullHandler(java.lang.Class,org.apache.ibatis.ognl.NullHandler)>(class "[Ljava/lang/Object;", v);
v = new org.apache.ibatis.ognl.ObjectMethodAccessor;
specialinvoke v.<org.apache.ibatis.ognl.ObjectMethodAccessor: void <init>()>();
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "Ljava/lang/Object;", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "[B", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "[S", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "[C", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "[I", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "[J", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "[F", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "[D", v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setMethodAccessor(java.lang.Class,org.apache.ibatis.ognl.MethodAccessor)>(class "[Ljava/lang/Object;", v);
v = new org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport;
v = newarray (boolean)[0];
specialinvoke v.<org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport: void <init>(int,boolean[])>(0, v);
<org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.OgnlRuntime$ArgsCompatbilityReport NoArgsReport> = v;
return;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.NoSuchMethodException from label to label with label;
catch java.lang.SecurityException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.Exception from label to label with label;
catch java.lang.ClassNotFoundException from label to label with label;
catch java.lang.RuntimeException from label to label with label;
}
}