public class org.apache.ibatis.ognl.ASTProperty extends org.apache.ibatis.ognl.SimpleNode implements org.apache.ibatis.ognl.NodeType
{
private static final long serialVersionUID;
private boolean indexedAccess;
private java.lang.Class getterClass;
private java.lang.Class setterClass;
public void <init>(int)
{
int v;
org.apache.ibatis.ognl.ASTProperty v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: int;
specialinvoke v.<org.apache.ibatis.ognl.SimpleNode: void <init>(int)>(v);
v.<org.apache.ibatis.ognl.ASTProperty: boolean indexedAccess> = 0;
return;
}
public void setIndexedAccess(boolean)
{
org.apache.ibatis.ognl.ASTProperty v;
boolean v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: boolean;
v.<org.apache.ibatis.ognl.ASTProperty: boolean indexedAccess> = v;
return;
}
public boolean isIndexedAccess()
{
org.apache.ibatis.ognl.ASTProperty v;
boolean v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v = v.<org.apache.ibatis.ognl.ASTProperty: boolean indexedAccess>;
return v;
}
public int getIndexedPropertyType(org.apache.ibatis.ognl.OgnlContext, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
java.lang.Throwable v;
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.ASTProperty v;
int v, v;
java.lang.Class v, v, v, v;
java.lang.Object v, v;
org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler v;
boolean v, v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean isIndexedAccess()>();
if v != 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Object getProperty(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v = v instanceof java.lang.String;
if v == 0 goto label;
if v != null goto label;
v = null;
goto label;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.Class getInterfaceClass(java.lang.Class)>(v);
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: int getIndexedPropertyType(java.lang.Class,java.lang.String)>(v, v);
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setPreviousType(java.lang.Class)>(v);
return v;
label:
v = <org.apache.ibatis.ognl.OgnlRuntime: int INDEXED_PROPERTY_NONE>;
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setPreviousType(java.lang.Class)>(v);
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setPreviousType(java.lang.Class)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public java.lang.Object getProperty(org.apache.ibatis.ognl.OgnlContext, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.Node v;
java.lang.Object v, v, v;
org.apache.ibatis.ognl.ASTProperty v;
org.apache.ibatis.ognl.Node[] v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
return v;
}
protected java.lang.Object getValueBody(org.apache.ibatis.ognl.OgnlContext, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.NullHandler v;
java.lang.Class v;
java.lang.Object v, v, v;
org.apache.ibatis.ognl.ASTProperty v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Object getProperty(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Object getProperty(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
if v != null goto 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.NullHandler getNullHandler(java.lang.Class)>(v);
v = interfaceinvoke v.<org.apache.ibatis.ognl.NullHandler: java.lang.Object nullPropertyValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
label:
return v;
}
protected void setValueBody(org.apache.ibatis.ognl.OgnlContext, java.lang.Object, java.lang.Object) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Object v, v, v;
org.apache.ibatis.ognl.ASTProperty v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Object getProperty(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: void setProperty(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object,java.lang.Object)>(v, v, v, v);
return;
}
public boolean isNodeSimpleProperty(org.apache.ibatis.ognl.OgnlContext) throws org.apache.ibatis.ognl.OgnlException
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.Node v;
org.apache.ibatis.ognl.ASTProperty v;
int v;
org.apache.ibatis.ognl.Node[] v, v, v;
boolean v, v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
if v == null goto label;
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = lengthof v;
if v != 1 goto label;
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.SimpleNode: boolean isConstant(org.apache.ibatis.ognl.OgnlContext)>(v);
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public java.lang.Class getGetterClass()
{
java.lang.Class v;
org.apache.ibatis.ognl.ASTProperty v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v = v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass>;
return v;
}
public java.lang.Class getSetterClass()
{
java.lang.Class v;
org.apache.ibatis.ognl.ASTProperty v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v = v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class setterClass>;
return v;
}
public java.lang.String toString()
{
org.apache.ibatis.ognl.Node v, v;
org.apache.ibatis.ognl.ASTProperty v;
java.lang.Object v;
java.lang.String v;
org.apache.ibatis.ognl.Node[] v, v;
boolean v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean isIndexedAccess()>();
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.ibatis.ognl.Node)>(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]");
goto label;
label:
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTConst: java.lang.Object getValue()>();
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
label:
return v;
}
public java.lang.String toGetSourceString(org.apache.ibatis.ognl.OgnlContext, java.lang.Object)
{
org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler v, v;
java.lang.Object[] v;
java.lang.reflect.Method v, v, v, v, v;
org.apache.ibatis.ognl.Node v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.NoSuchPropertyException v, v;
int v;
java.lang.Class v, v, v, v, v, v, v, v, v, v, v, v, v, v, 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, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.enhance.UnsupportedCompilationException v, v, v;
org.apache.ibatis.ognl.ASTProperty v;
java.beans.PropertyDescriptor v, v;
java.lang.Throwable v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.RuntimeException v;
org.apache.ibatis.ognl.OgnlException v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.MemberAccess v;
org.apache.ibatis.ognl.Node[] v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.PropertyAccessor v, v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
if v != null goto label;
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("Current target is null.");
throw v;
label:
v = "";
v = null;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean isIndexedAccess()>();
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
if v == null goto label;
v = class "Lorg/apache/ibatis/ognl/DynamicSubscript;";
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
label:
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("Value passed as indexed property was null or not supported.");
throw v;
label:
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.String toGetSourceString(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
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 = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
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 = 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 = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = v instanceof java.lang.String;
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[])>("\"\u0001\"");
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object get(java.lang.Object)>("_indexedMethod");
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object remove(java.lang.Object)>("_indexedMethod");
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass> = v;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = newarray (java.lang.Object)[1];
v[0] = v;
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);
v = v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.Class getSuperOrInterfaceClass(java.lang.reflect.Method,java.lang.Class)>(v, v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentAccessor(java.lang.Class)>(v);
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
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(\u)");
label:
return v;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PropertyAccessor getPropertyAccessor(java.lang.Class)>(v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
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);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setPreviousType(java.lang.Class)>(v);
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = v instanceof java.lang.Number;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getPrimitiveWrapperClass(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
label:
v = interfaceinvoke v.<org.apache.ibatis.ognl.PropertyAccessor: java.lang.String getSourceAccessor(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass> = v;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
label:
return v;
label:
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTConst: java.lang.Object getValue()>();
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
v = class "Ljava/util/Iterator;";
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = class "Ljava/util/Iterator;";
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>("next");
if v != 0 goto label;
label:
v = v;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
goto label;
label:
v := @caughtexception;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
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 = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getReadMethod()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getReadMethod()>();
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 = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.Class)>(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[])>("Member access forbidden for property \u on class \u0001");
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: int getIndexedPropertyType(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
if v <= 0 goto label;
if v == null goto label;
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 = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node parent>;
if v != null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getReadMethod(java.lang.Class,java.lang.String)>(v, v);
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001()");
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass> = v;
goto label;
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object put(java.lang.String,java.lang.Object)>("_indexedMethod", v);
goto label;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PropertyAccessor getPropertyAccessor(java.lang.Class)>(v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
if v != null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.beans.PropertyDescriptor getProperty(java.lang.Class,java.lang.String)>(v, v);
if v == null goto label;
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getReadMethod()>();
if v == null goto label;
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getReadMethod()>();
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.String getName()>();
goto label;
label:
v = <java.lang.Integer: java.lang.Class TYPE>;
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass> = v;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentAccessor(java.lang.Class)>(v);
v = <java.lang.Integer: java.lang.Class TYPE>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(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[])>(".\u0001");
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getReadMethod()>();
if v == null goto label;
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getReadMethod()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>(".\u0001()");
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.String toGetSourceString(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = v instanceof java.lang.String;
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[])>("\"\u0001\"");
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setPreviousType(java.lang.Class)>(v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.PropertyAccessor: java.lang.String getSourceAccessor(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass> = 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:
if v == null goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass> = v;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.Class getSuperOrInterfaceClass(java.lang.reflect.Method,java.lang.Class)>(v, v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentAccessor(java.lang.Class)>(v);
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
return v;
catch org.apache.ibatis.ognl.NoSuchPropertyException from label to label with label;
catch org.apache.ibatis.ognl.NoSuchPropertyException 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;
catch java.lang.Throwable from label to label with label;
}
java.lang.reflect.Method getIndexedWriteMethod(java.beans.PropertyDescriptor)
{
java.beans.PropertyDescriptor v;
org.apache.ibatis.ognl.ASTProperty v;
java.lang.reflect.Method v, v;
boolean v, v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: java.beans.PropertyDescriptor;
v = v instanceof java.beans.IndexedPropertyDescriptor;
if v == 0 goto label;
v = virtualinvoke v.<java.beans.IndexedPropertyDescriptor: java.lang.reflect.Method getIndexedWriteMethod()>();
return v;
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()>();
return v;
label:
return null;
}
public java.lang.String toSetSourceString(org.apache.ibatis.ognl.OgnlContext, java.lang.Object)
{
org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler v, v, v;
java.lang.Object[] v;
java.lang.Class[] v, v;
java.lang.reflect.Method v, v, v, v;
org.apache.ibatis.ognl.Node v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.NoSuchPropertyException v, v;
int v;
java.lang.Class v, v, v, v, v, v, v, 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, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.enhance.UnsupportedCompilationException v, v, v, v;
org.apache.ibatis.ognl.ASTProperty v;
java.beans.PropertyDescriptor v;
java.lang.Throwable v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.RuntimeException v;
org.apache.ibatis.ognl.OgnlException v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.MemberAccess v;
org.apache.ibatis.ognl.Node[] v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.PropertyAccessor v, v;
v := @this: org.apache.ibatis.ognl.ASTProperty;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v = "";
v = null;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
if v != null goto label;
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("Current target is null.");
throw v;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean isIndexedAccess()>();
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
if v != null goto label;
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("Value passed as indexed property is null, can\'t enhance statement to bytecode.");
throw v;
label:
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.String toGetSourceString(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
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 = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
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 = 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 = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = v instanceof java.lang.String;
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[])>("\"\u0001\"");
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object get(java.lang.Object)>("_indexedMethod");
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object remove(java.lang.Object)>("_indexedMethod");
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object remove(java.lang.Object)>("_indexedDescriptor");
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean lastChild(org.apache.ibatis.ognl.OgnlContext)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: java.lang.reflect.Method getIndexedWriteMethod(java.beans.PropertyDescriptor)>(v);
if v != null goto label;
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("Indexed property has no corresponding write method.");
throw v;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = v[0];
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class setterClass> = v;
v = null;
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = newarray (java.lang.Object)[1];
v[0] = v;
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:
v = v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class setterClass>;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.Class getSuperOrInterfaceClass(java.lang.reflect.Method,java.lang.Class)>(v, v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentAccessor(java.lang.Class)>(v);
if v != 0 goto label;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
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(\u)");
label:
return v;
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
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(\u, $3)");
label:
return v;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PropertyAccessor getPropertyAccessor(java.lang.Class)>(v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getPreviousType()>();
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);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setPreviousType(java.lang.Class)>(v);
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = v instanceof java.lang.Number;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getPrimitiveWrapperClass(java.lang.Class)>(v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean lastChild(org.apache.ibatis.ognl.OgnlContext)>(v);
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.ibatis.ognl.PropertyAccessor: java.lang.String getSourceSetter(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
goto label;
label:
v = interfaceinvoke v.<org.apache.ibatis.ognl.PropertyAccessor: java.lang.String getSourceAccessor(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass> = v;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
label:
return v;
label:
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTConst: java.lang.Object getValue()>();
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
v = class "Ljava/util/Iterator;";
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = class "Ljava/util/Iterator;";
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>("next");
if v != 0 goto label;
label:
v = v;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
goto label;
label:
v := @caughtexception;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
throw v;
label:
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.Class getInterfaceClass(java.lang.Class)>(v);
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 = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean lastChild(org.apache.ibatis.ognl.OgnlContext)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getWriteMethod()>();
goto label;
label:
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getReadMethod()>();
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: org.apache.ibatis.ognl.MemberAccess getMemberAccess()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
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 = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.Class)>(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[])>("Member access forbidden for property \u on class \u0001");
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>(v);
throw v;
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: int getIndexedPropertyType(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
if v <= 0 goto label;
v = v instanceof java.beans.IndexedPropertyDescriptor;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean lastChild(org.apache.ibatis.ognl.OgnlContext)>(v);
if v == 0 goto label;
v = virtualinvoke v.<java.beans.IndexedPropertyDescriptor: java.lang.reflect.Method getIndexedWriteMethod()>();
goto label;
label:
v = virtualinvoke v.<java.beans.IndexedPropertyDescriptor: java.lang.reflect.Method getIndexedReadMethod()>();
label:
v = v;
goto label;
label:
v = v instanceof org.apache.ibatis.ognl.ObjectIndexedPropertyDescriptor;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean lastChild(org.apache.ibatis.ognl.OgnlContext)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.ObjectIndexedPropertyDescriptor: java.lang.reflect.Method getIndexedWriteMethod()>();
goto label;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.ObjectIndexedPropertyDescriptor: java.lang.reflect.Method getIndexedReadMethod()>();
label:
v = v;
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 = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node parent>;
if v != null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getWriteMethod(java.lang.Class,java.lang.String)>(v, v);
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = v[0];
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.enhance.ExpressionCompiler: java.lang.String getCastString(java.lang.Class)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
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((\u)$3)");
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class setterClass> = v;
goto label;
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object put(java.lang.String,java.lang.Object)>("_indexedMethod", v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object put(java.lang.String,java.lang.Object)>("_indexedDescriptor", v);
goto label;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.PropertyAccessor getPropertyAccessor(java.lang.Class)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class setterClass> = v;
label:
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node parent>;
if v == null goto label;
if v == null goto label;
if v != null goto label;
v = virtualinvoke v.<java.beans.PropertyDescriptor: java.lang.reflect.Method getReadMethod()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("\u0001()");
goto label;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = "";
goto label;
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.String toGetSourceString(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v = v.<org.apache.ibatis.ognl.ASTProperty: org.apache.ibatis.ognl.Node[] children>;
v = v[0];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = v instanceof java.lang.String;
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[])>("\"\u0001\"");
label:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTProperty: boolean lastChild(org.apache.ibatis.ognl.OgnlContext)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.PropertyAccessor: java.lang.String getSourceAccessor(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
goto label;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getCurrentObject()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.PropertyAccessor: java.lang.String getSourceSetter(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.Object)>(v, v, v);
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v.<org.apache.ibatis.ognl.ASTProperty: java.lang.Class getterClass> = 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:
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
if v == null goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getDeclaringClass()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.Class getSuperOrInterfaceClass(java.lang.reflect.Method,java.lang.Class)>(v, v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentAccessor(java.lang.Class)>(v);
label:
return v;
catch org.apache.ibatis.ognl.NoSuchPropertyException from label to label with label;
catch org.apache.ibatis.ognl.NoSuchPropertyException 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;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
}