public class org.apache.ibatis.javassist.bytecode.CodeIterator extends java.lang.Object implements org.apache.ibatis.javassist.bytecode.Opcode
{
protected org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr;
protected byte[] bytecode;
protected int endPos;
protected int currentPos;
protected int mark;
protected int mark;
private static final int[] opcodeLength;
protected void <init>(org.apache.ibatis.javassist.bytecode.CodeAttribute)
{
byte[] v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeAttribute;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr> = v;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: byte[] getCode()>();
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode> = v;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: void begin()>();
return;
}
public void begin()
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2> = 0;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark> = 0;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos> = 0;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int getCodeLength()>();
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int endPos> = v;
return;
}
public void move(int)
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos> = v;
return;
}
public void setMark(int)
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark> = v;
return;
}
public void setMark2(int)
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2> = v;
return;
}
public int getMark()
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark>;
return v;
}
public int getMark2()
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2>;
return v;
}
public org.apache.ibatis.javassist.bytecode.CodeAttribute get()
{
org.apache.ibatis.javassist.bytecode.CodeIterator v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
return v;
}
public int getCodeLength()
{
int v;
byte[] v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = lengthof v;
return v;
}
public int byteAt(int)
{
byte[] v;
short v;
byte v;
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = v[v];
v = v & 255;
return v;
}
public int signedByteAt(int)
{
byte[] v;
byte v;
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = v[v];
return v;
}
public void writeByte(int, int)
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v[v] = v;
return;
}
public int u16bitAt(int)
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int readU16bit(byte[],int)>(v, v);
return v;
}
public int s16bitAt(int)
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int readS16bit(byte[],int)>(v, v);
return v;
}
public void write16bit(int, int)
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write16bit(int,byte[],int)>(v, v, v);
return;
}
public int s32bitAt(int)
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
return v;
}
public void write32bit(int, int)
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
return;
}
public void write(byte[], int)
{
byte[] v, v;
byte v;
int v, v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: byte[];
v := @parameter: int;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = v;
v = v + 1;
v = v[v];
v[v] = v;
v = v + 1;
goto label;
label:
return;
}
public boolean hasNext()
{
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
boolean v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int endPos>;
if v >= v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public int next() throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int nextOpcode(byte[],int)>(v, v);
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos> = v;
return v;
}
public int lookAhead()
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
return v;
}
public int skipConstructor() throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = (int) -1;
v = specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int skipSuperConstructor0(int)>(v);
return v;
}
public int skipSuperConstructor() throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int skipSuperConstructor0(int)>(0);
return v;
}
public int skipThisConstructor() throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v = specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int skipSuperConstructor0(int)>(1);
return v;
}
private int skipSuperConstructor0(int) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v;
int v, v, v, v, v, v, v;
java.lang.String v, v, v;
boolean v, v, v, v;
org.apache.ibatis.javassist.bytecode.ConstPool v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v, v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: void begin()>();
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.ConstPool getConstPool()>();
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: java.lang.String getDeclaringClass()>();
v = 0;
label:
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: boolean hasNext()>();
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int next()>();
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int byteAt(int)>(v);
if v != 187 goto label;
v = v + 1;
goto label;
label:
if v != 183 goto label;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = v + 1;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int readU16bit(byte[],int)>(v, v);
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.ConstPool: java.lang.String getMethodrefName(int)>(v);
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>("<init>");
if v == 0 goto label;
v = v - 1;
if v >= 0 goto label;
if v >= 0 goto label;
return v;
label:
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.ConstPool: java.lang.String getMethodrefClassName(int)>(v);
v = virtualinvoke v.<java.lang.String: boolean equals(java.lang.Object)>(v);
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
if v != v goto label;
return v;
label:
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: void begin()>();
v = (int) -1;
return v;
}
public int insert(byte[]) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: byte[];
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int insert0(int,byte[],boolean)>(v, v, 0);
return v;
}
public void insert(int, byte[]) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
int v;
byte[] v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: byte[];
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int insert0(int,byte[],boolean)>(v, v, 0);
return;
}
public int insertAt(int, byte[]) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: byte[];
v = specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int insert0(int,byte[],boolean)>(v, v, 0);
return v;
}
public int insertEx(byte[]) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: byte[];
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int insert0(int,byte[],boolean)>(v, v, 1);
return v;
}
public void insertEx(int, byte[]) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
int v;
byte[] v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: byte[];
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int insert0(int,byte[],boolean)>(v, v, 1);
return;
}
public int insertExAt(int, byte[]) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v;
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: byte[];
v = specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int insert0(int,byte[],boolean)>(v, v, 1);
return v;
}
private int insert0(int, byte[], boolean) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v, v;
byte v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Gap v;
int v, v, v, v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
boolean v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: byte[];
v := @parameter: boolean;
v = lengthof v;
if v > 0 goto label;
return v;
label:
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeIterator$Gap insertGapAt(int,int,boolean)>(v, v, v);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int position>;
v = v;
v = 0;
label:
if v >= v goto label;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = v;
v = v + 1;
v = v[v];
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
public int insertGap(int) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
org.apache.ibatis.javassist.bytecode.CodeIterator$Gap v;
int v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeIterator$Gap insertGapAt(int,int,boolean)>(v, v, 0);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int position>;
return v;
}
public int insertGap(int, int) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
org.apache.ibatis.javassist.bytecode.CodeIterator$Gap v;
int v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: int;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeIterator$Gap insertGapAt(int,int,boolean)>(v, v, 0);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int length>;
return v;
}
public int insertExGap(int) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
org.apache.ibatis.javassist.bytecode.CodeIterator$Gap v;
int v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeIterator$Gap insertGapAt(int,int,boolean)>(v, v, 1);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int position>;
return v;
}
public int insertExGap(int, int) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
org.apache.ibatis.javassist.bytecode.CodeIterator$Gap v;
int v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: int;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeIterator$Gap insertGapAt(int,int,boolean)>(v, v, 1);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int length>;
return v;
}
public org.apache.ibatis.javassist.bytecode.CodeIterator$Gap insertGapAt(int, int, boolean) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v, v, v, v, v;
boolean v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Gap v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v, v, v, v, v;
org.apache.ibatis.javassist.bytecode.ExceptionTable v, v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$Gap;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: void <init>()>();
if v > 0 goto label;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int position> = v;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int length> = 0;
return v;
label:
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = lengthof v;
v = v + v;
if v <= 32767 goto label;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute get()>();
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.ExceptionTable getExceptionTable()>();
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
v = specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] insertGapCore0w(byte[],int,int,boolean,org.apache.ibatis.javassist.bytecode.ExceptionTable,org.apache.ibatis.javassist.bytecode.CodeAttribute,org.apache.ibatis.javassist.bytecode.CodeIterator$Gap)>(v, v, v, v, v, v, v);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int position>;
v = v;
goto label;
label:
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute get()>();
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.ExceptionTable getExceptionTable()>();
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] insertGapCore0(byte[],int,int,boolean,org.apache.ibatis.javassist.bytecode.ExceptionTable,org.apache.ibatis.javassist.bytecode.CodeAttribute)>(v, v, v, v, v, v);
v = lengthof v;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = lengthof v;
v = v - v;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int position> = v;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int length> = v;
if v < v goto label;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos> = v;
label:
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark>;
if v > v goto label;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark>;
if v != v goto label;
if v == 0 goto label;
label:
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark>;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark> = v;
label:
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2>;
if v > v goto label;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2>;
if v != v goto label;
if v == 0 goto label;
label:
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2>;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2> = v;
label:
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: void setCode(byte[])>(v);
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode> = v;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int getCodeLength()>();
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int endPos> = v;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: void updateCursors(int,int)>(v, v);
return v;
}
protected void updateCursors(int, int)
{
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v := @parameter: int;
return;
}
public void insert(org.apache.ibatis.javassist.bytecode.ExceptionTable, int)
{
int v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
org.apache.ibatis.javassist.bytecode.ExceptionTable v, v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: org.apache.ibatis.javassist.bytecode.ExceptionTable;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.ExceptionTable getExceptionTable()>();
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.ExceptionTable: void add(int,org.apache.ibatis.javassist.bytecode.ExceptionTable,int)>(0, v, v);
return;
}
public int append(byte[])
{
byte[] v, v;
byte v;
int v, v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: byte[];
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int getCodeLength()>();
v = lengthof v;
if v > 0 goto label;
return v;
label:
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: void appendGap(int)>(v);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = 0;
label:
if v >= v goto label;
v = v + v;
v = v[v];
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
public void appendGap(int)
{
byte[] v, v;
byte v;
int v, v, v, v, v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode>;
v = lengthof v;
v = v + v;
v = newarray (byte)[v];
v = 0;
label:
if v >= v goto label;
v = v[v];
v[v] = v;
v = v + 1;
goto label;
label:
v = v;
label:
v = v + v;
if v >= v goto label;
v[v] = 0;
v = v + 1;
goto label;
label:
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: void setCode(byte[])>(v);
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] bytecode> = v;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int getCodeLength()>();
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int endPos> = v;
return;
}
public void append(org.apache.ibatis.javassist.bytecode.ExceptionTable, int)
{
int v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
org.apache.ibatis.javassist.bytecode.ExceptionTable v, v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: org.apache.ibatis.javassist.bytecode.ExceptionTable;
v := @parameter: int;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: org.apache.ibatis.javassist.bytecode.CodeAttribute codeAttr>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.ExceptionTable getExceptionTable()>();
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.ExceptionTable: int size()>();
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.ExceptionTable: void add(int,org.apache.ibatis.javassist.bytecode.ExceptionTable,int)>(v, v, v);
return;
}
static int nextOpcode(byte[], int) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v;
java.lang.IndexOutOfBoundsException v, v;
short v;
byte v, v;
int[] v;
int 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.javassist.bytecode.BadBytecode v, v;
v := @parameter: byte[];
v := @parameter: int;
label:
v = v[v];
v = v & 255;
label:
goto label;
label:
v := @caughtexception;
v = new org.apache.ibatis.javassist.bytecode.BadBytecode;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.BadBytecode: void <init>(java.lang.String)>("invalid opcode address");
throw v;
label:
v = <org.apache.ibatis.javassist.bytecode.CodeIterator: int[] opcodeLength>;
v = v[v];
if v <= 0 goto label;
v = v + v;
label:
return v;
label:
if v != 196 goto label;
v = v + 1;
v = v[v];
v = (int) -124;
if v != v goto label;
v = v + 6;
label:
return v;
label:
v = v + 4;
label:
return v;
label:
v = (int) -4;
v = v & v;
v = v + 8;
if v != 171 goto label;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v * 8;
v = v + v;
v = v + 4;
label:
return v;
label:
if v != 170 goto label;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v - v;
v = v + 1;
v = v * 4;
v = v + v;
v = v + 8;
label:
return v;
label:
v := @caughtexception;
label:
v = new org.apache.ibatis.javassist.bytecode.BadBytecode;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.BadBytecode: void <init>(int)>(v);
throw v;
catch java.lang.IndexOutOfBoundsException from label to label with label;
catch java.lang.IndexOutOfBoundsException from label to label with label;
catch java.lang.IndexOutOfBoundsException from label to label with label;
catch java.lang.IndexOutOfBoundsException from label to label with label;
catch java.lang.IndexOutOfBoundsException from label to label with label;
catch java.lang.IndexOutOfBoundsException from label to label with label;
}
static byte[] insertGapCore0(byte[], int, int, boolean, org.apache.ibatis.javassist.bytecode.ExceptionTable, org.apache.ibatis.javassist.bytecode.CodeAttribute) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException v, v;
java.lang.RuntimeException v;
int v, v, v, v, v;
boolean v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
org.apache.ibatis.javassist.bytecode.ExceptionTable v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
v := @parameter: org.apache.ibatis.javassist.bytecode.ExceptionTable;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeAttribute;
if v > 0 goto label;
return v;
label:
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] insertGapCore1(byte[],int,int,boolean,org.apache.ibatis.javassist.bytecode.ExceptionTable,org.apache.ibatis.javassist.bytecode.CodeAttribute)>(v, v, v, v, v, v);
label:
return v;
label:
v := @caughtexception;
label:
v = v + 3;
v = (int) -4;
v = v & v;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] insertGapCore1(byte[],int,int,boolean,org.apache.ibatis.javassist.bytecode.ExceptionTable,org.apache.ibatis.javassist.bytecode.CodeAttribute)>(v, v, v, v, v, v);
label:
return v;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String)>("fatal error?");
throw v;
catch org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException from label to label with label;
catch org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException from label to label with label;
}
private static byte[] insertGapCore1(byte[], int, int, boolean, org.apache.ibatis.javassist.bytecode.ExceptionTable, org.apache.ibatis.javassist.bytecode.CodeAttribute) throws org.apache.ibatis.javassist.bytecode.BadBytecode, org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException
{
byte[] v, v;
int v, v, v, v;
org.apache.ibatis.javassist.bytecode.AttributeInfo v, v, v, v, v;
boolean v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
org.apache.ibatis.javassist.bytecode.ExceptionTable v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
v := @parameter: org.apache.ibatis.javassist.bytecode.ExceptionTable;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeAttribute;
v = lengthof v;
v = v + v;
v = newarray (byte)[v];
staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: void insertGap2(byte[],int,int,int,byte[],boolean)>(v, v, v, v, v, v);
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.ExceptionTable: void shiftPc(int,int,boolean)>(v, v, v);
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.AttributeInfo getAttribute(java.lang.String)>("LineNumberTable");
if v == null goto label;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.LineNumberAttribute: void shiftPc(int,int,boolean)>(v, v, v);
label:
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.AttributeInfo getAttribute(java.lang.String)>("LocalVariableTable");
if v == null goto label;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.LocalVariableAttribute: void shiftPc(int,int,boolean)>(v, v, v);
label:
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.AttributeInfo getAttribute(java.lang.String)>("LocalVariableTypeTable");
if v == null goto label;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.LocalVariableAttribute: void shiftPc(int,int,boolean)>(v, v, v);
label:
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.AttributeInfo getAttribute(java.lang.String)>("StackMapTable");
if v == null goto label;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.StackMapTable: void shiftPc(int,int,boolean)>(v, v, v);
label:
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeAttribute: org.apache.ibatis.javassist.bytecode.AttributeInfo getAttribute(java.lang.String)>("StackMap");
if v == null goto label;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.StackMap: void shiftPc(int,int,boolean)>(v, v, v);
label:
return v;
}
private static void insertGap2(byte[], int, int, int, byte[], boolean) throws org.apache.ibatis.javassist.bytecode.BadBytecode, org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException
{
byte[] v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException v, v;
byte v, v, v, v, v, v;
short v, v;
boolean v;
int 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, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: byte[];
v := @parameter: boolean;
v = 0;
v = 0;
label:
if v >= v goto label;
if v != v goto label;
v = v + v;
label:
if v >= v goto label;
v = v;
v = v + 1;
v[v] = 0;
goto label;
label:
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int nextOpcode(byte[],int)>(v, v);
v = v[v];
v = v & 255;
if 153 > v goto label;
if v <= 168 goto label;
label:
if v == 198 goto label;
if v != 199 goto label;
label:
v = v + 1;
v = v[v];
v = v << 8;
v = v + 2;
v = v[v];
v = v & 255;
v = v | v;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int newOffset(int,int,int,int,boolean)>(v, v, v, v, v);
v = v[v];
v[v] = v;
v = v + 1;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write16bit(int,byte[],int)>(v, v, v);
v = v + 3;
goto label;
label:
if v == 200 goto label;
if v != 201 goto label;
label:
v = v + 1;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int newOffset(int,int,int,int,boolean)>(v, v, v, v, v);
v = v + 1;
v = v[v];
v[v] = v;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
v = v + 4;
goto label;
label:
if v != 170 goto label;
if v == v goto label;
v = v & 3;
if v == 0 goto label;
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException: void <init>()>();
throw v;
label:
v = (int) -4;
v = v & v;
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int copyGapBytes(byte[],int,byte[],int,int)>(v, v, v, v, v);
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int newOffset(int,int,int,int,boolean)>(v, v, v, v, v);
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 4;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
v = v + 8;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 8;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
v = v + 12;
v = v + 12;
v = v - v;
v = v + 1;
v = v * 4;
v = v + v;
label:
if v >= v goto label;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int newOffset(int,int,int,int,boolean)>(v, v, v, v, v);
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
v = v + 4;
v = v + 4;
goto label;
label:
if v != 171 goto label;
if v == v goto label;
v = v & 3;
if v == 0 goto label;
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$AlignmentException: void <init>()>();
throw v;
label:
v = (int) -4;
v = v & v;
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int copyGapBytes(byte[],int,byte[],int,int)>(v, v, v, v, v);
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int newOffset(int,int,int,int,boolean)>(v, v, v, v, v);
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 4;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
v = v + 8;
v = v + 8;
v = v * 8;
v = v + v;
label:
if v >= v goto label;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void copy32bit(byte[],int,byte[],int)>(v, v, v, v);
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int newOffset(int,int,int,int,boolean)>(v, v, v, v, v);
v = v + 4;
staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: void write32bit(int,byte[],int)>(v, v, v);
v = v + 8;
v = v + 8;
goto label;
label:
if v >= v goto label;
v = v;
v = v + 1;
v = v;
v = v + 1;
v = v[v];
v[v] = v;
goto label;
label:
v = v;
goto label;
label:
return;
}
private static int copyGapBytes(byte[], int, byte[], int, int)
{
byte[] v, v;
byte v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = v - v;
tableswitch(v)
{
case 1: goto label;
case 2: goto label;
case 3: goto label;
case 4: goto label;
default: goto label;
};
label:
v = v;
v = v + 1;
v = v;
v = v + 1;
v = v[v];
v[v] = v;
label:
v = v;
v = v + 1;
v = v;
v = v + 1;
v = v[v];
v[v] = v;
label:
v = v;
v = v + 1;
v = v;
v = v + 1;
v = v[v];
v[v] = v;
label:
v = v;
v = v + 1;
v = v[v];
v[v] = v;
label:
return v;
}
private static int newOffset(int, int, int, int, boolean)
{
int v, v, v, v, v;
boolean v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
v = v + v;
if v >= v goto label;
if v < v goto label;
if v == 0 goto label;
if v != v goto label;
label:
v = v + v;
goto label;
label:
if v != v goto label;
if v >= v goto label;
v = v - v;
goto label;
label:
if v < v goto label;
if v != 0 goto label;
if v != v goto label;
label:
v = v - v;
label:
return v;
}
static byte[] changeLdcToLdcW(byte[], org.apache.ibatis.javassist.bytecode.ExceptionTable, org.apache.ibatis.javassist.bytecode.CodeAttribute, org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v, v;
java.util.List v;
int v;
org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
org.apache.ibatis.javassist.bytecode.ExceptionTable v;
v := @parameter: byte[];
v := @parameter: org.apache.ibatis.javassist.bytecode.ExceptionTable;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeAttribute;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry;
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: void <init>(int,int,int,int,org.apache.ibatis.javassist.bytecode.ExceptionTable,org.apache.ibatis.javassist.bytecode.CodeAttribute)>(0, 0, 0, 0, v, v);
v = lengthof v;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: java.util.List makeJumpList(byte[],int,org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers)>(v, v, v);
label:
if v == null goto label;
staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: void addLdcW(org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry,java.util.List)>(v, v);
v = v.<org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry: org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry next>;
goto label;
label:
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] insertGap2w(byte[],int,int,boolean,java.util.List,org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers)>(v, 0, 0, 0, v, v);
return v;
}
private static void addLdcW(org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry, java.util.List)
{
java.util.List v;
int v, v, v, v, v;
org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry v;
java.lang.Object v;
org.apache.ibatis.javassist.bytecode.CodeIterator$LdcW v;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry;
v := @parameter: java.util.List;
v = v.<org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry: int where>;
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$LdcW;
v = v.<org.apache.ibatis.javassist.bytecode.CodeAttribute$LdcEntry: int index>;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$LdcW: void <init>(int,int)>(v, v);
v = interfaceinvoke v.<java.util.List: int size()>();
v = 0;
label:
if v >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int orgPos>;
if v >= v goto label;
interfaceinvoke v.<java.util.List: void add(int,java.lang.Object)>(v, v);
return;
label:
v = v + 1;
goto label;
label:
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
return;
}
private byte[] insertGapCore0w(byte[], int, int, boolean, org.apache.ibatis.javassist.bytecode.ExceptionTable, org.apache.ibatis.javassist.bytecode.CodeAttribute, org.apache.ibatis.javassist.bytecode.CodeIterator$Gap) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v;
boolean v;
java.util.List v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Gap v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers v;
org.apache.ibatis.javassist.bytecode.CodeIterator v;
org.apache.ibatis.javassist.bytecode.CodeAttribute v;
org.apache.ibatis.javassist.bytecode.ExceptionTable v;
v := @this: org.apache.ibatis.javassist.bytecode.CodeIterator;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
v := @parameter: org.apache.ibatis.javassist.bytecode.ExceptionTable;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeAttribute;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeIterator$Gap;
if v > 0 goto label;
return v;
label:
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark>;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2>;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: void <init>(int,int,int,int,org.apache.ibatis.javassist.bytecode.ExceptionTable,org.apache.ibatis.javassist.bytecode.CodeAttribute)>(v, v, v, v, v, v);
v = lengthof v;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: java.util.List makeJumpList(byte[],int,org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers)>(v, v, v);
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] insertGap2w(byte[],int,int,boolean,java.util.List,org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers)>(v, v, v, v, v, v);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: int cursor>;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos> = v;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: int mark>;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark> = v;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: int mark2>;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int mark2> = v;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: int mark0>;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
if v != v goto label;
if v != 0 goto label;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos>;
v = v + v;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator: int currentPos> = v;
label:
if v == 0 goto label;
v = v - v;
label:
v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int position> = v;
v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Gap: int length> = v;
return v;
}
private static byte[] insertGap2w(byte[], int, int, boolean, java.util.List, org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v, v;
int v, v, v, v, v, v;
boolean v, v, v, v, v, v, v, v;
java.util.Iterator v, v, v, v, v;
java.util.List v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers v;
java.lang.Object v, v, v, v, v;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
v := @parameter: java.util.List;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers;
if v <= 0 goto label;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: void shiftPc(int,int,boolean)>(v, v, v);
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: void shift(int,int,boolean)>(v, v, v);
goto label;
label:
v = 1;
label:
if v == 0 goto label;
v = 0;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: boolean expanded()>();
if v == 0 goto label;
v = 1;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int pos>;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int deltaSize()>();
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: void shiftPc(int,int,boolean)>(v, v, 0);
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: void shift(int,int,boolean)>(v, v, 0);
goto label;
label:
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int gapChanged()>();
if v <= 0 goto label;
v = 1;
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int pos>;
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers: void shiftPc(int,int,boolean)>(v, v, 0);
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: void shift(int,int,boolean)>(v, v, 0);
goto label;
label:
if v != 0 goto label;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: byte[] makeExapndedCode(byte[],java.util.List,int,int)>(v, v, v, v);
return v;
}
private static java.util.List makeJumpList(byte[], int, org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Jump v;
byte v, v, v;
int[] v, v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator$If v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Table v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Jump v;
java.util.ArrayList v;
short v, v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Branch v;
org.apache.ibatis.javassist.bytecode.CodeIterator$Lookup v;
int 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 := @parameter: byte[];
v := @parameter: int;
v := @parameter: org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = 0;
label:
if v >= v goto label;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.CodeIterator: int nextOpcode(byte[],int)>(v, v);
v = v[v];
v = v & 255;
if 153 > v goto label;
if v <= 168 goto label;
label:
if v == 198 goto label;
if v != 199 goto label;
label:
v = v + 1;
v = v[v];
v = v << 8;
v = v + 2;
v = v[v];
v = v & 255;
v = v | v;
if v == 167 goto label;
if v != 168 goto label;
label:
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$Jump;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Jump16: void <init>(int,int)>(v, v);
v = v;
goto label;
label:
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$If;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$If16: void <init>(int,int)>(v, v);
v = v;
label:
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
if v == 200 goto label;
if v != 201 goto label;
label:
v = v + 1;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$Jump;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Jump32: void <init>(int,int)>(v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
if v != 170 goto label;
v = (int) -4;
v = v & v;
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 8;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 12;
v = v - v;
v = v + 1;
v = newarray (int)[v];
v = 0;
label:
if v >= v goto label;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v[v] = v;
v = v + 4;
v = v + 1;
goto label;
label:
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$Table;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Table: void <init>(int,int,int,int,int[],org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers)>(v, v, v, v, v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
if v != 171 goto label;
v = (int) -4;
v = v & v;
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v = v + 8;
v = newarray (int)[v];
v = newarray (int)[v];
v = 0;
label:
if v >= v goto label;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v[v] = v;
v = v + 4;
v = staticinvoke <org.apache.ibatis.javassist.bytecode.ByteArray: int read32bit(byte[],int)>(v, v);
v[v] = v;
v = v + 8;
v = v + 1;
goto label;
label:
v = new org.apache.ibatis.javassist.bytecode.CodeIterator$Lookup;
specialinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Lookup: void <init>(int,int,int[],int[],org.apache.ibatis.javassist.bytecode.CodeIterator$Pointers)>(v, v, v, v, v);
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
label:
v = v;
goto label;
label:
return v;
}
private static byte[] makeExapndedCode(byte[], java.util.List, int, int) throws org.apache.ibatis.javassist.bytecode.BadBytecode
{
byte[] v, v;
byte v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
boolean v;
java.util.Iterator v;
java.util.List v;
java.lang.Object v, v;
v := @parameter: byte[];
v := @parameter: java.util.List;
v := @parameter: int;
v := @parameter: int;
v = interfaceinvoke v.<java.util.List: int size()>();
v = lengthof v;
v = v + v;
v = interfaceinvoke v.<java.util.List: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int deltaSize()>();
v = v + v;
goto label;
label:
v = newarray (byte)[v];
v = 0;
v = 0;
v = 0;
v = lengthof v;
if 0 >= v goto label;
v = interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(0);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int orgPos>;
goto label;
label:
v = null;
v = v;
label:
if v >= v goto label;
if v != v goto label;
v = v + v;
label:
if v >= v goto label;
v = v;
v = v + 1;
v[v] = 0;
goto label;
label:
if v == v goto label;
v = v;
v = v + 1;
v = v;
v = v + 1;
v = v[v];
v[v] = v;
goto label;
label:
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int write(int,byte[],int,byte[])>(v, v, v, v);
v = v + v;
v = virtualinvoke v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int deltaSize()>();
v = v + v;
v = v + v;
v = v + 1;
if v >= v goto label;
interfaceinvoke v.<java.util.List: java.lang.Object get(int)>(v);
v = v.<org.apache.ibatis.javassist.bytecode.CodeIterator$Branch: int orgPos>;
goto label;
label:
v = null;
v = v;
goto label;
label:
return v;
}
static void <clinit>()
{
int[] v;
v = newarray (int)[202];
v[0] = 1;
v[1] = 1;
v[2] = 1;
v[3] = 1;
v[4] = 1;
v[5] = 1;
v[6] = 1;
v[7] = 1;
v[8] = 1;
v[9] = 1;
v[10] = 1;
v[11] = 1;
v[12] = 1;
v[13] = 1;
v[14] = 1;
v[15] = 1;
v[16] = 2;
v[17] = 3;
v[18] = 2;
v[19] = 3;
v[20] = 3;
v[21] = 2;
v[22] = 2;
v[23] = 2;
v[24] = 2;
v[25] = 2;
v[26] = 1;
v[27] = 1;
v[28] = 1;
v[29] = 1;
v[30] = 1;
v[31] = 1;
v[32] = 1;
v[33] = 1;
v[34] = 1;
v[35] = 1;
v[36] = 1;
v[37] = 1;
v[38] = 1;
v[39] = 1;
v[40] = 1;
v[41] = 1;
v[42] = 1;
v[43] = 1;
v[44] = 1;
v[45] = 1;
v[46] = 1;
v[47] = 1;
v[48] = 1;
v[49] = 1;
v[50] = 1;
v[51] = 1;
v[52] = 1;
v[53] = 1;
v[54] = 2;
v[55] = 2;
v[56] = 2;
v[57] = 2;
v[58] = 2;
v[59] = 1;
v[60] = 1;
v[61] = 1;
v[62] = 1;
v[63] = 1;
v[64] = 1;
v[65] = 1;
v[66] = 1;
v[67] = 1;
v[68] = 1;
v[69] = 1;
v[70] = 1;
v[71] = 1;
v[72] = 1;
v[73] = 1;
v[74] = 1;
v[75] = 1;
v[76] = 1;
v[77] = 1;
v[78] = 1;
v[79] = 1;
v[80] = 1;
v[81] = 1;
v[82] = 1;
v[83] = 1;
v[84] = 1;
v[85] = 1;
v[86] = 1;
v[87] = 1;
v[88] = 1;
v[89] = 1;
v[90] = 1;
v[91] = 1;
v[92] = 1;
v[93] = 1;
v[94] = 1;
v[95] = 1;
v[96] = 1;
v[97] = 1;
v[98] = 1;
v[99] = 1;
v[100] = 1;
v[101] = 1;
v[102] = 1;
v[103] = 1;
v[104] = 1;
v[105] = 1;
v[106] = 1;
v[107] = 1;
v[108] = 1;
v[109] = 1;
v[110] = 1;
v[111] = 1;
v[112] = 1;
v[113] = 1;
v[114] = 1;
v[115] = 1;
v[116] = 1;
v[117] = 1;
v[118] = 1;
v[119] = 1;
v[120] = 1;
v[121] = 1;
v[122] = 1;
v[123] = 1;
v[124] = 1;
v[125] = 1;
v[126] = 1;
v[127] = 1;
v[128] = 1;
v[129] = 1;
v[130] = 1;
v[131] = 1;
v[132] = 3;
v[133] = 1;
v[134] = 1;
v[135] = 1;
v[136] = 1;
v[137] = 1;
v[138] = 1;
v[139] = 1;
v[140] = 1;
v[141] = 1;
v[142] = 1;
v[143] = 1;
v[144] = 1;
v[145] = 1;
v[146] = 1;
v[147] = 1;
v[148] = 1;
v[149] = 1;
v[150] = 1;
v[151] = 1;
v[152] = 1;
v[153] = 3;
v[154] = 3;
v[155] = 3;
v[156] = 3;
v[157] = 3;
v[158] = 3;
v[159] = 3;
v[160] = 3;
v[161] = 3;
v[162] = 3;
v[163] = 3;
v[164] = 3;
v[165] = 3;
v[166] = 3;
v[167] = 3;
v[168] = 3;
v[169] = 2;
v[170] = 0;
v[171] = 0;
v[172] = 1;
v[173] = 1;
v[174] = 1;
v[175] = 1;
v[176] = 1;
v[177] = 1;
v[178] = 3;
v[179] = 3;
v[180] = 3;
v[181] = 3;
v[182] = 3;
v[183] = 3;
v[184] = 3;
v[185] = 5;
v[186] = 5;
v[187] = 3;
v[188] = 2;
v[189] = 3;
v[190] = 1;
v[191] = 1;
v[192] = 3;
v[193] = 3;
v[194] = 1;
v[195] = 1;
v[196] = 0;
v[197] = 4;
v[198] = 3;
v[199] = 3;
v[200] = 5;
v[201] = 5;
<org.apache.ibatis.javassist.bytecode.CodeIterator: int[] opcodeLength> = v;
return;
}
}