abstract class com.google.common.collect.testing.AbstractIteratorTester extends java.lang.Object
{
private com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli;
private final java.util.Iterator elementsToInsert;
private final java.util.Set features;
private final java.util.List expectedElements;
private final int startIndex;
private final com.google.common.collect.testing.AbstractIteratorTester$KnownOrder knownOrder;
private static final com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation REMOVE_METHOD;
private static final com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation NEXT_METHOD;
private static final com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation PREVIOUS_METHOD;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus hasNext;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus next;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus remove;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus hasPrevious;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus nextIndex;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus previousIndex;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus previous;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus add;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus set;
void <init>(int, java.lang.Iterable, java.lang.Iterable, java.lang.Iterable, com.google.common.collect.testing.AbstractIteratorTester$KnownOrder, int)
{
com.google.common.collect.testing.AbstractIteratorTester v;
com.google.common.collect.testing.AbstractIteratorTester$6 v;
java.lang.Iterable v, v, v;
com.google.common.collect.testing.AbstractIteratorTester$7 v;
int v, v;
boolean v;
java.util.Iterator v, v;
java.util.Set v;
java.lang.IllegalArgumentException v;
com.google.common.collect.testing.AbstractIteratorTester$8 v;
com.google.common.collect.testing.AbstractIteratorTester$9 v;
java.util.List v;
com.google.common.collect.testing.AbstractIteratorTester$10 v;
com.google.common.collect.testing.AbstractIteratorTester$KnownOrder v;
com.google.common.collect.testing.AbstractIteratorTester$11 v;
com.google.common.collect.testing.AbstractIteratorTester$12 v;
com.google.common.collect.testing.AbstractIteratorTester$13 v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] v;
com.google.common.collect.testing.AbstractIteratorTester$14 v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v := @parameter: int;
v := @parameter: java.lang.Iterable;
v := @parameter: java.lang.Iterable;
v := @parameter: java.lang.Iterable;
v := @parameter: com.google.common.collect.testing.AbstractIteratorTester$KnownOrder;
v := @parameter: int;
specialinvoke v.<java.lang.Object: void <init>()>();
v = new com.google.common.collect.testing.AbstractIteratorTester$6;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$6: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "hasNext");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus hasNext> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$7;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$7: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "next");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus next> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$8;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$8: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "remove");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus remove> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$9;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$9: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "hasPrevious");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus hasPrevious> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$10;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$10: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "nextIndex");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus nextIndex> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$11;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$11: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "previousIndex");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus previousIndex> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$12;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$12: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "previous");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus previous> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$13;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$13: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "add");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus add> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$14;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$14: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.String)>(v, "set");
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus set> = v;
v = newarray (com.google.common.collect.testing.AbstractIteratorTester$Stimulus)[v];
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli> = v;
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v != 0 goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = staticinvoke <com.google.common.collect.testing.Helpers: java.util.Iterator cycle(java.lang.Iterable)>(v);
v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.Iterator elementsToInsert> = v;
v = staticinvoke <com.google.common.collect.testing.Helpers: java.util.Set copyToSet(java.lang.Iterable)>(v);
v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.Set features> = v;
v = staticinvoke <com.google.common.collect.testing.Helpers: java.util.List copyToList(java.lang.Iterable)>(v);
v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.List expectedElements> = v;
v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$KnownOrder knownOrder> = v;
v.<com.google.common.collect.testing.AbstractIteratorTester: int startIndex> = v;
return;
}
protected abstract java.lang.Iterable getStimulusValues();
protected abstract java.util.Iterator newTargetIterator();
protected void verify(java.util.List)
{
com.google.common.collect.testing.AbstractIteratorTester v;
java.util.List v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v := @parameter: java.util.List;
return;
}
public final void test()
{
com.google.common.collect.testing.AbstractIteratorTester v;
java.lang.RuntimeException v, v;
java.lang.String v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
label:
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester: void recurse(int)>(0);
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.RuntimeException;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli>;
v = staticinvoke <java.util.Arrays: java.lang.String toString(java.lang.Object[])>(v);
specialinvoke v.<java.lang.RuntimeException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
return;
catch java.lang.RuntimeException from label to label with label;
}
public void testForEachRemaining()
{
java.util.Iterator v;
com.google.common.collect.testing.AbstractIteratorTester v;
java.util.ArrayList v;
java.util.function.Consumer v;
java.util.List v, v, v;
com.google.common.collect.testing.AbstractIteratorTester$KnownOrder v, v;
int v, v, v, v;
java.lang.Object v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v = 0;
label:
v = v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.List expectedElements>;
v = interfaceinvoke v.<java.util.List: int size()>();
v = v - 1;
if v >= v goto label;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = virtualinvoke v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.Iterator newTargetIterator()>();
v = 0;
label:
if v >= v goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = v + 1;
goto label;
label:
virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <com.google.common.collect.testing.AbstractIteratorTester$add__1: java.util.function.Consumer bootstrap$(java.util.List)>(v);
interfaceinvoke v.<java.util.Iterator: void forEachRemaining(java.util.function.Consumer)>(v);
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$KnownOrder knownOrder>;
v = <com.google.common.collect.testing.AbstractIteratorTester$KnownOrder: com.google.common.collect.testing.AbstractIteratorTester$KnownOrder KNOWN_ORDER>;
if v != v goto label;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.List expectedElements>;
staticinvoke <junit.framework.Assert: void assertEquals(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.List expectedElements>;
staticinvoke <com.google.common.collect.testing.Helpers: void assertEqualIgnoringOrder(java.lang.Iterable,java.lang.Iterable)>(v, v);
label:
v = v + 1;
goto label;
label:
return;
}
private void recurse(int)
{
java.util.Iterator v;
com.google.common.collect.testing.AbstractIteratorTester v;
java.lang.Iterable v;
int v, v, v;
java.lang.Object v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] v, v;
boolean v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v := @parameter: int;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli>;
v = lengthof v;
if v != v goto label;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester: void compareResultsForThisListOfStimuli()>();
goto label;
label:
v = virtualinvoke v.<com.google.common.collect.testing.AbstractIteratorTester: java.lang.Iterable getStimulusValues()>();
v = interfaceinvoke v.<java.lang.Iterable: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli>;
v[v] = v;
v = v + 1;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester: void recurse(int)>(v);
goto label;
label:
return;
}
private void compareResultsForThisListOfStimuli()
{
java.lang.Throwable v;
com.google.common.collect.testing.AbstractIteratorTester v;
com.google.common.collect.testing.AbstractIteratorTester$MultiExceptionListIterator v;
int v, v, v, v, v;
java.lang.String v;
boolean v;
java.util.Iterator v;
java.util.Set v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus v, v;
java.util.List v, v, v, v;
com.google.common.collect.testing.IteratorFeature v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] v, v, v, v, v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli>;
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus remove>;
v = staticinvoke <java.util.Collections: int frequency(java.util.Collection,java.lang.Object)>(v, v);
v = v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.Set features>;
v = <com.google.common.collect.testing.IteratorFeature: com.google.common.collect.testing.IteratorFeature SUPPORTS_REMOVE>;
v = interfaceinvoke v.<java.util.Set: boolean contains(java.lang.Object)>(v);
if v != 0 goto label;
if v > 1 goto label;
label:
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli>;
v = lengthof v;
if v < 5 goto label;
if v <= 2 goto label;
label:
return;
label:
v = new com.google.common.collect.testing.AbstractIteratorTester$MultiExceptionListIterator;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.List expectedElements>;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$MultiExceptionListIterator: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.util.List)>(v, v);
v = virtualinvoke v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.Iterator newTargetIterator()>();
v = 0;
label:
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli>;
v = lengthof v;
if v >= v goto label;
label:
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli>;
v = v[v];
virtualinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$Stimulus: void executeAndCompare(java.util.ListIterator,java.util.Iterator)>(v, v);
v = specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$MultiExceptionListIterator: java.util.List getElements()>();
virtualinvoke v.<com.google.common.collect.testing.AbstractIteratorTester: void verify(java.util.List)>(v);
label:
goto label;
label:
v := @caughtexception;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] stimuli>;
v = v + 1;
v = staticinvoke <com.google.common.collect.testing.AbstractIteratorTester: java.util.List subListCopy(java.lang.Object[],int)>(v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.util.List)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("failed with stimuli \u0001");
staticinvoke <com.google.common.collect.testing.Helpers: void fail(java.lang.Throwable,java.lang.Object)>(v, v);
label:
v = v + 1;
goto label;
label:
return;
catch junit.framework.AssertionFailedError from label to label with label;
}
private static java.util.List subListCopy(java.lang.Object[], int)
{
java.util.List v;
java.lang.Object[] v, v;
int v;
v := @parameter: java.lang.Object[];
v := @parameter: int;
v = newarray (java.lang.Object)[v];
staticinvoke <java.lang.System: void arraycopy(java.lang.Object,int,java.lang.Object,int,int)>(v, 0, v, 0, v);
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
return v;
}
private void internalExecuteAndCompare(java.util.Iterator, java.util.Iterator, com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation)
{
com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation v, v;
com.google.common.collect.testing.AbstractIteratorTester v;
java.lang.String v, v;
java.util.Iterator v, v;
java.lang.RuntimeException v, v;
com.google.common.collect.testing.AbstractIteratorTester$PermittedMetaException v, v;
com.google.common.collect.testing.AbstractIteratorTester$UnknownElementException v;
com.google.common.collect.testing.AbstractIteratorTester$KnownOrder v, v;
java.lang.Object v, v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v := @parameter: java.util.Iterator;
v := @parameter: java.util.Iterator;
v := @parameter: com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation;
v = null;
v = null;
v = null;
v = null;
label:
v = interfaceinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation: java.lang.Object execute(java.util.Iterator)>(v);
label:
goto label;
label:
v := @caughtexception;
v = v;
label:
v = <com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation NEXT_METHOD>;
if v != v goto label;
if v != null goto label;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$KnownOrder knownOrder>;
v = <com.google.common.collect.testing.AbstractIteratorTester$KnownOrder: com.google.common.collect.testing.AbstractIteratorTester$KnownOrder UNKNOWN_ORDER>;
if v != v goto label;
virtualinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$MultiExceptionListIterator: void promoteToNext(java.lang.Object)>(v);
label:
v = interfaceinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation: java.lang.Object execute(java.util.Iterator)>(v);
label:
goto label;
label:
v := @caughtexception;
v = v;
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$UnknownElementException: java.lang.String getMessage()>();
staticinvoke <com.google.common.collect.testing.Helpers: void fail(java.lang.Throwable,java.lang.Object)>(v, v);
label:
if v != null goto label;
if v == null goto label;
staticinvoke <com.google.common.collect.testing.Helpers: void fail(java.lang.Throwable,java.lang.Object)>(v, "Target threw exception when reference did not");
label:
staticinvoke <junit.framework.Assert: void assertEquals(java.lang.Object,java.lang.Object)>(v, v);
return;
label:
if v != null goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (com.google.common.collect.testing.AbstractIteratorTester$PermittedMetaException)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Target failed to throw \u0001");
staticinvoke <junit.framework.Assert: void fail(java.lang.String)>(v);
label:
virtualinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$PermittedMetaException: void assertPermitted(java.lang.RuntimeException)>(v);
return;
catch java.lang.RuntimeException from label to label with label;
catch com.google.common.collect.testing.AbstractIteratorTester$PermittedMetaException from label to label with label;
catch com.google.common.collect.testing.AbstractIteratorTester$UnknownElementException from label to label with label;
}
private final com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation newAddMethod()
{
java.util.Iterator v;
com.google.common.collect.testing.AbstractIteratorTester v;
java.lang.Object v;
com.google.common.collect.testing.AbstractIteratorTester$4 v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.Iterator elementsToInsert>;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = new com.google.common.collect.testing.AbstractIteratorTester$4;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$4: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.Object)>(v, v);
return v;
}
private final com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation newSetMethod()
{
java.util.Iterator v;
com.google.common.collect.testing.AbstractIteratorTester v;
java.lang.Object v;
com.google.common.collect.testing.AbstractIteratorTester$5 v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: java.util.Iterator elementsToInsert>;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = new com.google.common.collect.testing.AbstractIteratorTester$5;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$5: void <init>(com.google.common.collect.testing.AbstractIteratorTester,java.lang.Object)>(v, v);
return v;
}
java.util.List iteratorStimuli()
{
java.util.List v;
com.google.common.collect.testing.AbstractIteratorTester v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus v, v, v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v = newarray (com.google.common.collect.testing.AbstractIteratorTester$Stimulus)[3];
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus hasNext>;
v[0] = v;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus next>;
v[1] = v;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus remove>;
v[2] = v;
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
return v;
}
java.util.List listIteratorStimuli()
{
com.google.common.collect.testing.AbstractIteratorTester v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus v, v, v, v, v, v;
java.util.List v;
com.google.common.collect.testing.AbstractIteratorTester$Stimulus[] v;
v := @this: com.google.common.collect.testing.AbstractIteratorTester;
v = newarray (com.google.common.collect.testing.AbstractIteratorTester$Stimulus)[6];
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus hasPrevious>;
v[0] = v;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus nextIndex>;
v[1] = v;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus previousIndex>;
v[2] = v;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus previous>;
v[3] = v;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus add>;
v[4] = v;
v = v.<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$Stimulus set>;
v[5] = v;
v = staticinvoke <java.util.Arrays: java.util.List asList(java.lang.Object[])>(v);
return v;
}
static void <clinit>()
{
com.google.common.collect.testing.AbstractIteratorTester$1 v;
com.google.common.collect.testing.AbstractIteratorTester$2 v;
com.google.common.collect.testing.AbstractIteratorTester$3 v;
v = new com.google.common.collect.testing.AbstractIteratorTester$1;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$1: void <init>()>();
<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation REMOVE_METHOD> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$2;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$2: void <init>()>();
<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation NEXT_METHOD> = v;
v = new com.google.common.collect.testing.AbstractIteratorTester$3;
specialinvoke v.<com.google.common.collect.testing.AbstractIteratorTester$3: void <init>()>();
<com.google.common.collect.testing.AbstractIteratorTester: com.google.common.collect.testing.AbstractIteratorTester$IteratorOperation PREVIOUS_METHOD> = v;
return;
}
}