class org.apache.dubbo.common.json.J2oVisitor extends java.lang.Object implements org.apache.dubbo.common.json.JSONVisitor
{
public static final boolean[] EMPTY_BOOL_ARRAY;
public static final byte[] EMPTY_BYTE_ARRAY;
public static final char[] EMPTY_CHAR_ARRAY;
public static final short[] EMPTY_SHORT_ARRAY;
public static final int[] EMPTY_INT_ARRAY;
public static final long[] EMPTY_LONG_ARRAY;
public static final float[] EMPTY_FLOAT_ARRAY;
public static final double[] EMPTY_DOUBLE_ARRAY;
public static final java.lang.String[] EMPTY_STRING_ARRAY;
private java.lang.Class[] mTypes;
private java.lang.Class mType;
private java.lang.Object mValue;
private org.apache.dubbo.common.bytecode.Wrapper mWrapper;
private org.apache.dubbo.common.json.JSONConverter mConverter;
private org.apache.dubbo.common.utils.Stack mStack;
void <init>(java.lang.Class, org.apache.dubbo.common.json.JSONConverter)
{
org.apache.dubbo.common.utils.Stack v;
java.lang.Class v;
org.apache.dubbo.common.json.J2oVisitor v;
org.apache.dubbo.common.json.JSONConverter v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: java.lang.Class;
v := @parameter: org.apache.dubbo.common.json.JSONConverter;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = class "[Ljava/lang/Object;";
v = new org.apache.dubbo.common.utils.Stack;
specialinvoke v.<org.apache.dubbo.common.utils.Stack: void <init>()>();
v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack> = v;
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = v;
v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.json.JSONConverter mConverter> = v;
return;
}
void <init>(java.lang.Class[], org.apache.dubbo.common.json.JSONConverter)
{
org.apache.dubbo.common.utils.Stack v;
java.lang.Class[] v;
org.apache.dubbo.common.json.J2oVisitor v;
org.apache.dubbo.common.json.JSONConverter v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: java.lang.Class[];
v := @parameter: org.apache.dubbo.common.json.JSONConverter;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = class "[Ljava/lang/Object;";
v = new org.apache.dubbo.common.utils.Stack;
specialinvoke v.<org.apache.dubbo.common.utils.Stack: void <init>()>();
v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack> = v;
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class[] mTypes> = v;
v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.json.JSONConverter mConverter> = v;
return;
}
private static java.lang.Object toArray(java.lang.Class, org.apache.dubbo.common.utils.Stack, int) throws org.apache.dubbo.common.json.ParseException
{
byte[] v, v;
byte v;
double[] v, v;
float[] v, v;
long v;
short v;
java.lang.String v;
boolean[] v, v;
char[] v, v;
int[] v, v;
boolean v, v, v, v, v, v, v, v, v;
float v;
short[] v, v;
org.apache.dubbo.common.utils.Stack v;
java.lang.String[] v, v;
long[] v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
double v;
char v;
java.lang.Class v, v, v, v, v, v, v, v, v;
java.lang.Object v, v, v, v, v, v, v, v, v, v, v;
v := @parameter: java.lang.Class;
v := @parameter: org.apache.dubbo.common.utils.Stack;
v := @parameter: int;
if v != class "Ljava/lang/String;" goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: java.lang.String[] EMPTY_STRING_ARRAY>;
return v;
label:
v = newarray (java.lang.String)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
label:
v[v] = v;
v = v - 1;
goto label;
label:
return v;
label:
v = <java.lang.Boolean: java.lang.Class TYPE>;
if v != v goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: boolean[] EMPTY_BOOL_ARRAY>;
return v;
label:
v = newarray (boolean)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v instanceof java.lang.Boolean;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
v[v] = v;
label:
v = v - 1;
goto label;
label:
return v;
label:
v = <java.lang.Integer: java.lang.Class TYPE>;
if v != v goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: int[] EMPTY_INT_ARRAY>;
return v;
label:
v = newarray (int)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v instanceof java.lang.Number;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Number: int intValue()>();
v[v] = v;
label:
v = v - 1;
goto label;
label:
return v;
label:
v = <java.lang.Long: java.lang.Class TYPE>;
if v != v goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: long[] EMPTY_LONG_ARRAY>;
return v;
label:
v = newarray (long)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v instanceof java.lang.Number;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Number: long longValue()>();
v[v] = v;
label:
v = v - 1;
goto label;
label:
return v;
label:
v = <java.lang.Float: java.lang.Class TYPE>;
if v != v goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: float[] EMPTY_FLOAT_ARRAY>;
return v;
label:
v = newarray (float)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v instanceof java.lang.Number;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Number: float floatValue()>();
v[v] = v;
label:
v = v - 1;
goto label;
label:
return v;
label:
v = <java.lang.Double: java.lang.Class TYPE>;
if v != v goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: double[] EMPTY_DOUBLE_ARRAY>;
return v;
label:
v = newarray (double)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v instanceof java.lang.Number;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Number: double doubleValue()>();
v[v] = v;
label:
v = v - 1;
goto label;
label:
return v;
label:
v = <java.lang.Byte: java.lang.Class TYPE>;
if v != v goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: byte[] EMPTY_BYTE_ARRAY>;
return v;
label:
v = newarray (byte)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v instanceof java.lang.Number;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Number: byte byteValue()>();
v[v] = v;
label:
v = v - 1;
goto label;
label:
return v;
label:
v = <java.lang.Character: java.lang.Class TYPE>;
if v != v goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: char[] EMPTY_CHAR_ARRAY>;
return v;
label:
v = newarray (char)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v instanceof java.lang.Character;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Character: char charValue()>();
v[v] = v;
label:
v = v - 1;
goto label;
label:
return v;
label:
v = <java.lang.Short: java.lang.Class TYPE>;
if v != v goto label;
if v != 0 goto label;
v = <org.apache.dubbo.common.json.J2oVisitor: short[] EMPTY_SHORT_ARRAY>;
return v;
label:
v = newarray (short)[v];
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v instanceof java.lang.Number;
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Number: short shortValue()>();
v[v] = v;
label:
v = v - 1;
goto label;
label:
return v;
label:
v = staticinvoke <java.lang.reflect.Array: java.lang.Object newInstance(java.lang.Class,int)>(v, v);
v = v - 1;
label:
if v < 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
staticinvoke <java.lang.reflect.Array: void set(java.lang.Object,int,java.lang.Object)>(v, v, v);
v = v - 1;
goto label;
label:
return v;
}
private static java.lang.String name(java.lang.Class[])
{
int v, v;
java.lang.Class[] v;
java.lang.Class v;
java.lang.StringBuilder v;
java.lang.String v, v;
v := @parameter: java.lang.Class[];
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>()>();
v = 0;
label:
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[v];
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public void begin()
{
org.apache.dubbo.common.json.J2oVisitor v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
return;
}
public java.lang.Object end(java.lang.Object, boolean) throws org.apache.dubbo.common.json.ParseException
{
java.lang.IllegalStateException v;
org.apache.dubbo.common.utils.Stack v;
java.io.IOException v;
org.apache.dubbo.common.json.J2oVisitor v;
org.apache.dubbo.common.json.JSONConverter v;
java.lang.Class v;
java.lang.Object v, v;
java.lang.String v;
boolean v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: java.lang.Object;
v := @parameter: boolean;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
virtualinvoke v.<org.apache.dubbo.common.utils.Stack: void clear()>();
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.json.JSONConverter mConverter>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = interfaceinvoke v.<org.apache.dubbo.common.json.JSONConverter: java.lang.Object readValue(java.lang.Class,java.lang.Object)>(v, v);
label:
return v;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
catch java.io.IOException from label to label with label;
}
public void objectBegin() throws org.apache.dubbo.common.json.ParseException
{
java.lang.IllegalStateException v;
org.apache.dubbo.common.utils.Stack v, v, v;
org.apache.dubbo.common.bytecode.Wrapper v, v;
java.util.HashMap v;
org.apache.dubbo.common.json.J2oVisitor v;
java.lang.ReflectiveOperationException v;
java.lang.String v, v;
boolean v, v;
java.util.concurrent.ConcurrentHashMap v;
java.lang.Exception v;
org.apache.dubbo.common.json.ParseException v;
java.lang.Class v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v, v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue>;
virtualinvoke v.<org.apache.dubbo.common.utils.Stack: void push(java.lang.Object)>(v);
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
virtualinvoke v.<org.apache.dubbo.common.utils.Stack: void push(java.lang.Object)>(v);
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.bytecode.Wrapper mWrapper>;
virtualinvoke v.<org.apache.dubbo.common.utils.Stack: void push(java.lang.Object)>(v);
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
if v == class "Ljava/lang/Object;" goto label;
v = class "Ljava/util/Map;";
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v != 0 goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
if v == class "Ljava/lang/Object;" goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: java.lang.Object newInstance()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue> = v;
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
v = virtualinvoke v.<java.lang.Exception: java.lang.String getMessage()>();
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
if v != class "Ljava/util/concurrent/ConcurrentMap;" goto label;
v = new java.util.concurrent.ConcurrentHashMap;
specialinvoke v.<java.util.concurrent.ConcurrentHashMap: void <init>()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue> = v;
goto label;
label:
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue> = v;
label:
v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.bytecode.Wrapper mWrapper> = null;
goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: java.lang.Object newInstance()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue> = v;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = staticinvoke <org.apache.dubbo.common.bytecode.Wrapper: org.apache.dubbo.common.bytecode.Wrapper getWrapper(java.lang.Class)>(v);
v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.bytecode.Wrapper mWrapper> = v;
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.dubbo.common.json.ParseException;
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: java.lang.String toString(java.lang.Throwable)>(v);
specialinvoke v.<org.apache.dubbo.common.json.ParseException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
catch java.lang.Exception from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
catch java.lang.InstantiationException from label to label with label;
}
public java.lang.Object objectEnd(int)
{
org.apache.dubbo.common.utils.Stack v, v, v;
org.apache.dubbo.common.json.J2oVisitor v;
int v;
java.lang.Object v, v, v, v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: int;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.bytecode.Wrapper mWrapper> = v;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = v;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue> = v;
return v;
}
public void objectItem(java.lang.String)
{
org.apache.dubbo.common.utils.Stack v;
org.apache.dubbo.common.bytecode.Wrapper v, v;
java.lang.Class v;
org.apache.dubbo.common.json.J2oVisitor v;
java.lang.String v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: java.lang.String;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
virtualinvoke v.<org.apache.dubbo.common.utils.Stack: void push(java.lang.Object)>(v);
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.bytecode.Wrapper mWrapper>;
if v != null goto label;
v = class "Ljava/lang/Object;";
goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.bytecode.Wrapper mWrapper>;
v = virtualinvoke v.<org.apache.dubbo.common.bytecode.Wrapper: java.lang.Class getPropertyType(java.lang.String)>(v);
label:
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = v;
return;
}
public void objectItemValue(java.lang.Object, boolean) throws org.apache.dubbo.common.json.ParseException
{
org.apache.dubbo.common.utils.Stack v;
org.apache.dubbo.common.bytecode.Wrapper v, v;
org.apache.dubbo.common.json.J2oVisitor v;
java.lang.ReflectiveOperationException v;
java.lang.String v, v, v, v;
boolean v, v, v, v;
java.io.IOException v;
org.apache.dubbo.common.json.JSONConverter v;
java.lang.reflect.Field v;
org.apache.dubbo.common.json.ParseException v, v;
java.lang.Class v, v, v;
java.lang.Object v, v, v, v, v, v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: java.lang.Object;
v := @parameter: boolean;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.bytecode.Wrapper mWrapper>;
if v != null goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
if v == null goto label;
if v == 0 goto label;
if v == null goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.json.JSONConverter mConverter>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = interfaceinvoke v.<org.apache.dubbo.common.json.JSONConverter: java.lang.Object readValue(java.lang.Class,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.dubbo.common.json.ParseException;
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: java.lang.String toString(java.lang.Throwable)>(v);
specialinvoke v.<org.apache.dubbo.common.json.ParseException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue>;
v = v instanceof java.lang.Throwable;
if v == 0 goto label;
v = "message";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
label:
v = class "Ljava/lang/Throwable;";
v = virtualinvoke v.<java.lang.Class: java.lang.reflect.Field getDeclaredField(java.lang.String)>("detailMessage");
staticinvoke <org.apache.dubbo.common.utils.ReflectUtils: void makeAccessible(java.lang.reflect.Field)>(v);
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue>;
virtualinvoke v.<java.lang.reflect.Field: void set(java.lang.Object,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.dubbo.common.json.ParseException;
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: java.lang.String toString(java.lang.Throwable)>(v);
specialinvoke v.<org.apache.dubbo.common.json.ParseException: void <init>(java.lang.String)>(v);
throw v;
label:
v = "class";
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.bytecode.Wrapper mWrapper>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Object mValue>;
virtualinvoke v.<org.apache.dubbo.common.bytecode.Wrapper: void setPropertyValue(java.lang.Object,java.lang.String,java.lang.Object)>(v, v, v);
label:
return;
catch java.io.IOException from label to label with label;
catch java.lang.NoSuchFieldException from label to label with label;
catch java.lang.IllegalAccessException from label to label with label;
}
public void arrayBegin() throws org.apache.dubbo.common.json.ParseException
{
org.apache.dubbo.common.utils.Stack v;
org.apache.dubbo.common.json.J2oVisitor v;
org.apache.dubbo.common.json.ParseException v;
java.lang.Class v, v, v, v, v, v, v, v;
java.lang.String v, v;
boolean v, v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
virtualinvoke v.<org.apache.dubbo.common.utils.Stack: void push(java.lang.Object)>(v);
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = v;
goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
if v == class "Ljava/lang/Object;" goto label;
v = class "Ljava/util/Collection;";
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
label:
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = class "Ljava/lang/Object;";
goto label;
label:
v = new org.apache.dubbo.common.json.ParseException;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
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[])>("Convert error, can not load json array data into class [\u].");
specialinvoke v.<org.apache.dubbo.common.json.ParseException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public java.lang.Object arrayEnd(int) throws org.apache.dubbo.common.json.ParseException
{
java.lang.IllegalStateException v;
org.apache.dubbo.common.json.J2oVisitor v;
boolean v, v, v, v, v, v;
java.lang.Exception v;
org.apache.dubbo.common.utils.Stack v, v, v, v;
java.util.ArrayList v, v;
java.util.HashSet v;
int v, v, v, v, v;
java.lang.String v, v, v;
java.util.LinkedList v;
org.apache.dubbo.common.json.ParseException v;
java.lang.Class v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.Object v, v, v, v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: int;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = (int) -1;
v = v - v;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object get(int)>(v);
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = v;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isArray()>();
if v == 0 goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: java.lang.Class getComponentType()>();
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = staticinvoke <org.apache.dubbo.common.json.J2oVisitor: java.lang.Object toArray(java.lang.Class,org.apache.dubbo.common.utils.Stack,int)>(v, v, v);
goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
if v == class "Ljava/lang/Object;" goto label;
v = class "Ljava/util/Collection;";
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(v);
if v == 0 goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v != 0 goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
if v == class "Ljava/lang/Object;" goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: java.lang.Object newInstance()>();
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
v = virtualinvoke v.<java.lang.Exception: java.lang.String getMessage()>();
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(class "Ljava/util/ArrayList;");
if v == 0 goto label;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(v);
v = v;
goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(class "Ljava/util/HashSet;");
if v == 0 goto label;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>(int)>(v);
v = v;
goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = virtualinvoke v.<java.lang.Class: boolean isAssignableFrom(java.lang.Class)>(class "Ljava/util/LinkedList;");
if v == 0 goto label;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v = v;
goto label;
label:
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>(int)>(v);
v = v;
goto label;
label:
v = new org.apache.dubbo.common.json.ParseException;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
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[])>("Convert error, can not load json array data into class [\u].");
specialinvoke v.<org.apache.dubbo.common.json.ParseException: void <init>(java.lang.String)>(v);
throw v;
label:
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = v - v;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object remove(int)>(v);
interfaceinvoke v.<java.util.Collection: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
v = v;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
virtualinvoke v.<org.apache.dubbo.common.utils.Stack: java.lang.Object pop()>();
return v;
catch java.lang.Exception from label to label with label;
}
public void arrayItem(int) throws org.apache.dubbo.common.json.ParseException
{
org.apache.dubbo.common.utils.Stack v;
java.lang.Class[] v, v, v, v;
org.apache.dubbo.common.json.J2oVisitor v;
org.apache.dubbo.common.json.ParseException v;
int v, v, v, v;
java.lang.Class v;
java.lang.String v, v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: int;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class[] mTypes>;
if v == null goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
v = virtualinvoke v.<org.apache.dubbo.common.utils.Stack: int size()>();
v = v + 1;
if v != v goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class[] mTypes>;
v = lengthof v;
if v >= v goto label;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class[] mTypes>;
v = v[v];
v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType> = v;
goto label;
label:
v = new org.apache.dubbo.common.json.ParseException;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class[] mTypes>;
v = staticinvoke <org.apache.dubbo.common.json.J2oVisitor: java.lang.String name(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[])>("Can not load json array data into [\u].");
specialinvoke v.<org.apache.dubbo.common.json.ParseException: void <init>(java.lang.String)>(v);
throw v;
label:
return;
}
public void arrayItemValue(int, java.lang.Object, boolean) throws org.apache.dubbo.common.json.ParseException
{
org.apache.dubbo.common.utils.Stack v;
java.io.IOException v;
org.apache.dubbo.common.json.J2oVisitor v;
org.apache.dubbo.common.json.JSONConverter v;
org.apache.dubbo.common.json.ParseException v;
int v;
java.lang.Class v;
java.lang.Object v;
java.lang.String v;
boolean v;
v := @this: org.apache.dubbo.common.json.J2oVisitor;
v := @parameter: int;
v := @parameter: java.lang.Object;
v := @parameter: boolean;
if v == 0 goto label;
if v == null goto label;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.json.JSONConverter mConverter>;
v = v.<org.apache.dubbo.common.json.J2oVisitor: java.lang.Class mType>;
v = interfaceinvoke v.<org.apache.dubbo.common.json.JSONConverter: java.lang.Object readValue(java.lang.Class,java.lang.Object)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.dubbo.common.json.ParseException;
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
specialinvoke v.<org.apache.dubbo.common.json.ParseException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v.<org.apache.dubbo.common.json.J2oVisitor: org.apache.dubbo.common.utils.Stack mStack>;
virtualinvoke v.<org.apache.dubbo.common.utils.Stack: void push(java.lang.Object)>(v);
return;
catch java.io.IOException from label to label with label;
}
static void <clinit>()
{
byte[] v;
boolean[] v;
double[] v;
float[] v;
java.lang.String[] v;
long[] v;
int[] v;
char[] v;
short[] v;
v = newarray (boolean)[0];
<org.apache.dubbo.common.json.J2oVisitor: boolean[] EMPTY_BOOL_ARRAY> = v;
v = newarray (byte)[0];
<org.apache.dubbo.common.json.J2oVisitor: byte[] EMPTY_BYTE_ARRAY> = v;
v = newarray (char)[0];
<org.apache.dubbo.common.json.J2oVisitor: char[] EMPTY_CHAR_ARRAY> = v;
v = newarray (short)[0];
<org.apache.dubbo.common.json.J2oVisitor: short[] EMPTY_SHORT_ARRAY> = v;
v = newarray (int)[0];
<org.apache.dubbo.common.json.J2oVisitor: int[] EMPTY_INT_ARRAY> = v;
v = newarray (long)[0];
<org.apache.dubbo.common.json.J2oVisitor: long[] EMPTY_LONG_ARRAY> = v;
v = newarray (float)[0];
<org.apache.dubbo.common.json.J2oVisitor: float[] EMPTY_FLOAT_ARRAY> = v;
v = newarray (double)[0];
<org.apache.dubbo.common.json.J2oVisitor: double[] EMPTY_DOUBLE_ARRAY> = v;
v = newarray (java.lang.String)[0];
<org.apache.dubbo.common.json.J2oVisitor: java.lang.String[] EMPTY_STRING_ARRAY> = v;
return;
}
}