public class oadd.org.apache.commons.collections.buffer.PriorityBuffer extends java.util.AbstractCollection implements oadd.org.apache.commons.collections.Buffer, java.io.Serializable
{
private static final long serialVersionUID;
private static final int DEFAULT_CAPACITY;
protected java.lang.Object[] elements;
protected int size;
protected boolean ascendingOrder;
protected java.util.Comparator comparator;
public void <init>()
{
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
specialinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void <init>(int,boolean,java.util.Comparator)>(13, 1, null);
return;
}
public void <init>(java.util.Comparator)
{
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
java.util.Comparator v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: java.util.Comparator;
specialinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void <init>(int,boolean,java.util.Comparator)>(13, 1, v);
return;
}
public void <init>(boolean)
{
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
boolean v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: boolean;
specialinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void <init>(int,boolean,java.util.Comparator)>(13, v, null);
return;
}
public void <init>(boolean, java.util.Comparator)
{
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
java.util.Comparator v;
boolean v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: boolean;
v := @parameter: java.util.Comparator;
specialinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void <init>(int,boolean,java.util.Comparator)>(13, v, v);
return;
}
public void <init>(int)
{
int v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: int;
specialinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void <init>(int,boolean,java.util.Comparator)>(v, 1, null);
return;
}
public void <init>(int, java.util.Comparator)
{
int v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
java.util.Comparator v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: int;
v := @parameter: java.util.Comparator;
specialinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void <init>(int,boolean,java.util.Comparator)>(v, 1, v);
return;
}
public void <init>(int, boolean)
{
int v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
boolean v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: int;
v := @parameter: boolean;
specialinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void <init>(int,boolean,java.util.Comparator)>(v, v, null);
return;
}
public void <init>(int, boolean, java.util.Comparator)
{
java.lang.Object[] v;
int v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
java.lang.IllegalArgumentException v;
java.util.Comparator v;
boolean v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: int;
v := @parameter: boolean;
v := @parameter: java.util.Comparator;
specialinvoke v.<java.util.AbstractCollection: void <init>()>();
if v > 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>("invalid capacity");
throw v;
label:
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: boolean ascendingOrder> = v;
v = v + 1;
v = newarray (java.lang.Object)[v];
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements> = v;
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.util.Comparator comparator> = v;
return;
}
public boolean isAscendingOrder()
{
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
boolean v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: boolean ascendingOrder>;
return v;
}
public java.util.Comparator comparator()
{
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
java.util.Comparator v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.util.Comparator comparator>;
return v;
}
public int size()
{
int v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
return v;
}
public void clear()
{
java.lang.Object[] v, v;
int v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = lengthof v;
v = newarray (java.lang.Object)[v];
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements> = v;
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size> = 0;
return;
}
public boolean add(java.lang.Object)
{
java.lang.Object v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
boolean v, v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: java.lang.Object;
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: boolean isAtCapacity()>();
if v == 0 goto label;
virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void grow()>();
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: boolean ascendingOrder>;
if v == 0 goto label;
virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void percolateUpMinHeap(java.lang.Object)>(v);
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void percolateUpMaxHeap(java.lang.Object)>(v);
label:
return 1;
}
public java.lang.Object get()
{
java.lang.Object[] v;
oadd.org.apache.commons.collections.BufferUnderflowException v;
java.lang.Object v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
boolean v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: boolean isEmpty()>();
if v == 0 goto label;
v = new oadd.org.apache.commons.collections.BufferUnderflowException;
specialinvoke v.<oadd.org.apache.commons.collections.BufferUnderflowException: void <init>()>();
throw v;
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[1];
return v;
}
public java.lang.Object remove()
{
java.lang.Object[] v, v, v;
int v, v, v, v, v;
java.lang.Object v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
boolean v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object get()>();
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
v = v - 1;
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size> = v;
v = v[v];
v[1] = v;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
v = v + 1;
v[v] = null;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
if v == 0 goto label;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: boolean ascendingOrder>;
if v == 0 goto label;
virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void percolateDownMinHeap(int)>(1);
goto label;
label:
virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void percolateDownMaxHeap(int)>(1);
label:
return v;
}
protected boolean isAtCapacity()
{
java.lang.Object[] v;
int v, v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
boolean v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = lengthof v;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
v = v + 1;
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
}
protected void percolateDownMinHeap(int)
{
java.lang.Object[] v, v, v, v, v, v, v;
int v, v, v, v, v, v, v, v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
java.lang.Object v, v, v, v, v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: int;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v = v;
label:
v = v * 2;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
if v > v goto label;
v = v * 2;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
if v == v goto label;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v + 1;
v = v[v];
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int compare(java.lang.Object,java.lang.Object)>(v, v);
if v >= 0 goto label;
v = v + 1;
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int compare(java.lang.Object,java.lang.Object)>(v, v);
if v >= 0 goto label;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v[v] = v;
v = v;
goto label;
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v[v] = v;
return;
}
protected void percolateDownMaxHeap(int)
{
java.lang.Object[] v, v, v, v, v, v, v;
int v, v, v, v, v, v, v, v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
java.lang.Object v, v, v, v, v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: int;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v = v;
label:
v = v * 2;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
if v > v goto label;
v = v * 2;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
if v == v goto label;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v + 1;
v = v[v];
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int compare(java.lang.Object,java.lang.Object)>(v, v);
if v <= 0 goto label;
v = v + 1;
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int compare(java.lang.Object,java.lang.Object)>(v, v);
if v <= 0 goto label;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v[v] = v;
v = v;
goto label;
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v[v] = v;
return;
}
protected void percolateUpMinHeap(int)
{
java.lang.Object[] v, v, v, v, v;
int v, v, v, v, v;
java.lang.Object v, v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: int;
v = v;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
label:
if v <= 1 goto label;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v / 2;
v = v[v];
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int compare(java.lang.Object,java.lang.Object)>(v, v);
if v >= 0 goto label;
v = v / 2;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v[v] = v;
v = v;
goto label;
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v[v] = v;
return;
}
protected void percolateUpMinHeap(java.lang.Object)
{
java.lang.Object[] v;
int v, v, v;
java.lang.Object v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: java.lang.Object;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
v = v + 1;
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size> = v;
v[v] = v;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void percolateUpMinHeap(int)>(v);
return;
}
protected void percolateUpMaxHeap(int)
{
java.lang.Object[] v, v, v, v, v;
int v, v, v, v, v;
java.lang.Object v, v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: int;
v = v;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
label:
if v <= 1 goto label;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v / 2;
v = v[v];
v = virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int compare(java.lang.Object,java.lang.Object)>(v, v);
if v <= 0 goto label;
v = v / 2;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
v[v] = v;
v = v;
goto label;
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v[v] = v;
return;
}
protected void percolateUpMaxHeap(java.lang.Object)
{
java.lang.Object[] v;
int v, v, v;
java.lang.Object v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: java.lang.Object;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
v = v + 1;
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size> = v;
v[v] = v;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
virtualinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: void percolateUpMaxHeap(int)>(v);
return;
}
protected int compare(java.lang.Object, java.lang.Object)
{
int v, v;
java.lang.Object v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
java.util.Comparator v, v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v := @parameter: java.lang.Object;
v := @parameter: java.lang.Object;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.util.Comparator comparator>;
if v == null goto label;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.util.Comparator comparator>;
v = interfaceinvoke v.<java.util.Comparator: int compare(java.lang.Object,java.lang.Object)>(v, v);
return v;
label:
v = interfaceinvoke v.<java.lang.Comparable: int compareTo(java.lang.Object)>(v);
return v;
}
protected void grow()
{
java.lang.Object[] v, v, v, v;
int v, v, v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = lengthof v;
v = v * 2;
v = newarray (java.lang.Object)[v];
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = lengthof v;
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements> = v;
return;
}
public java.util.Iterator iterator()
{
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer$1 v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = new oadd.org.apache.commons.collections.buffer.PriorityBuffer$1;
specialinvoke v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer$1: void <init>(oadd.org.apache.commons.collections.buffer.PriorityBuffer)>(v);
return v;
}
public java.lang.String toString()
{
java.lang.Object[] v;
java.lang.StringBuffer v;
int v, v, v;
java.lang.Object v;
java.lang.String v;
oadd.org.apache.commons.collections.buffer.PriorityBuffer v;
v := @this: oadd.org.apache.commons.collections.buffer.PriorityBuffer;
v = new java.lang.StringBuffer;
specialinvoke v.<java.lang.StringBuffer: void <init>()>();
virtualinvoke v.<java.lang.StringBuffer: java.lang.StringBuffer append(java.lang.String)>("[ ");
v = 1;
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: int size>;
v = v + 1;
if v >= v goto label;
if v == 1 goto label;
virtualinvoke v.<java.lang.StringBuffer: java.lang.StringBuffer append(java.lang.String)>(", ");
label:
v = v.<oadd.org.apache.commons.collections.buffer.PriorityBuffer: java.lang.Object[] elements>;
v = v[v];
virtualinvoke v.<java.lang.StringBuffer: java.lang.StringBuffer append(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
virtualinvoke v.<java.lang.StringBuffer: java.lang.StringBuffer append(java.lang.String)>(" ]");
v = virtualinvoke v.<java.lang.StringBuffer: java.lang.String toString()>();
return v;
}
}