public final class oadd.com.google.common.primitives.Ints extends oadd.com.google.common.primitives.IntsMethodsForWeb
{
public static final int BYTES;
public static final int MAX_POWER_OF_TWO;
private void <init>()
{
oadd.com.google.common.primitives.Ints v;
v := @this: oadd.com.google.common.primitives.Ints;
specialinvoke v.<oadd.com.google.common.primitives.IntsMethodsForWeb: void <init>()>();
return;
}
public static int hashCode(int)
{
int v;
v := @parameter: int;
return v;
}
public static int checkedCast(long)
{
byte v;
int v;
long v;
boolean v;
v := @parameter: long;
v = v cmp v;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <oadd.com.google.common.base.Preconditions: void checkArgument(boolean,java.lang.String,long)>(v, "Out of range: %s", v);
return v;
}
public static int saturatedCast(long)
{
long v;
byte v, v;
v := @parameter: long;
v = v cmp 2147483647L;
if v <= 0 goto label;
return 2147483647;
label:
v = v cmp -2147483648L;
if v >= 0 goto label;
return -2147483648;
label:
return v;
}
public static int compare(int, int)
{
int v, v;
byte v;
v := @parameter: int;
v := @parameter: int;
if v >= v goto label;
v = -1;
goto label;
label:
if v <= v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
public static boolean contains(int[], int)
{
int[] v;
int v, v, v, v;
v := @parameter: int[];
v := @parameter: int;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v != v goto label;
return 1;
label:
v = v + 1;
goto label;
label:
return 0;
}
public static int indexOf(int[], int)
{
int[] v;
int v, v, v;
v := @parameter: int[];
v := @parameter: int;
v = lengthof v;
v = staticinvoke <oadd.com.google.common.primitives.Ints: int indexOf(int[],int,int,int)>(v, v, 0, v);
return v;
}
private static int indexOf(int[], int, int, int)
{
int[] v;
int v, v, v, v, v, v;
v := @parameter: int[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v = v;
label:
if v >= v goto label;
v = v[v];
if v != v goto label;
return v;
label:
v = v + 1;
goto label;
label:
v = (int) -1;
return v;
}
public static int indexOf(int[], int[])
{
int[] v, v;
int v, v, v, v, v, v, v, v, v, v, v, v;
v := @parameter: int[];
v := @parameter: int[];
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object,java.lang.Object)>(v, "array");
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object,java.lang.Object)>(v, "target");
v = lengthof v;
if v != 0 goto label;
return 0;
label:
v = 0;
label:
v = lengthof v;
v = lengthof v;
v = v - v;
v = v + 1;
if v >= v goto label;
v = 0;
label:
v = lengthof v;
if v >= v goto label;
v = v + v;
v = v[v];
v = v[v];
if v != v goto label;
v = v + 1;
goto label;
label:
return v;
label:
v = v + 1;
goto label;
label:
v = (int) -1;
return v;
}
public static int lastIndexOf(int[], int)
{
int[] v;
int v, v, v;
v := @parameter: int[];
v := @parameter: int;
v = lengthof v;
v = staticinvoke <oadd.com.google.common.primitives.Ints: int lastIndexOf(int[],int,int,int)>(v, v, 0, v);
return v;
}
private static int lastIndexOf(int[], int, int, int)
{
int[] v;
int v, v, v, v, v, v;
v := @parameter: int[];
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v = v - 1;
label:
if v < v goto label;
v = v[v];
if v != v goto label;
return v;
label:
v = v - 1;
goto label;
label:
v = (int) -1;
return v;
}
public static transient int min(int[])
{
int[] v;
int v, v, v, v, v;
boolean v;
v := @parameter: int[];
v = lengthof v;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <oadd.com.google.common.base.Preconditions: void checkArgument(boolean)>(v);
v = v[0];
v = 1;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
if v >= v goto label;
v = v[v];
label:
v = v + 1;
goto label;
label:
return v;
}
public static transient int max(int[])
{
int[] v;
int v, v, v, v, v;
boolean v;
v := @parameter: int[];
v = lengthof v;
if v <= 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <oadd.com.google.common.base.Preconditions: void checkArgument(boolean)>(v);
v = v[0];
v = 1;
label:
v = lengthof v;
if v >= v goto label;
v = v[v];
if v <= v goto label;
v = v[v];
label:
v = v + 1;
goto label;
label:
return v;
}
public static int constrainToRange(int, int, int)
{
int v, v, v, v, v;
boolean v;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
if v > v goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <oadd.com.google.common.base.Preconditions: void checkArgument(boolean,java.lang.String,int,int)>(v, "min (%s) must be less than or equal to max (%s)", v, v);
v = staticinvoke <java.lang.Math: int max(int,int)>(v, v);
v = staticinvoke <java.lang.Math: int min(int,int)>(v, v);
return v;
}
public static transient int[] concat(int[][])
{
int[][] v;
int[] v, v, v;
int v, v, v, v, v, v, v, v, v;
v := @parameter: int[][];
v = 0;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = lengthof v;
v = v + v;
v = v + 1;
goto label;
label:
v = newarray (int)[v];
v = 0;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = lengthof v;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, v, v);
v = lengthof v;
v = v + v;
v = v + 1;
goto label;
label:
return v;
}
public static byte[] toByteArray(int)
{
byte[] v;
int v, v, v, v;
v := @parameter: int;
v = newarray (byte)[4];
v = v >> 24;
v[0] = v;
v = v >> 16;
v[1] = v;
v = v >> 8;
v[2] = v;
v[3] = v;
return v;
}
public static int fromByteArray(byte[])
{
byte[] v;
byte v, v, v, v;
int v, v, v;
boolean v;
v := @parameter: byte[];
v = lengthof v;
if v < 4 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = lengthof v;
staticinvoke <oadd.com.google.common.base.Preconditions: void checkArgument(boolean,java.lang.String,int,int)>(v, "array too small: %s < %s", v, 4);
v = v[0];
v = v[1];
v = v[2];
v = v[3];
v = staticinvoke <oadd.com.google.common.primitives.Ints: int fromBytes(byte,byte,byte,byte)>(v, v, v, v);
return v;
}
public static int fromBytes(byte, byte, byte, byte)
{
short v, v, v;
byte v, v, v, v;
int v, v, v, v, v, v;
v := @parameter: byte;
v := @parameter: byte;
v := @parameter: byte;
v := @parameter: byte;
v = v << 24;
v = v & 255;
v = v << 16;
v = v | v;
v = v & 255;
v = v << 8;
v = v | v;
v = v & 255;
v = v | v;
return v;
}
public static oadd.com.google.common.base.Converter stringConverter()
{
oadd.com.google.common.primitives.Ints$IntConverter v;
v = <oadd.com.google.common.primitives.Ints$IntConverter: oadd.com.google.common.primitives.Ints$IntConverter INSTANCE>;
return v;
}
public static int[] ensureCapacity(int[], int, int)
{
int[] v, v;
int v, v, v, v;
boolean v, v;
v := @parameter: int[];
v := @parameter: int;
v := @parameter: int;
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <oadd.com.google.common.base.Preconditions: void checkArgument(boolean,java.lang.String,int)>(v, "Invalid minLength: %s", v);
if v < 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
staticinvoke <oadd.com.google.common.base.Preconditions: void checkArgument(boolean,java.lang.String,int)>(v, "Invalid padding: %s", v);
v = lengthof v;
if v >= v goto label;
v = v + v;
v = staticinvoke <java.util.Arrays: int[] copyOf(int[],int)>(v, v);
goto label;
label:
v = v;
label:
return v;
}
public static transient java.lang.String join(java.lang.String, int[])
{
int[] v;
int v, v, v, v, v, v, v;
java.lang.StringBuilder v, v;
java.lang.String v, v;
v := @parameter: java.lang.String;
v := @parameter: int[];
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = lengthof v;
if v != 0 goto label;
return "";
label:
v = new java.lang.StringBuilder;
v = lengthof v;
v = v * 5;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(v);
v = v[0];
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(int)>(v);
v = 1;
label:
v = lengthof v;
if v >= v goto label;
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = v[v];
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(int)>(v);
v = v + 1;
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
public static java.util.Comparator lexicographicalComparator()
{
oadd.com.google.common.primitives.Ints$LexicographicalComparator v;
v = <oadd.com.google.common.primitives.Ints$LexicographicalComparator: oadd.com.google.common.primitives.Ints$LexicographicalComparator INSTANCE>;
return v;
}
public static void sortDescending(int[])
{
int v;
int[] v;
v := @parameter: int[];
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = lengthof v;
staticinvoke <oadd.com.google.common.primitives.Ints: void sortDescending(int[],int,int)>(v, 0, v);
return;
}
public static void sortDescending(int[], int, int)
{
int[] v;
int v, v, v;
v := @parameter: int[];
v := @parameter: int;
v := @parameter: int;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = lengthof v;
staticinvoke <oadd.com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
staticinvoke <java.util.Arrays: void sort(int[],int,int)>(v, v, v);
staticinvoke <oadd.com.google.common.primitives.Ints: void reverse(int[],int,int)>(v, v, v);
return;
}
public static void reverse(int[])
{
int v;
int[] v;
v := @parameter: int[];
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = lengthof v;
staticinvoke <oadd.com.google.common.primitives.Ints: void reverse(int[],int,int)>(v, 0, v);
return;
}
public static void reverse(int[], int, int)
{
int[] v;
int v, v, v, v, v, v, v;
v := @parameter: int[];
v := @parameter: int;
v := @parameter: int;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = lengthof v;
staticinvoke <oadd.com.google.common.base.Preconditions: void checkPositionIndexes(int,int,int)>(v, v, v);
v = v;
v = v - 1;
label:
if v >= v goto label;
v = v[v];
v = v[v];
v[v] = v;
v[v] = v;
v = v + 1;
v = v - 1;
goto label;
label:
return;
}
public static int[] toArray(java.util.Collection)
{
java.lang.Object[] v;
java.util.Collection v;
int[] v, v;
int v, v, v;
java.lang.Object v, v;
boolean v;
v := @parameter: java.util.Collection;
v = v instanceof oadd.com.google.common.primitives.Ints$IntArrayAsList;
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.primitives.Ints$IntArrayAsList: int[] toIntArray()>();
return v;
label:
v = interfaceinvoke v.<java.util.Collection: java.lang.Object[] toArray()>();
v = lengthof v;
v = newarray (int)[v];
v = 0;
label:
if v >= v goto label;
v = v[v];
v = staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.Number: int intValue()>();
v[v] = v;
v = v + 1;
goto label;
label:
return v;
}
public static transient java.util.List asList(int[])
{
java.util.List v;
int[] v;
int v;
oadd.com.google.common.primitives.Ints$IntArrayAsList v;
v := @parameter: int[];
v = lengthof v;
if v != 0 goto label;
v = staticinvoke <java.util.Collections: java.util.List emptyList()>();
return v;
label:
v = new oadd.com.google.common.primitives.Ints$IntArrayAsList;
specialinvoke v.<oadd.com.google.common.primitives.Ints$IntArrayAsList: void <init>(int[])>(v);
return v;
}
public static java.lang.Integer tryParse(java.lang.String)
{
java.lang.String v;
java.lang.Integer v;
v := @parameter: java.lang.String;
v = staticinvoke <oadd.com.google.common.primitives.Ints: java.lang.Integer tryParse(java.lang.String,int)>(v, 10);
return v;
}
public static java.lang.Integer tryParse(java.lang.String, int)
{
long v;
java.lang.Integer v;
byte v;
java.lang.Long v;
int v, v, v;
java.lang.String v;
v := @parameter: java.lang.String;
v := @parameter: int;
v = staticinvoke <oadd.com.google.common.primitives.Longs: java.lang.Long tryParse(java.lang.String,int)>(v, v);
if v == null goto label;
v = virtualinvoke v.<java.lang.Long: long longValue()>();
v = virtualinvoke v.<java.lang.Long: int intValue()>();
v = v cmp v;
if v == 0 goto label;
label:
return null;
label:
v = virtualinvoke v.<java.lang.Long: int intValue()>();
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
return v;
}
}