class oadd.com.google.common.collect.ConsumingQueueIterator extends oadd.com.google.common.collect.AbstractIterator
{
private final java.util.Queue queue;
transient void <init>(java.lang.Object[])
{
java.lang.Object[] v;
int v;
java.util.Queue v;
oadd.com.google.common.collect.ConsumingQueueIterator v;
java.util.ArrayDeque v;
v := @this: oadd.com.google.common.collect.ConsumingQueueIterator;
v := @parameter: java.lang.Object[];
specialinvoke v.<oadd.com.google.common.collect.AbstractIterator: void <init>()>();
v = new java.util.ArrayDeque;
v = lengthof v;
specialinvoke v.<java.util.ArrayDeque: void <init>(int)>(v);
v.<oadd.com.google.common.collect.ConsumingQueueIterator: java.util.Queue queue> = v;
v = v.<oadd.com.google.common.collect.ConsumingQueueIterator: java.util.Queue queue>;
staticinvoke <java.util.Collections: boolean addAll(java.util.Collection,java.lang.Object[])>(v, v);
return;
}
void <init>(java.util.Queue)
{
java.lang.Object v;
java.util.Queue v;
oadd.com.google.common.collect.ConsumingQueueIterator v;
v := @this: oadd.com.google.common.collect.ConsumingQueueIterator;
v := @parameter: java.util.Queue;
specialinvoke v.<oadd.com.google.common.collect.AbstractIterator: void <init>()>();
v = staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v.<oadd.com.google.common.collect.ConsumingQueueIterator: java.util.Queue queue> = v;
return;
}
public java.lang.Object computeNext()
{
java.lang.Object v;
java.util.Queue v, v;
oadd.com.google.common.collect.ConsumingQueueIterator v;
boolean v;
v := @this: oadd.com.google.common.collect.ConsumingQueueIterator;
v = v.<oadd.com.google.common.collect.ConsumingQueueIterator: java.util.Queue queue>;
v = interfaceinvoke v.<java.util.Queue: boolean isEmpty()>();
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.collect.ConsumingQueueIterator: java.lang.Object endOfData()>();
goto label;
label:
v = v.<oadd.com.google.common.collect.ConsumingQueueIterator: java.util.Queue queue>;
v = interfaceinvoke v.<java.util.Queue: java.lang.Object remove()>();
label:
return v;
}
}