public class org.apache.ibatis.ognl.ASTMethod extends org.apache.ibatis.ognl.SimpleNode implements org.apache.ibatis.ognl.enhance.OrderedReturn, org.apache.ibatis.ognl.NodeType
{
private static final long serialVersionUID;
private java.lang.String methodName;
private java.lang.String lastExpression;
private java.lang.String coreExpression;
private java.lang.Class getterClass;
public void <init>(int)
{
int v;
org.apache.ibatis.ognl.ASTMethod v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v := @parameter: int;
specialinvoke v.<org.apache.ibatis.ognl.SimpleNode: void <init>(int)>(v);
return;
}
public void <init>(org.apache.ibatis.ognl.OgnlParser, int)
{
int v;
org.apache.ibatis.ognl.OgnlParser v;
org.apache.ibatis.ognl.ASTMethod v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v := @parameter: org.apache.ibatis.ognl.OgnlParser;
v := @parameter: int;
specialinvoke v.<org.apache.ibatis.ognl.SimpleNode: void <init>(org.apache.ibatis.ognl.OgnlParser,int)>(v, v);
return;
}
public void setMethodName(java.lang.String)
{
org.apache.ibatis.ognl.ASTMethod v;
java.lang.String v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v := @parameter: java.lang.String;
v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName> = v;
return;
}
public java.lang.String getMethodName()
{
org.apache.ibatis.ognl.ASTMethod v;
java.lang.String v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
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;
java.lang.Object[] v;
int v, v, v;
java.lang.String v, v;
org.apache.ibatis.ognl.ASTMethod v;
org.apache.ibatis.ognl.Node v;
org.apache.ibatis.ognl.NullHandler v;
java.lang.Class v;
java.lang.Object v, v, v, v;
org.apache.ibatis.ognl.Node[] v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTMethod: int jjtGetNumChildren()>();
v = newarray (java.lang.Object)[v];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = 0;
v = lengthof v;
label:
if v >= v goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.Object getValue(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v[v] = v;
v = v + 1;
goto label;
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
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);
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 = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
v = interfaceinvoke v.<org.apache.ibatis.ognl.NullHandler: java.lang.Object nullMethodResult(org.apache.ibatis.ognl.OgnlContext,java.lang.Object,java.lang.String,java.lang.Object[])>(v, v, v, v);
label:
return v;
}
public java.lang.String getLastExpression()
{
org.apache.ibatis.ognl.ASTMethod v;
java.lang.String v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String lastExpression>;
return v;
}
public java.lang.String getCoreExpression()
{
org.apache.ibatis.ognl.ASTMethod v;
java.lang.String v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String coreExpression>;
return v;
}
public java.lang.Class getGetterClass()
{
org.apache.ibatis.ognl.ASTMethod v;
java.lang.Class v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.Class getterClass>;
return v;
}
public java.lang.Class getSetterClass()
{
org.apache.ibatis.ognl.ASTMethod v;
java.lang.Class v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.Class getterClass>;
return v;
}
public java.lang.String toString()
{
org.apache.ibatis.ognl.ASTMethod v;
org.apache.ibatis.ognl.Node v;
int v, v, v;
java.lang.StringBuilder v;
java.lang.String v, v;
org.apache.ibatis.ognl.Node[] v, v, v, v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v = new java.lang.StringBuilder;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("(");
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
if v == null goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = lengthof v;
if v <= 0 goto label;
v = 0;
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = lengthof v;
if v >= v goto label;
if v <= 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", ");
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(")");
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public java.lang.String toGetSourceString(org.apache.ibatis.ognl.OgnlContext, java.lang.Object)
{
org.apache.ibatis.ognl.ASTMethod v;
java.lang.StringBuilder v, v;
org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler v, v, v, v, v;
java.lang.Class[] v, v;
java.lang.reflect.Method v, v;
org.apache.ibatis.ognl.Node v, v, v, v, v, v, v, v, v, v, v;
int v, v, 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, 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;
org.apache.ibatis.ognl.enhance.UnsupportedCompilationException v, v, 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, v, v, v, v, v, v, v, v, v, v;
java.lang.RuntimeException v, v;
boolean v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.Node[] v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.OgnlContext v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
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)>("Target object is null.");
throw v;
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()>();
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getMethod(org.apache.ibatis.ognl.OgnlContext,java.lang.Class,java.lang.String,org.apache.ibatis.ognl.Node[],boolean)>(v, v, v, v, 0);
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = staticinvoke <org.apache.ibatis.ognl.ASTMethod: java.lang.Class[] getChildrenClasses(org.apache.ibatis.ognl.OgnlContext,org.apache.ibatis.ognl.Node[])>(v, v);
if v != null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
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;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getWriteMethod(java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, 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);
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String toSetSourceString(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String coreExpression> = v;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String coreExpression>;
if v == null goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String coreExpression>;
v = virtualinvoke v.<java.lang.String: int length()>();
if v >= 1 goto label;
label:
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("can\'t find suitable getter method");
throw v;
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String coreExpression>;
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;");
v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String coreExpression> = v;
v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String lastExpression> = "null";
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String coreExpression>;
label:
return v;
label:
return "";
label:
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
v.<org.apache.ibatis.ognl.ASTMethod: java.lang.Class getterClass> = v;
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v == 0 goto label;
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("Javassist does not currently support varargs method calls");
throw v;
label:
v = new java.lang.StringBuilder;
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(");
specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>(v);
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
if v == null goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = lengthof v;
if v <= 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object remove(java.lang.Object)>("_preCast");
v = 0;
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = lengthof v;
if v >= v goto label;
if v <= 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", ");
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
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 = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
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);
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
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);
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:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v == 0 goto label;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
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.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.enhance.ExpressionCompiler: boolean shouldCast(org.apache.ibatis.ognl.Node)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object remove(java.lang.Object)>("_preCast");
label:
if v != null goto label;
v = "";
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v != 0 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:
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
goto label;
label:
v = null;
label:
v = v;
v = class "Lorg/apache/ibatis/ognl/NodeType;";
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
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 = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.NodeType: java.lang.Class getGetterClass()>();
label:
v = v[v];
if v == v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.enhance.ExpressionCompiler: java.lang.String getCastString(java.lang.Class)>(v);
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(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[])>("(\u)ognl.OgnlOps#toArray(\u, \u.class, true)");
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.String createLocalReference(org.apache.ibatis.ognl.OgnlContext,java.lang.String,java.lang.Class)>(v, v, v);
goto label;
label:
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getPrimitiveWrapperClass(java.lang.Class)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getNumericValueGetter(java.lang.Class)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("((\u)ognl.OgnlOps#convertValue(\u,\u.class, true)).\u0001");
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.String createLocalReference(org.apache.ibatis.ognl.OgnlContext,java.lang.String,java.lang.Class)>(v, v, v);
goto label;
label:
v = v[v];
if v == class "Ljava/lang/Object;" goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(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[])>("(\u)ognl.OgnlOps#convertValue(\u,\u.class)");
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.String createLocalReference(org.apache.ibatis.ognl.OgnlContext,java.lang.String,java.lang.Class)>(v, v, v);
goto label;
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.NodeType;
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.NodeType: java.lang.Class getGetterClass()>();
if v == null goto label;
v = class "Ljava/lang/Number;";
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.NodeType: java.lang.Class getGetterClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 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[])>(" ($w) \u0001");
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v + 1;
goto label;
label:
if v == null goto label;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object put(java.lang.String,java.lang.Object)>("_preCast", 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 = virtualinvoke v.<org.apache.ibatis.ognl.ASTMethod: java.lang.Object getValueBody(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(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 = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(")");
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>("");
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 = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.StringBuilder)>(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;");
v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String coreExpression> = v;
v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String lastExpression> = "null";
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);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
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 java.lang.String toSetSourceString(org.apache.ibatis.ognl.OgnlContext, java.lang.Object)
{
org.apache.ibatis.ognl.ASTMethod v;
java.lang.StringBuilder v;
org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler v, v, v, v;
java.lang.Class[] v, v;
java.lang.reflect.Method v;
org.apache.ibatis.ognl.Node v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
int v, 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, 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;
org.apache.ibatis.ognl.enhance.UnsupportedCompilationException v, v, v, 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, v, v, v, v, v, v, v;
java.lang.RuntimeException v;
boolean v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.Node[] v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.ognl.OgnlContext v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: java.lang.Object;
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()>();
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = staticinvoke <org.apache.ibatis.ognl.ASTMethod: java.lang.Class[] getChildrenClasses(org.apache.ibatis.ognl.OgnlContext,org.apache.ibatis.ognl.Node[])>(v, v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.reflect.Method getWriteMethod(java.lang.Class,java.lang.String,java.lang.Class[])>(v, v, v);
if v != null goto label;
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
v = v.<org.apache.ibatis.ognl.ASTMethod: java.lang.String methodName>;
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 determine setter method generation for \u0001");
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = "";
v = new java.lang.StringBuilder;
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(");
specialinvoke v.<java.lang.StringBuilder: void <init>(java.lang.String)>(v);
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.lang.reflect.Method: java.lang.Class getReturnType()>();
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node parent>;
v = v instanceof org.apache.ibatis.ognl.ASTTest;
if v != 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class getReturnType()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getPrimitiveWrapperClass(java.lang.Class)>(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[])>("new \u0001(");
staticinvoke <org.apache.ibatis.ognl.enhance.ExpressionCompiler: void addCastString(org.apache.ibatis.ognl.OgnlContext,java.lang.String)>(v, v);
v = ")";
v.<org.apache.ibatis.ognl.ASTMethod: java.lang.Class getterClass> = v;
label:
v = virtualinvoke v.<java.lang.reflect.Method: boolean isVarArgs()>();
if v == 0 goto label;
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("Javassist does not currently support varargs method calls");
throw v;
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
if v == null goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = lengthof v;
if v <= 0 goto label;
v = virtualinvoke v.<java.lang.reflect.Method: java.lang.Class[] getParameterTypes()>();
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object remove(java.lang.Object)>("_preCast");
v = 0;
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = lengthof v;
if v >= v goto label;
if v <= 0 goto label;
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(", ");
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
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 = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
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);
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object getRoot()>();
v = interfaceinvoke v.<org.apache.ibatis.ognl.Node: java.lang.String toSetSourceString(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = <java.lang.Void: java.lang.Class TYPE>;
if v == v goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Class getCurrentType()>();
v = <java.lang.Void: java.lang.Class TYPE>;
if v != v goto label;
label:
v = new org.apache.ibatis.ognl.enhance.UnsupportedCompilationException;
specialinvoke v.<org.apache.ibatis.ognl.enhance.UnsupportedCompilationException: void <init>(java.lang.String)>("Method argument can\'t be a void type.");
throw v;
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 = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.ASTProperty;
if v != 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.ASTMethod;
if v != 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.ASTStaticMethod;
if v != 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.ASTChain;
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)>("ASTMethod setter child returned null from a sub property expression.");
throw v;
label:
v = "null";
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.ASTConst;
if v == 0 goto label;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentType(java.lang.Class)>(v);
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
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.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.enhance.ExpressionCompiler: boolean shouldCast(org.apache.ibatis.ognl.Node)>(v);
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object remove(java.lang.Object)>("_preCast");
label:
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");
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
goto label;
label:
v = null;
label:
v = v;
v = class "Lorg/apache/ibatis/ognl/NodeType;";
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
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 = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.NodeType: java.lang.Class getGetterClass()>();
label:
v = v[v];
if v == v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.enhance.ExpressionCompiler: java.lang.String getCastString(java.lang.Class)>(v);
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(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[])>("(\u)ognl.OgnlOps#toArray(\u, \u.class)");
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.String createLocalReference(org.apache.ibatis.ognl.OgnlContext,java.lang.String,java.lang.Class)>(v, v, v);
goto label;
label:
v = v[v];
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 goto label;
v = v[v];
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.Class getPrimitiveWrapperClass(java.lang.Class)>(v);
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: java.lang.String getNumericValueGetter(java.lang.Class)>(v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("((\u)ognl.OgnlOps#convertValue(\u,\u.class, true)).\u0001");
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.String createLocalReference(org.apache.ibatis.ognl.OgnlContext,java.lang.String,java.lang.Class)>(v, v, v);
goto label;
label:
v = v[v];
if v == class "Ljava/lang/Object;" goto label;
v = staticinvoke <org.apache.ibatis.ognl.OgnlRuntime: org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler getCompiler()>();
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = v[v];
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(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[])>("(\u)ognl.OgnlOps#convertValue(\u,\u.class)");
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.enhance.OgnlExpressionCompiler: java.lang.String createLocalReference(org.apache.ibatis.ognl.OgnlContext,java.lang.String,java.lang.Class)>(v, v, v);
goto label;
label:
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = v instanceof org.apache.ibatis.ognl.NodeType;
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.NodeType: java.lang.Class getGetterClass()>();
if v == null goto label;
v = class "Ljava/lang/Number;";
v = v.<org.apache.ibatis.ognl.ASTMethod: org.apache.ibatis.ognl.Node[] children>;
v = v[v];
v = interfaceinvoke v.<org.apache.ibatis.ognl.NodeType: java.lang.Class getGetterClass()>();
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: boolean isPrimitive()>();
if v == 0 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[])>(" ($w) \u0001");
label:
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v + 1;
goto label;
label:
if v == null goto label;
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: java.lang.Object put(java.lang.String,java.lang.Object)>("_preCast", 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 = virtualinvoke v.<org.apache.ibatis.ognl.ASTMethod: java.lang.Object getValueBody(org.apache.ibatis.ognl.OgnlContext,java.lang.Object)>(v, v);
virtualinvoke v.<org.apache.ibatis.ognl.OgnlContext: void setCurrentObject(java.lang.Object)>(v);
label:
goto label;
label:
v := @caughtexception;
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);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.StringBuilder,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[])>("\u)\u0001");
return v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
private static java.lang.Class getClassMatchingAllChildren(org.apache.ibatis.ognl.OgnlContext, org.apache.ibatis.ognl.Node[])
{
org.apache.ibatis.ognl.OgnlContext v;
java.lang.Class[] v;
int v, v;
java.lang.Class v, v, v;
org.apache.ibatis.ognl.Node[] v;
boolean v, v, v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: org.apache.ibatis.ognl.Node[];
v = staticinvoke <org.apache.ibatis.ognl.ASTMethod: java.lang.Class[] getChildrenClasses(org.apache.ibatis.ognl.OgnlContext,org.apache.ibatis.ognl.Node[])>(v, v);
v = null;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v != null goto label;
v = class "Ljava/lang/Object;";
goto label;
label:
if v != null goto label;
v = v;
goto label;
label:
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;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.Class getSuperclass()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
v = v;
label:
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v != 0 goto label;
v = class "Ljava/lang/Object;";
goto label;
label:
v = v + 1;
goto label;
label:
if v != null goto label;
v = class "Ljava/lang/Object;";
label:
return v;
}
private static java.lang.Class[] getChildrenClasses(org.apache.ibatis.ognl.OgnlContext, org.apache.ibatis.ognl.Node[])
{
org.apache.ibatis.ognl.OgnlContext v;
int v, v, v;
java.lang.String v;
boolean v, v, v, v;
java.lang.UnsupportedOperationException v;
org.apache.ibatis.ognl.Node v;
java.lang.Class[] v;
java.lang.RuntimeException v;
java.lang.Class v, v, v;
java.lang.ClassNotFoundException v;
org.apache.ibatis.ognl.Node[] v, v;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
v := @parameter: org.apache.ibatis.ognl.Node[];
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 = v instanceof org.apache.ibatis.ognl.ASTList;
if v == 0 goto label;
v[v] = class "Ljava/util/List;";
goto label;
label:
v = v instanceof org.apache.ibatis.ognl.NodeType;
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.ibatis.ognl.NodeType: java.lang.Class getGetterClass()>();
v[v] = v;
goto label;
label:
v = v instanceof org.apache.ibatis.ognl.ASTCtor;
if v == 0 goto label;
label:
v = virtualinvoke v.<org.apache.ibatis.ognl.ASTCtor: java.lang.Class getCreatedClass(org.apache.ibatis.ognl.OgnlContext)>(v);
v[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.ASTTest;
if v == 0 goto label;
v = v.<org.apache.ibatis.ognl.ASTTest: org.apache.ibatis.ognl.Node[] children>;
v = staticinvoke <org.apache.ibatis.ognl.ASTMethod: java.lang.Class getClassMatchingAllChildren(org.apache.ibatis.ognl.OgnlContext,org.apache.ibatis.ognl.Node[])>(v, v);
v[v] = v;
goto label;
label:
v = new java.lang.UnsupportedOperationException;
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[])>("Don\'t know how to handle child: \u0001");
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + 1;
goto label;
label:
return v;
catch java.lang.ClassNotFoundException from label to label with label;
}
public boolean isSimpleMethod(org.apache.ibatis.ognl.OgnlContext)
{
org.apache.ibatis.ognl.OgnlContext v;
org.apache.ibatis.ognl.ASTMethod v;
v := @this: org.apache.ibatis.ognl.ASTMethod;
v := @parameter: org.apache.ibatis.ognl.OgnlContext;
return 1;
}
}