public final class org.iq.leveldb.util.Slice extends java.lang.Object implements java.lang.Comparable
{
private final byte[] data;
private final int offset;
private final int length;
private int hash;
public void <init>(int)
{
int v;
byte[] v;
org.iq.leveldb.util.Slice v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
specialinvoke v.<java.lang.Object: void <init>()>();
v = newarray (byte)[v];
v.<org.iq.leveldb.util.Slice: byte[] data> = v;
v.<org.iq.leveldb.util.Slice: int offset> = 0;
v.<org.iq.leveldb.util.Slice: int length> = v;
return;
}
public void <init>(byte[])
{
int v;
byte[] v;
org.iq.leveldb.util.Slice v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: byte[];
specialinvoke v.<java.lang.Object: void <init>()>();
staticinvoke <com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object,java.lang.Object)>(v, "array is null");
v.<org.iq.leveldb.util.Slice: byte[] data> = v;
v.<org.iq.leveldb.util.Slice: int offset> = 0;
v = lengthof v;
v.<org.iq.leveldb.util.Slice: int length> = v;
return;
}
public void <init>(byte[], int, int)
{
byte[] v;
org.iq.leveldb.util.Slice v;
int v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
specialinvoke v.<java.lang.Object: void <init>()>();
staticinvoke <com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object,java.lang.Object)>(v, "array is null");
v.<org.iq.leveldb.util.Slice: byte[] data> = v;
v.<org.iq.leveldb.util.Slice: int offset> = v;
v.<org.iq.leveldb.util.Slice: int length> = v;
return;
}
public int length()
{
int v;
org.iq.leveldb.util.Slice v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: int length>;
return v;
}
public byte[] getRawArray()
{
byte[] v;
org.iq.leveldb.util.Slice v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
return v;
}
public int getRawOffset()
{
int v;
org.iq.leveldb.util.Slice v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: int offset>;
return v;
}
public byte getByte(int)
{
byte[] v;
org.iq.leveldb.util.Slice v;
byte v;
int v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v = v + 1;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v[v];
return v;
}
public short getUnsignedByte(int)
{
org.iq.leveldb.util.Slice v;
short v;
byte v;
int v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v = virtualinvoke v.<org.iq.leveldb.util.Slice: byte getByte(int)>(v);
v = v & 255;
return v;
}
public short getShort(int)
{
byte[] v, v;
org.iq.leveldb.util.Slice v;
short v;
byte v, v;
int v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v = v + 2;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v[v];
v = v & 255;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 1;
v = v[v];
v = v << 8;
v = v | v;
return v;
}
public int getInt(int)
{
byte[] v, v, v, v;
org.iq.leveldb.util.Slice v;
short v, v, v, v;
byte v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v = v + 4;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v[v];
v = v & 255;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 1;
v = v[v];
v = v & 255;
v = v << 8;
v = v | v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 2;
v = v[v];
v = v & 255;
v = v << 16;
v = v | v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 3;
v = v[v];
v = v & 255;
v = v << 24;
v = v | v;
return v;
}
public long getLong(int)
{
byte[] v, v, v, v, v, v, v, v;
org.iq.leveldb.util.Slice v;
byte v, v, v, v, v, v, v, v;
long v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v = v + 8;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v[v];
v = v & 255L;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 1;
v = v[v];
v = v & 255L;
v = v << 8;
v = v | v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 2;
v = v[v];
v = v & 255L;
v = v << 16;
v = v | v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 3;
v = v[v];
v = v & 255L;
v = v << 24;
v = v | v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 4;
v = v[v];
v = v & 255L;
v = v << 32;
v = v | v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 5;
v = v[v];
v = v & 255L;
v = v << 40;
v = v | v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 6;
v = v[v];
v = v & 255L;
v = v << 48;
v = v | v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 7;
v = v[v];
v = v & 255L;
v = v << 56;
v = v | v;
return v;
}
public void getBytes(int, org.iq.leveldb.util.Slice, int, int)
{
byte[] v;
org.iq.leveldb.util.Slice v, v;
int v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
virtualinvoke v.<org.iq.leveldb.util.Slice: void getBytes(int,byte[],int,int)>(v, v, v, v);
return;
}
public void getBytes(int, byte[], int, int)
{
byte[] v, v;
org.iq.leveldb.util.Slice v;
int v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v + v;
v = lengthof v;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, v, v, v, v);
return;
}
public byte[] getBytes()
{
int v;
byte[] v;
org.iq.leveldb.util.Slice v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = virtualinvoke v.<org.iq.leveldb.util.Slice: byte[] getBytes(int,int)>(0, v);
return v;
}
public byte[] getBytes(int, int)
{
byte[] v, v, v, v;
org.iq.leveldb.util.Slice v;
int v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
if v != 0 goto label;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = staticinvoke <java.util.Arrays: byte[] copyOf(byte[],int)>(v, v);
return v;
label:
v = newarray (byte)[v];
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, v, v, 0, v);
return v;
}
public void getBytes(int, java.nio.ByteBuffer)
{
byte[] v;
org.iq.leveldb.util.Slice v;
java.nio.ByteBuffer v;
int v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: java.nio.ByteBuffer;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: int checkPositionIndex(int,int)>(v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
v = staticinvoke <java.lang.Math: int min(int,int)>(v, v);
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer put(byte[],int,int)>(v, v, v);
return;
}
public void getBytes(int, java.io.OutputStream, int) throws java.io.IOException
{
java.io.OutputStream v;
byte[] v;
org.iq.leveldb.util.Slice v;
int v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: java.io.OutputStream;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
virtualinvoke v.<java.io.OutputStream: void write(byte[],int,int)>(v, v, v);
return;
}
public int getBytes(int, java.nio.channels.GatheringByteChannel, int) throws java.io.IOException
{
byte[] v;
org.iq.leveldb.util.Slice v;
java.nio.ByteBuffer v;
int v, v, v, v, v, v, v;
java.nio.channels.GatheringByteChannel v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: java.nio.channels.GatheringByteChannel;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[],int,int)>(v, v, v);
v = interfaceinvoke v.<java.nio.channels.GatheringByteChannel: int write(java.nio.ByteBuffer)>(v);
return v;
}
public void setShort(int, int)
{
byte[] v, v;
org.iq.leveldb.util.Slice v;
int v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v + 2;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 1;
v = v >>> 8;
v[v] = v;
return;
}
public void setInt(int, int)
{
byte[] v, v, v, v;
org.iq.leveldb.util.Slice v;
int v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v + 4;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 1;
v = v >>> 8;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 2;
v = v >>> 16;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 3;
v = v >>> 24;
v[v] = v;
return;
}
public void setLong(int, long)
{
byte[] v, v, v, v, v, v, v, v;
org.iq.leveldb.util.Slice v;
long v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: long;
v = v + 8;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 1;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 2;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 3;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 4;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 5;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 6;
v[v] = v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v + 7;
v[v] = v;
return;
}
public void setByte(int, int)
{
byte[] v;
org.iq.leveldb.util.Slice v;
int v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v + 1;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v[v] = v;
return;
}
public void setBytes(int, org.iq.leveldb.util.Slice, int, int)
{
byte[] v;
org.iq.leveldb.util.Slice v, v;
int v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
virtualinvoke v.<org.iq.leveldb.util.Slice: void setBytes(int,byte[],int,int)>(v, v, v, v);
return;
}
public void setBytes(int, byte[], int, int)
{
byte[] v, v;
org.iq.leveldb.util.Slice v;
int v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: byte[];
v := @parameter: int;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v + v;
v = lengthof v;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, v, v, v, v);
return;
}
public void setBytes(int, java.nio.ByteBuffer)
{
byte[] v;
org.iq.leveldb.util.Slice v;
java.nio.ByteBuffer v;
int v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: java.nio.ByteBuffer;
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = virtualinvoke v.<java.nio.ByteBuffer: int remaining()>();
virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer get(byte[],int,int)>(v, v, v);
return;
}
public int setBytes(int, java.io.InputStream, int) throws java.io.IOException
{
byte[] v;
org.iq.leveldb.util.Slice v;
int v, v, v, v, v, v, v, v, v;
java.io.InputStream v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: java.io.InputStream;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = 0;
label:
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = virtualinvoke v.<java.io.InputStream: int read(byte[],int,int)>(v, v, v);
if v >= 0 goto label;
if v != 0 goto label;
v = (int) -1;
return v;
label:
v = v + v;
v = v + v;
v = v - v;
if v > 0 goto label;
label:
return v;
}
public int setBytes(int, java.nio.channels.ScatteringByteChannel, int) throws java.io.IOException
{
byte[] v;
org.iq.leveldb.util.Slice v;
java.nio.channels.ScatteringByteChannel v;
java.nio.channels.ClosedChannelException v;
java.nio.ByteBuffer v;
int v, v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: java.nio.channels.ScatteringByteChannel;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[],int,int)>(v, v, v);
v = 0;
label:
v = interfaceinvoke v.<java.nio.channels.ScatteringByteChannel: int read(java.nio.ByteBuffer)>(v);
label:
goto label;
label:
v := @caughtexception;
v = (int) -1;
v = v;
label:
if v >= 0 goto label;
if v != 0 goto label;
v = (int) -1;
return v;
label:
if v == 0 goto label;
v = v + v;
if v < v goto label;
label:
return v;
catch java.nio.channels.ClosedChannelException from label to label with label;
}
public int setBytes(int, java.nio.channels.FileChannel, int, int) throws java.io.IOException
{
byte[] v;
org.iq.leveldb.util.Slice v;
java.nio.ByteBuffer v;
int v, v, v, v, v, v, v, v, v, v, v, v;
java.nio.channels.ClosedChannelException v;
java.nio.channels.FileChannel v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: java.nio.channels.FileChannel;
v := @parameter: int;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[],int,int)>(v, v, v);
v = 0;
label:
v = v + v;
v = virtualinvoke v.<java.nio.channels.FileChannel: int read(java.nio.ByteBuffer,long)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = (int) -1;
v = v;
label:
if v >= 0 goto label;
if v != 0 goto label;
v = (int) -1;
return v;
label:
if v == 0 goto label;
v = v + v;
if v < v goto label;
label:
return v;
catch java.nio.channels.ClosedChannelException from label to label with label;
}
public org.iq.leveldb.util.Slice copySlice()
{
int v;
org.iq.leveldb.util.Slice v, v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = virtualinvoke v.<org.iq.leveldb.util.Slice: org.iq.leveldb.util.Slice copySlice(int,int)>(0, v);
return v;
}
public org.iq.leveldb.util.Slice copySlice(int, int)
{
byte[] v, v;
org.iq.leveldb.util.Slice v, v;
int v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = newarray (byte)[v];
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, v, v, 0, v);
v = new org.iq.leveldb.util.Slice;
specialinvoke v.<org.iq.leveldb.util.Slice: void <init>(byte[])>(v);
return v;
}
public byte[] copyBytes()
{
int v;
byte[] v;
org.iq.leveldb.util.Slice v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = virtualinvoke v.<org.iq.leveldb.util.Slice: byte[] copyBytes(int,int)>(0, v);
return v;
}
public byte[] copyBytes(int, int)
{
byte[] v, v, v, v;
org.iq.leveldb.util.Slice v;
int v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
if v != 0 goto label;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = staticinvoke <java.util.Arrays: byte[] copyOf(byte[],int)>(v, v);
return v;
label:
v = newarray (byte)[v];
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, v, v, 0, v);
return v;
}
public org.iq.leveldb.util.Slice slice()
{
int v;
org.iq.leveldb.util.Slice v, v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = virtualinvoke v.<org.iq.leveldb.util.Slice: org.iq.leveldb.util.Slice slice(int,int)>(0, v);
return v;
}
public org.iq.leveldb.util.Slice slice(int, int)
{
byte[] v;
org.iq.leveldb.util.Slice v, v, v;
int v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
if v != 0 goto label;
v = v.<org.iq.leveldb.util.Slice: int length>;
if v != v goto label;
return v;
label:
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
if v < 0 goto label;
if v != 0 goto label;
v = <org.iq.leveldb.util.Slices: org.iq.leveldb.util.Slice EMPTY_SLICE>;
return v;
label:
v = new org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
specialinvoke v.<org.iq.leveldb.util.Slice: void <init>(byte[],int,int)>(v, v, v);
return v;
}
public org.iq.leveldb.util.SliceInput input()
{
org.iq.leveldb.util.Slice v;
org.iq.leveldb.util.SliceInput v;
v := @this: org.iq.leveldb.util.Slice;
v = new org.iq.leveldb.util.SliceInput;
specialinvoke v.<org.iq.leveldb.util.SliceInput: void <init>(org.iq.leveldb.util.Slice)>(v);
return v;
}
public org.iq.leveldb.util.SliceOutput output()
{
org.iq.leveldb.util.BasicSliceOutput v;
org.iq.leveldb.util.Slice v;
v := @this: org.iq.leveldb.util.Slice;
v = new org.iq.leveldb.util.BasicSliceOutput;
specialinvoke v.<org.iq.leveldb.util.BasicSliceOutput: void <init>(org.iq.leveldb.util.Slice)>(v);
return v;
}
public java.nio.ByteBuffer toByteBuffer()
{
int v;
org.iq.leveldb.util.Slice v;
java.nio.ByteBuffer v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = virtualinvoke v.<org.iq.leveldb.util.Slice: java.nio.ByteBuffer toByteBuffer(int,int)>(0, v);
return v;
}
public java.nio.ByteBuffer toByteBuffer(int, int)
{
byte[] v;
org.iq.leveldb.util.Slice v;
java.nio.ByteBuffer v, v;
java.nio.ByteOrder v;
int v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: int length>;
staticinvoke <com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = staticinvoke <java.nio.ByteBuffer: java.nio.ByteBuffer wrap(byte[],int,int)>(v, v, v);
v = <java.nio.ByteOrder: java.nio.ByteOrder LITTLE_ENDIAN>;
v = virtualinvoke v.<java.nio.ByteBuffer: java.nio.ByteBuffer order(java.nio.ByteOrder)>(v);
return v;
}
public boolean equals(java.lang.Object)
{
byte[] v, v, v, v;
org.iq.leveldb.util.Slice v;
byte v, v;
int v, v, v, v, v, v, v, v, v, v;
java.lang.Class v, v;
java.lang.Object v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: java.lang.Object;
if v != v goto label;
return 1;
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if v == v goto label;
label:
return 0;
label:
v = v.<org.iq.leveldb.util.Slice: int length>;
v = v.<org.iq.leveldb.util.Slice: int length>;
if v == v goto label;
return 0;
label:
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
if v != v goto label;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
if v != v goto label;
return 1;
label:
v = 0;
label:
v = v.<org.iq.leveldb.util.Slice: int length>;
if v >= v goto label;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v[v];
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v[v];
if v == v goto label;
return 0;
label:
v = v + 1;
goto label;
label:
return 1;
}
public int hashCode()
{
byte[] v;
org.iq.leveldb.util.Slice v;
byte v;
int v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v = v.<org.iq.leveldb.util.Slice: int hash>;
if v == 0 goto label;
v = v.<org.iq.leveldb.util.Slice: int hash>;
return v;
label:
v = v.<org.iq.leveldb.util.Slice: int length>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
label:
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = v + v;
if v >= v goto label;
v = 31 * v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v[v];
v = v + v;
v = v + 1;
goto label;
label:
if v != 0 goto label;
v = 1;
label:
v.<org.iq.leveldb.util.Slice: int hash> = v;
v = v.<org.iq.leveldb.util.Slice: int hash>;
return v;
}
public int compareTo(org.iq.leveldb.util.Slice)
{
byte[] v, v, v, v;
org.iq.leveldb.util.Slice v, v;
short v, v;
byte v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: org.iq.leveldb.util.Slice;
if v != v goto label;
return 0;
label:
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
if v != v goto label;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = v.<org.iq.leveldb.util.Slice: int length>;
if v != v goto label;
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
if v != v goto label;
return 0;
label:
v = v.<org.iq.leveldb.util.Slice: int length>;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = staticinvoke <java.lang.Math: int min(int,int)>(v, v);
v = 0;
label:
if v >= v goto label;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v[v];
v = 255 & v;
v = v.<org.iq.leveldb.util.Slice: byte[] data>;
v = v.<org.iq.leveldb.util.Slice: int offset>;
v = v + v;
v = v[v];
v = 255 & v;
if v == v goto label;
v = v - v;
return v;
label:
v = v + 1;
goto label;
label:
v = v.<org.iq.leveldb.util.Slice: int length>;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = v - v;
return v;
}
public java.lang.String toString(java.nio.charset.Charset)
{
org.iq.leveldb.util.Slice v;
java.nio.charset.Charset v;
int v;
java.lang.String v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: java.nio.charset.Charset;
v = v.<org.iq.leveldb.util.Slice: int length>;
v = virtualinvoke v.<org.iq.leveldb.util.Slice: java.lang.String toString(int,int,java.nio.charset.Charset)>(0, v, v);
return v;
}
public java.lang.String toString(int, int, java.nio.charset.Charset)
{
org.iq.leveldb.util.Slice v;
java.nio.charset.Charset v;
int v, v;
java.lang.String v;
java.nio.ByteBuffer v;
v := @this: org.iq.leveldb.util.Slice;
v := @parameter: int;
v := @parameter: int;
v := @parameter: java.nio.charset.Charset;
if v != 0 goto label;
return "";
label:
v = virtualinvoke v.<org.iq.leveldb.util.Slice: java.nio.ByteBuffer toByteBuffer(int,int)>(v, v);
v = staticinvoke <org.iq.leveldb.util.Slices: java.lang.String decodeString(java.nio.ByteBuffer,java.nio.charset.Charset)>(v, v);
return v;
}
public java.lang.String toString()
{
org.iq.leveldb.util.Slice v;
int v;
java.lang.Class v;
java.lang.String v, v;
v := @this: org.iq.leveldb.util.Slice;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = virtualinvoke v.<org.iq.leveldb.util.Slice: int length()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,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[])>("\u0001(length=\u)");
return v;
}
}