class org.apache.ibatis.javassist.bytecode.StackMapTable$Printer extends org.apache.ibatis.javassist.bytecode.StackMapTable$Walker
{
private java.io.PrintWriter writer;
private int offset;
public static void print(org.apache.ibatis.javassist.bytecode.StackMapTable, java.io.PrintWriter)
{
java.io.PrintWriter v;
byte[] v;
org.apache.ibatis.javassist.bytecode.StackMapTable$Printer v;
org.apache.ibatis.javassist.bytecode.StackMapTable v;
org.apache.ibatis.javassist.bytecode.BadBytecode v;
java.lang.String v;
v := @parameter: org.apache.ibatis.javassist.bytecode.StackMapTable;
v := @parameter: java.io.PrintWriter;
label:
v = new org.apache.ibatis.javassist.bytecode.StackMapTable$Printer;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable: byte[] get()>();
specialinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: void <init>(byte[],java.io.PrintWriter)>(v, v);
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: void parse()>();
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.BadBytecode: java.lang.String getMessage()>();
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
label:
return;
catch org.apache.ibatis.javassist.bytecode.BadBytecode from label to label with label;
}
void <init>(byte[], java.io.PrintWriter)
{
java.io.PrintWriter v;
byte[] v;
org.apache.ibatis.javassist.bytecode.StackMapTable$Printer v;
int v;
v := @this: org.apache.ibatis.javassist.bytecode.StackMapTable$Printer;
v := @parameter: byte[];
v := @parameter: java.io.PrintWriter;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Walker: void <init>(byte[])>(v);
v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer> = v;
v = (int) -1;
v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset> = v;
return;
}
public void sameFrame(int, int)
{
java.io.PrintWriter v;
org.apache.ibatis.javassist.bytecode.StackMapTable$Printer v;
int v, v, v, v, v, v;
java.lang.String v;
v := @this: org.apache.ibatis.javassist.bytecode.StackMapTable$Printer;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = v + 1;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset> = v;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,int)>(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 same frame: \u0001");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
return;
}
public void sameLocals(int, int, int, int)
{
java.io.PrintWriter v;
org.apache.ibatis.javassist.bytecode.StackMapTable$Printer v;
int v, v, v, v, v, v, v, v;
java.lang.String v;
v := @this: org.apache.ibatis.javassist.bytecode.StackMapTable$Printer;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = v + 1;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset> = v;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,int)>(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 same locals: \u0001");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
specialinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: void printTypeInfo(int,int)>(v, v);
return;
}
public void chopFrame(int, int, int)
{
java.io.PrintWriter v;
org.apache.ibatis.javassist.bytecode.StackMapTable$Printer v;
int v, v, v, v, v, v, v;
java.lang.String v;
v := @this: org.apache.ibatis.javassist.bytecode.StackMapTable$Printer;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = v + 1;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset> = v;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,int,int)>(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 chop frame: \u,    \u last locals");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
return;
}
public void appendFrame(int, int, int[], int[])
{
java.io.PrintWriter v;
org.apache.ibatis.javassist.bytecode.StackMapTable$Printer v;
int[] v, v;
int v, v, v, v, v, v, v, v, v, v;
java.lang.String v;
v := @this: org.apache.ibatis.javassist.bytecode.StackMapTable$Printer;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int[];
v := @parameter: int[];
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = v + 1;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset> = v;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,int)>(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 append frame: \u0001");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v[v];
specialinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: void printTypeInfo(int,int)>(v, v);
v = v + 1;
goto label;
label:
return;
}
public void fullFrame(int, int, int[], int[], int[], int[])
{
int[] v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v;
java.io.PrintWriter v, v, v;
org.apache.ibatis.javassist.bytecode.StackMapTable$Printer v;
v := @this: org.apache.ibatis.javassist.bytecode.StackMapTable$Printer;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int[];
v := @parameter: int[];
v := @parameter: int[];
v := @parameter: int[];
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = v + 1;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset> = v;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: int offset>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int,int)>(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 full frame: \u0001");
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("[locals]");
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v[v];
specialinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: void printTypeInfo(int,int)>(v, v);
v = v + 1;
goto label;
label:
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>("[stack]");
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
v = v[v];
specialinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: void printTypeInfo(int,int)>(v, v);
v = v + 1;
goto label;
label:
return;
}
private void printTypeInfo(int, int)
{
java.io.PrintWriter v, v;
org.apache.ibatis.javassist.bytecode.StackMapTable$Printer v;
int v, v;
java.lang.String v;
v := @this: org.apache.ibatis.javassist.bytecode.StackMapTable$Printer;
v := @parameter: int;
v := @parameter: int;
v = null;
tableswitch(v)
{
case 0: goto label;
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
case 5: goto label;
case 6: goto label;
case 7: goto label;
case 8: goto label;
default: goto label;
};
label:
v = "top";
goto label;
label:
v = "integer";
goto label;
label:
v = "float";
goto label;
label:
v = "double";
goto label;
label:
v = "long";
goto label;
label:
v = "null";
goto label;
label:
v = "this";
goto label;
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("object (cpool_index \u)");
goto label;
label:
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("uninitialized (offset \u)");
label:
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
virtualinvoke v.<java.io.PrintWriter: void print(java.lang.String)>("    ");
v = v.<org.apache.ibatis.javassist.bytecode.StackMapTable$Printer: java.io.PrintWriter writer>;
virtualinvoke v.<java.io.PrintWriter: void println(java.lang.String)>(v);
return;
}
}