class com.google.common.util.concurrent.ClosingFuture$2 implements java.util.concurrent.Callable<V>
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: com.google.common.util.concurrent.ClosingFuture$2
  super_class: java.lang.Object
{
  final com.google.common.util.concurrent.ClosingFuture this$0;
    descriptor: Lcom/google/common/util/concurrent/ClosingFuture;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  private final com.google.common.util.concurrent.ClosingFuture$ClosingCallable val$callable;
    descriptor: Lcom/google/common/util/concurrent/ClosingFuture$ClosingCallable;
    flags: (0x1012) ACC_PRIVATE, ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.google.common.util.concurrent.ClosingFuture, com.google.common.util.concurrent.ClosingFuture$ClosingCallable);
    descriptor: (Lcom/google/common/util/concurrent/ClosingFuture;Lcom/google/common/util/concurrent/ClosingFuture$ClosingCallable;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.google.common.util.concurrent.ClosingFuture$2 this
         0: .line 555
            aload 0 /* this */
            aload 1
            putfield com.google.common.util.concurrent.ClosingFuture$2.this$0:Lcom/google/common/util/concurrent/ClosingFuture;
            aload 0 /* this */
            aload 2
            putfield com.google.common.util.concurrent.ClosingFuture$2.val$callable:Lcom/google/common/util/concurrent/ClosingFuture$ClosingCallable;
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
            return
        end local 0 // com.google.common.util.concurrent.ClosingFuture$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/util/concurrent/ClosingFuture$2;
    MethodParameters:
              Name  Flags
      this$0        final
      val$callable  final

  public V call();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.common.util.concurrent.ClosingFuture$2 this
         0: .line 558
            aload 0 /* this */
            getfield com.google.common.util.concurrent.ClosingFuture$2.val$callable:Lcom/google/common/util/concurrent/ClosingFuture$ClosingCallable;
            aload 0 /* this */
            getfield com.google.common.util.concurrent.ClosingFuture$2.this$0:Lcom/google/common/util/concurrent/ClosingFuture;
            getfield com.google.common.util.concurrent.ClosingFuture.closeables:Lcom/google/common/util/concurrent/ClosingFuture$CloseableList;
            getfield com.google.common.util.concurrent.ClosingFuture$CloseableList.closer:Lcom/google/common/util/concurrent/ClosingFuture$DeferredCloser;
            invokeinterface com.google.common.util.concurrent.ClosingFuture$ClosingCallable.call:(Lcom/google/common/util/concurrent/ClosingFuture$DeferredCloser;)Ljava/lang/Object;
            areturn
        end local 0 // com.google.common.util.concurrent.ClosingFuture$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/util/concurrent/ClosingFuture$2;
    Exceptions:
      throws java.lang.Exception
    Signature: ()TV;

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.util.concurrent.ClosingFuture$2 this
         0: .line 563
            aload 0 /* this */
            getfield com.google.common.util.concurrent.ClosingFuture$2.val$callable:Lcom/google/common/util/concurrent/ClosingFuture$ClosingCallable;
            invokevirtual java.lang.Object.toString:()Ljava/lang/String;
            areturn
        end local 0 // com.google.common.util.concurrent.ClosingFuture$2 this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/util/concurrent/ClosingFuture$2;
}
Signature: Ljava/lang/Object;Ljava/util/concurrent/Callable<TV;>;
SourceFile: "ClosingFuture.java"
EnclosingMethod: com.google.common.util.concurrent.ClosingFuture.<init>:(Lcom/google/common/util/concurrent/ClosingFuture$ClosingCallable;Ljava/util/concurrent/Executor;)V
NestHost: com.google.common.util.concurrent.ClosingFuture
InnerClasses:
  com.google.common.util.concurrent.ClosingFuture$2
  private final CloseableList = com.google.common.util.concurrent.ClosingFuture$CloseableList of com.google.common.util.concurrent.ClosingFuture
  public abstract ClosingCallable = com.google.common.util.concurrent.ClosingFuture$ClosingCallable of com.google.common.util.concurrent.ClosingFuture
  public final DeferredCloser = com.google.common.util.concurrent.ClosingFuture$DeferredCloser of com.google.common.util.concurrent.ClosingFuture