public final class com.google.common.util.concurrent.ClosingFuture$Combiner2<V1, V2> extends com.google.common.util.concurrent.ClosingFuture$Combiner
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: com.google.common.util.concurrent.ClosingFuture$Combiner2
super_class: com.google.common.util.concurrent.ClosingFuture$Combiner
{
private final com.google.common.util.concurrent.ClosingFuture<V1> future1;
descriptor: Lcom/google/common/util/concurrent/ClosingFuture;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lcom/google/common/util/concurrent/ClosingFuture<TV1;>;
private final com.google.common.util.concurrent.ClosingFuture<V2> future2;
descriptor: Lcom/google/common/util/concurrent/ClosingFuture;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lcom/google/common/util/concurrent/ClosingFuture<TV2;>;
private void <init>(com.google.common.util.concurrent.ClosingFuture<V1>, com.google.common.util.concurrent.ClosingFuture<V2>);
descriptor: (Lcom/google/common/util/concurrent/ClosingFuture;Lcom/google/common/util/concurrent/ClosingFuture;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iconst_1
aload 1
aload 2
invokestatic com.google.common.collect.ImmutableList.of:(Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList;
invokespecial com.google.common.util.concurrent.ClosingFuture$Combiner.<init>:(ZLjava/lang/Iterable;)V
1: aload 0
aload 1
putfield com.google.common.util.concurrent.ClosingFuture$Combiner2.future1:Lcom/google/common/util/concurrent/ClosingFuture;
2: aload 0
aload 2
putfield com.google.common.util.concurrent.ClosingFuture$Combiner2.future2:Lcom/google/common/util/concurrent/ClosingFuture;
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/common/util/concurrent/ClosingFuture$Combiner2<TV1;TV2;>;
0 4 1 future1 Lcom/google/common/util/concurrent/ClosingFuture<TV1;>;
0 4 2 future2 Lcom/google/common/util/concurrent/ClosingFuture<TV2;>;
Signature: (Lcom/google/common/util/concurrent/ClosingFuture<TV1;>;Lcom/google/common/util/concurrent/ClosingFuture<TV2;>;)V
MethodParameters:
Name Flags
future1
future2
public <U> com.google.common.util.concurrent.ClosingFuture<U> call(com.google.common.util.concurrent.ClosingFuture$Combiner2$ClosingFunction2<V1, V2, U>, java.util.concurrent.Executor);
descriptor: (Lcom/google/common/util/concurrent/ClosingFuture$Combiner2$ClosingFunction2;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ClosingFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
1: new com.google.common.util.concurrent.ClosingFuture$Combiner2$1
dup
aload 0
aload 1
invokespecial com.google.common.util.concurrent.ClosingFuture$Combiner2$1.<init>:(Lcom/google/common/util/concurrent/ClosingFuture$Combiner2;Lcom/google/common/util/concurrent/ClosingFuture$Combiner2$ClosingFunction2;)V
2: aload 2
3: invokevirtual com.google.common.util.concurrent.ClosingFuture$Combiner2.call:(Lcom/google/common/util/concurrent/ClosingFuture$Combiner$CombiningCallable;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ClosingFuture;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/common/util/concurrent/ClosingFuture$Combiner2<TV1;TV2;>;
0 4 1 function Lcom/google/common/util/concurrent/ClosingFuture$Combiner2$ClosingFunction2<TV1;TV2;TU;>;
0 4 2 executor Ljava/util/concurrent/Executor;
Signature: <U:Ljava/lang/Object;>(Lcom/google/common/util/concurrent/ClosingFuture$Combiner2$ClosingFunction2<TV1;TV2;TU;>;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ClosingFuture<TU;>;
RuntimeVisibleTypeAnnotations:
METHOD_TYPE_PARAMETER_BOUND
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
function final
executor
public <U> com.google.common.util.concurrent.ClosingFuture<U> callAsync(com.google.common.util.concurrent.ClosingFuture$Combiner2$AsyncClosingFunction2<V1, V2, U>, java.util.concurrent.Executor);
descriptor: (Lcom/google/common/util/concurrent/ClosingFuture$Combiner2$AsyncClosingFunction2;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ClosingFuture;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
1: new com.google.common.util.concurrent.ClosingFuture$Combiner2$2
dup
aload 0
aload 1
invokespecial com.google.common.util.concurrent.ClosingFuture$Combiner2$2.<init>:(Lcom/google/common/util/concurrent/ClosingFuture$Combiner2;Lcom/google/common/util/concurrent/ClosingFuture$Combiner2$AsyncClosingFunction2;)V
2: aload 2
3: invokevirtual com.google.common.util.concurrent.ClosingFuture$Combiner2.callAsync:(Lcom/google/common/util/concurrent/ClosingFuture$Combiner$AsyncCombiningCallable;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ClosingFuture;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/google/common/util/concurrent/ClosingFuture$Combiner2<TV1;TV2;>;
0 4 1 function Lcom/google/common/util/concurrent/ClosingFuture$Combiner2$AsyncClosingFunction2<TV1;TV2;TU;>;
0 4 2 executor Ljava/util/concurrent/Executor;
Signature: <U:Ljava/lang/Object;>(Lcom/google/common/util/concurrent/ClosingFuture$Combiner2$AsyncClosingFunction2<TV1;TV2;TU;>;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ClosingFuture<TU;>;
RuntimeVisibleTypeAnnotations:
METHOD_TYPE_PARAMETER_BOUND
org.checkerframework.checker.nullness.qual.Nullable()
MethodParameters:
Name Flags
function final
executor
}
Signature: <V1:Ljava/lang/Object;V2:Ljava/lang/Object;>Lcom/google/common/util/concurrent/ClosingFuture$Combiner;
SourceFile: "ClosingFuture.java"
NestHost: com.google.common.util.concurrent.ClosingFuture
InnerClasses:
public Combiner = com.google.common.util.concurrent.ClosingFuture$Combiner of com.google.common.util.concurrent.ClosingFuture
public abstract AsyncCombiningCallable = com.google.common.util.concurrent.ClosingFuture$Combiner$AsyncCombiningCallable of com.google.common.util.concurrent.ClosingFuture$Combiner
public abstract CombiningCallable = com.google.common.util.concurrent.ClosingFuture$Combiner$CombiningCallable of com.google.common.util.concurrent.ClosingFuture$Combiner
public final Combiner2 = com.google.common.util.concurrent.ClosingFuture$Combiner2 of com.google.common.util.concurrent.ClosingFuture
com.google.common.util.concurrent.ClosingFuture$Combiner2$1
com.google.common.util.concurrent.ClosingFuture$Combiner2$2
public abstract AsyncClosingFunction2 = com.google.common.util.concurrent.ClosingFuture$Combiner2$AsyncClosingFunction2 of com.google.common.util.concurrent.ClosingFuture$Combiner2
public abstract ClosingFunction2 = com.google.common.util.concurrent.ClosingFuture$Combiner2$ClosingFunction2 of com.google.common.util.concurrent.ClosingFuture$Combiner2
RuntimeVisibleTypeAnnotations:
CLASS_TYPE_PARAMETER_BOUND
org.checkerframework.checker.nullness.qual.Nullable()
CLASS_TYPE_PARAMETER_BOUND
org.checkerframework.checker.nullness.qual.Nullable()