final class org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState extends java.lang.Object
{
private boolean wasCancelled;
private boolean shouldInterrupt;
private final java.util.concurrent.atomic.AtomicInteger incompleteOutputCount;
private final org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[] inputFutures;
private volatile int delegateIndex;
private void <init>(org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[])
{
org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState v;
java.util.concurrent.atomic.AtomicInteger v;
int v;
org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[] v;
v := @this: org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState;
v := @parameter: org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[];
specialinvoke v.<java.lang.Object: void <init>()>();
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: boolean wasCancelled> = 0;
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: boolean shouldInterrupt> = 1;
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: int delegateIndex> = 0;
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[] inputFutures> = v;
v = new java.util.concurrent.atomic.AtomicInteger;
v = lengthof v;
specialinvoke v.<java.util.concurrent.atomic.AtomicInteger: void <init>(int)>(v);
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: java.util.concurrent.atomic.AtomicInteger incompleteOutputCount> = v;
return;
}
private void recordOutputCancellation(boolean)
{
org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState v;
boolean v;
v := @this: org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState;
v := @parameter: boolean;
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: boolean wasCancelled> = 1;
if v != 0 goto label;
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: boolean shouldInterrupt> = 0;
label:
specialinvoke v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: void recordCompletion()>();
return;
}
private void recordInputCompletion(org.apache.drill.shaded.guava.com.google.common.collect.ImmutableList, int)
{
org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState v;
org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[] v, v;
org.apache.drill.shaded.guava.com.google.common.collect.ImmutableList v;
int v, v, v, v, v;
java.lang.Object v;
org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture v;
boolean v;
v := @this: org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState;
v := @parameter: org.apache.drill.shaded.guava.com.google.common.collect.ImmutableList;
v := @parameter: int;
v = v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[] inputFutures>;
v = v[v];
v = v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[] inputFutures>;
v[v] = null;
v = v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: int delegateIndex>;
label:
v = virtualinvoke v.<org.apache.drill.shaded.guava.com.google.common.collect.ImmutableList: int size()>();
if v >= v goto label;
v = virtualinvoke v.<org.apache.drill.shaded.guava.com.google.common.collect.ImmutableList: java.lang.Object get(int)>(v);
v = virtualinvoke v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.AbstractFuture: boolean setFuture(org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture)>(v);
if v == 0 goto label;
specialinvoke v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: void recordCompletion()>();
v = v + 1;
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: int delegateIndex> = v;
return;
label:
v = v + 1;
goto label;
label:
v = virtualinvoke v.<org.apache.drill.shaded.guava.com.google.common.collect.ImmutableList: int size()>();
v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: int delegateIndex> = v;
return;
}
private void recordCompletion()
{
org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState v;
org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[] v;
java.util.concurrent.atomic.AtomicInteger v;
int v, v, v;
org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture v;
boolean v, v;
v := @this: org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState;
v = v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: java.util.concurrent.atomic.AtomicInteger incompleteOutputCount>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicInteger: int decrementAndGet()>();
if v != 0 goto label;
v = v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: boolean wasCancelled>;
if v == 0 goto label;
v = v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture[] inputFutures>;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
if v == null goto label;
v = v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.Futures$InCompletionOrderState: boolean shouldInterrupt>;
interfaceinvoke v.<org.apache.drill.shaded.guava.com.google.common.util.concurrent.ListenableFuture: boolean cancel(boolean)>(v);
label:
v = v + 1;
goto label;
label:
return;
}
}