final class oadd.com.google.common.collect.DenseImmutableTable extends oadd.com.google.common.collect.RegularImmutableTable
{
private final oadd.com.google.common.collect.ImmutableMap rowKeyToIndex;
private final oadd.com.google.common.collect.ImmutableMap columnKeyToIndex;
private final oadd.com.google.common.collect.ImmutableMap rowMap;
private final oadd.com.google.common.collect.ImmutableMap columnMap;
private final int[] rowCounts;
private final int[] columnCounts;
private final java.lang.Object[][] values;
private final int[] cellRowIndices;
private final int[] cellColumnIndices;
void <init>(oadd.com.google.common.collect.ImmutableList, oadd.com.google.common.collect.ImmutableSet, oadd.com.google.common.collect.ImmutableSet)
{
int[] v, v, v, v, v, v;
oadd.com.google.common.collect.DenseImmutableTable$RowMap v;
java.lang.Object[] v, v;
oadd.com.google.common.collect.DenseImmutableTable v;
java.lang.Object[][] v, v, v;
oadd.com.google.common.collect.ImmutableMap v, v, v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v, v, v, v;
oadd.com.google.common.collect.ImmutableSet v, v;
oadd.com.google.common.collect.DenseImmutableTable$ColumnMap v;
oadd.com.google.common.collect.ImmutableList v;
java.lang.Object v, v, v, v, v, v, v, v;
v := @this: oadd.com.google.common.collect.DenseImmutableTable;
v := @parameter: oadd.com.google.common.collect.ImmutableList;
v := @parameter: oadd.com.google.common.collect.ImmutableSet;
v := @parameter: oadd.com.google.common.collect.ImmutableSet;
specialinvoke v.<oadd.com.google.common.collect.RegularImmutableTable: void <init>()>();
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableSet: int size()>();
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableSet: int size()>();
v = newmultiarray (java.lang.Object)[v][v];
v.<oadd.com.google.common.collect.DenseImmutableTable: java.lang.Object[][] values> = v;
v = staticinvoke <oadd.com.google.common.collect.Maps: oadd.com.google.common.collect.ImmutableMap indexMap(java.util.Collection)>(v);
v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap rowKeyToIndex> = v;
v = staticinvoke <oadd.com.google.common.collect.Maps: oadd.com.google.common.collect.ImmutableMap indexMap(java.util.Collection)>(v);
v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap columnKeyToIndex> = v;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap rowKeyToIndex>;
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableMap: int size()>();
v = newarray (int)[v];
v.<oadd.com.google.common.collect.DenseImmutableTable: int[] rowCounts> = v;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap columnKeyToIndex>;
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableMap: int size()>();
v = newarray (int)[v];
v.<oadd.com.google.common.collect.DenseImmutableTable: int[] columnCounts> = v;
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableList: int size()>();
v = newarray (int)[v];
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableList: int size()>();
v = newarray (int)[v];
v = 0;
label:
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableList: int size()>();
if v >= v goto label;
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = interfaceinvoke v.<oadd.com.google.common.collect.Table$Cell: java.lang.Object getRowKey()>();
v = interfaceinvoke v.<oadd.com.google.common.collect.Table$Cell: java.lang.Object getColumnKey()>();
v = v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap rowKeyToIndex>;
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableMap: java.lang.Object get(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap columnKeyToIndex>;
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableMap: java.lang.Object get(java.lang.Object)>(v);
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = v.<oadd.com.google.common.collect.DenseImmutableTable: java.lang.Object[][] values>;
v = v[v];
v = v[v];
v = interfaceinvoke v.<oadd.com.google.common.collect.Table$Cell: java.lang.Object getValue()>();
virtualinvoke v.<oadd.com.google.common.collect.DenseImmutableTable: void checkNoDuplicate(java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object)>(v, v, v, v);
v = v.<oadd.com.google.common.collect.DenseImmutableTable: java.lang.Object[][] values>;
v = v[v];
v = interfaceinvoke v.<oadd.com.google.common.collect.Table$Cell: java.lang.Object getValue()>();
v[v] = v;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] rowCounts>;
v = v[v];
v = v + 1;
v[v] = v;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] columnCounts>;
v = v[v];
v = v + 1;
v[v] = v;
v[v] = v;
v[v] = v;
v = v + 1;
goto label;
label:
v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellRowIndices> = v;
v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellColumnIndices> = v;
v = new oadd.com.google.common.collect.DenseImmutableTable$RowMap;
specialinvoke v.<oadd.com.google.common.collect.DenseImmutableTable$RowMap: void <init>(oadd.com.google.common.collect.DenseImmutableTable)>(v);
v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap rowMap> = v;
v = new oadd.com.google.common.collect.DenseImmutableTable$ColumnMap;
specialinvoke v.<oadd.com.google.common.collect.DenseImmutableTable$ColumnMap: void <init>(oadd.com.google.common.collect.DenseImmutableTable)>(v);
v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap columnMap> = v;
return;
}
public oadd.com.google.common.collect.ImmutableMap columnMap()
{
oadd.com.google.common.collect.DenseImmutableTable v;
oadd.com.google.common.collect.ImmutableMap v, v;
v := @this: oadd.com.google.common.collect.DenseImmutableTable;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap columnMap>;
v = staticinvoke <oadd.com.google.common.collect.ImmutableMap: oadd.com.google.common.collect.ImmutableMap copyOf(java.util.Map)>(v);
return v;
}
public oadd.com.google.common.collect.ImmutableMap rowMap()
{
oadd.com.google.common.collect.DenseImmutableTable v;
oadd.com.google.common.collect.ImmutableMap v, v;
v := @this: oadd.com.google.common.collect.DenseImmutableTable;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap rowMap>;
v = staticinvoke <oadd.com.google.common.collect.ImmutableMap: oadd.com.google.common.collect.ImmutableMap copyOf(java.util.Map)>(v);
return v;
}
public java.lang.Object get(java.lang.Object, java.lang.Object)
{
java.lang.Object[] v;
oadd.com.google.common.collect.DenseImmutableTable v;
java.lang.Object[][] v;
oadd.com.google.common.collect.ImmutableMap v, v;
int v, v;
java.lang.Object v, v, v, v, v;
v := @this: oadd.com.google.common.collect.DenseImmutableTable;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap rowKeyToIndex>;
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableMap: java.lang.Object get(java.lang.Object)>(v);
v = v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableMap columnKeyToIndex>;
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableMap: java.lang.Object get(java.lang.Object)>(v);
if v == null goto label;
if v != null goto label;
label:
v = null;
goto label;
label:
v = v.<oadd.com.google.common.collect.DenseImmutableTable: java.lang.Object[][] values>;
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = v[v];
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = v[v];
label:
return v;
}
public int size()
{
int v;
oadd.com.google.common.collect.DenseImmutableTable v;
int[] v;
v := @this: oadd.com.google.common.collect.DenseImmutableTable;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellRowIndices>;
v = lengthof v;
return v;
}
oadd.com.google.common.collect.Table$Cell getCell(int)
{
java.lang.Object[] v;
oadd.com.google.common.collect.DenseImmutableTable v;
java.lang.Object[][] v;
oadd.com.google.common.collect.Table$Cell v;
int[] v, v;
int v, v, v;
oadd.com.google.common.collect.ImmutableSet v, v;
oadd.com.google.common.collect.ImmutableList v, v;
java.lang.Object v, v, v;
v := @this: oadd.com.google.common.collect.DenseImmutableTable;
v := @parameter: int;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellRowIndices>;
v = v[v];
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellColumnIndices>;
v = v[v];
v = virtualinvoke v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableSet rowKeySet()>();
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableSet: oadd.com.google.common.collect.ImmutableList asList()>();
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.ImmutableSet columnKeySet()>();
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableSet: oadd.com.google.common.collect.ImmutableList asList()>();
v = virtualinvoke v.<oadd.com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = v.<oadd.com.google.common.collect.DenseImmutableTable: java.lang.Object[][] values>;
v = v[v];
v = v[v];
v = staticinvoke <oadd.com.google.common.collect.DenseImmutableTable: oadd.com.google.common.collect.Table$Cell cellOf(java.lang.Object,java.lang.Object,java.lang.Object)>(v, v, v);
return v;
}
java.lang.Object getValue(int)
{
java.lang.Object[] v;
oadd.com.google.common.collect.DenseImmutableTable v;
java.lang.Object[][] v;
int[] v, v;
int v, v, v;
java.lang.Object v;
v := @this: oadd.com.google.common.collect.DenseImmutableTable;
v := @parameter: int;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: java.lang.Object[][] values>;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellRowIndices>;
v = v[v];
v = v[v];
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellColumnIndices>;
v = v[v];
v = v[v];
return v;
}
oadd.com.google.common.collect.ImmutableTable$SerializedForm createSerializedForm()
{
oadd.com.google.common.collect.ImmutableTable$SerializedForm v;
int[] v, v;
oadd.com.google.common.collect.DenseImmutableTable v;
v := @this: oadd.com.google.common.collect.DenseImmutableTable;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellRowIndices>;
v = v.<oadd.com.google.common.collect.DenseImmutableTable: int[] cellColumnIndices>;
v = staticinvoke <oadd.com.google.common.collect.ImmutableTable$SerializedForm: oadd.com.google.common.collect.ImmutableTable$SerializedForm create(oadd.com.google.common.collect.ImmutableTable,int[],int[])>(v, v, v);
return v;
}
}