public class org.apache.commons.collections.iterators.IteratorIterable extends java.lang.Object implements java.lang.Iterable
{
private final java.util.Iterator iterator;
private final java.util.Iterator typeSafeIterator;
private static java.util.Iterator createTypesafeIterator(java.util.Iterator)
{
java.util.Iterator v;
org.apache.commons.collections.iterators.IteratorIterable$1 v;
v := @parameter: java.util.Iterator;
v = new org.apache.commons.collections.iterators.IteratorIterable$1;
specialinvoke v.<org.apache.commons.collections.iterators.IteratorIterable$1: void <init>(java.util.Iterator)>(v);
return v;
}
public void <init>(java.util.Iterator)
{
java.util.Iterator v;
org.apache.commons.collections.iterators.IteratorIterable v;
v := @this: org.apache.commons.collections.iterators.IteratorIterable;
v := @parameter: java.util.Iterator;
specialinvoke v.<org.apache.commons.collections.iterators.IteratorIterable: void <init>(java.util.Iterator,boolean)>(v, 0);
return;
}
public void <init>(java.util.Iterator, boolean)
{
org.apache.commons.collections.iterators.ListIteratorWrapper v;
java.util.Iterator v, v, v;
org.apache.commons.collections.iterators.IteratorIterable v;
boolean v, v;
v := @this: org.apache.commons.collections.iterators.IteratorIterable;
v := @parameter: java.util.Iterator;
v := @parameter: boolean;
specialinvoke v.<java.lang.Object: void <init>()>();
if v == 0 goto label;
v = v instanceof org.apache.commons.collections.ResettableIterator;
if v != 0 goto label;
v = new org.apache.commons.collections.iterators.ListIteratorWrapper;
specialinvoke v.<org.apache.commons.collections.iterators.ListIteratorWrapper: void <init>(java.util.Iterator)>(v);
v.<org.apache.commons.collections.iterators.IteratorIterable: java.util.Iterator iterator> = v;
goto label;
label:
v.<org.apache.commons.collections.iterators.IteratorIterable: java.util.Iterator iterator> = v;
label:
v = v.<org.apache.commons.collections.iterators.IteratorIterable: java.util.Iterator iterator>;
v = staticinvoke <org.apache.commons.collections.iterators.IteratorIterable: java.util.Iterator createTypesafeIterator(java.util.Iterator)>(v);
v.<org.apache.commons.collections.iterators.IteratorIterable: java.util.Iterator typeSafeIterator> = v;
return;
}
public java.util.Iterator iterator()
{
java.util.Iterator v, v, v;
org.apache.commons.collections.iterators.IteratorIterable v;
boolean v;
v := @this: org.apache.commons.collections.iterators.IteratorIterable;
v = v.<org.apache.commons.collections.iterators.IteratorIterable: java.util.Iterator iterator>;
v = v instanceof org.apache.commons.collections.ResettableIterator;
if v == 0 goto label;
v = v.<org.apache.commons.collections.iterators.IteratorIterable: java.util.Iterator iterator>;
interfaceinvoke v.<org.apache.commons.collections.ResettableIterator: void reset()>();
label:
v = v.<org.apache.commons.collections.iterators.IteratorIterable: java.util.Iterator typeSafeIterator>;
return v;
}
}