final class com.google.common.util.concurrent.CollectionFuture$ListFuture<V> extends com.google.common.util.concurrent.CollectionFuture<V, java.util.List<V>>
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.google.common.util.concurrent.CollectionFuture$ListFuture
super_class: com.google.common.util.concurrent.CollectionFuture
{
void <init>(com.google.common.collect.ImmutableCollection<? extends com.google.common.util.concurrent.ListenableFuture<? extends V>>, );
descriptor: (Lcom/google/common/collect/ImmutableCollection;Z)V
flags: (0x0000)
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
iload 2
invokespecial com.google.common.util.concurrent.CollectionFuture.<init>:(Lcom/google/common/collect/ImmutableCollection;Z)V
1: aload 0
invokevirtual com.google.common.util.concurrent.CollectionFuture$ListFuture.init:()V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/google/common/util/concurrent/CollectionFuture$ListFuture<TV;>;
0 3 1 futures Lcom/google/common/collect/ImmutableCollection<+Lcom/google/common/util/concurrent/ListenableFuture<+TV;>;>;
0 3 2 allMustSucceed Z
Signature: (Lcom/google/common/collect/ImmutableCollection<+Lcom/google/common/util/concurrent/ListenableFuture<+TV;>;>;Z)V
MethodParameters:
Name Flags
futures
allMustSucceed
public java.util.List<V> combine(java.util.List<com.google.common.util.concurrent.CollectionFuture$Present<V>>);
descriptor: (Ljava/util/List;)Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokeinterface java.util.List.size:()I
invokestatic com.google.common.collect.Lists.newArrayListWithCapacity:(I)Ljava/util/ArrayList;
astore 2
start local 2 1: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 4
goto 6
StackMap locals: com.google.common.util.concurrent.CollectionFuture$ListFuture java.util.List java.util.List top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.google.common.util.concurrent.CollectionFuture$Present
astore 3
start local 3 3: aload 2
aload 3
ifnull 4
aload 3
getfield com.google.common.util.concurrent.CollectionFuture$Present.value:Ljava/lang/Object;
goto 5
StackMap locals: com.google.common.util.concurrent.CollectionFuture$ListFuture java.util.List java.util.List com.google.common.util.concurrent.CollectionFuture$Present java.util.Iterator
StackMap stack: java.util.List
4: aconst_null
StackMap locals: com.google.common.util.concurrent.CollectionFuture$ListFuture java.util.List java.util.List com.google.common.util.concurrent.CollectionFuture$Present java.util.Iterator
StackMap stack: java.util.List java.lang.Object
5: invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 3 6: StackMap locals: com.google.common.util.concurrent.CollectionFuture$ListFuture java.util.List java.util.List top java.util.Iterator
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
7: aload 2
invokestatic java.util.Collections.unmodifiableList:(Ljava/util/List;)Ljava/util/List;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/google/common/util/concurrent/CollectionFuture$ListFuture<TV;>;
0 8 1 values Ljava/util/List<Lcom/google/common/util/concurrent/CollectionFuture$Present<TV;>;>;
1 8 2 result Ljava/util/List<TV;>;
3 6 3 element Lcom/google/common/util/concurrent/CollectionFuture$Present<TV;>;
Signature: (Ljava/util/List<Lcom/google/common/util/concurrent/CollectionFuture$Present<TV;>;>;)Ljava/util/List<TV;>;
MethodParameters:
Name Flags
values
public java.lang.Object combine(java.util.List);
descriptor: (Ljava/util/List;)Ljava/lang/Object;
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: aload 0
aload 1
checkcast java.util.List
invokevirtual com.google.common.util.concurrent.CollectionFuture$ListFuture.combine:(Ljava/util/List;)Ljava/util/List;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
Signature: <V:Ljava/lang/Object;>Lcom/google/common/util/concurrent/CollectionFuture<TV;Ljava/util/List<TV;>;>;
SourceFile: "CollectionFuture.java"
NestHost: com.google.common.util.concurrent.CollectionFuture
InnerClasses:
final ListFuture = com.google.common.util.concurrent.CollectionFuture$ListFuture of com.google.common.util.concurrent.CollectionFuture
private final Present = com.google.common.util.concurrent.CollectionFuture$Present of com.google.common.util.concurrent.CollectionFuture