public abstract class com.google.common.util.concurrent.FluentFuture<V> extends com.google.common.util.concurrent.GwtFluentFutureCatchingSpecialization<V>
  minor version: 0
  major version: 59
  flags: flags: (0x0421) ACC_PUBLIC, ACC_SUPER, ACC_ABSTRACT
  this_class: com.google.common.util.concurrent.FluentFuture
  super_class: com.google.common.util.concurrent.GwtFluentFutureCatchingSpecialization
{
  void <init>();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.common.util.concurrent.FluentFuture this
         0: .line 71
            aload 0 /* this */
            invokespecial com.google.common.util.concurrent.GwtFluentFutureCatchingSpecialization.<init>:()V
            return
        end local 0 // com.google.common.util.concurrent.FluentFuture this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/common/util/concurrent/FluentFuture<TV;>;

  public static <V> com.google.common.util.concurrent.FluentFuture<V> from(com.google.common.util.concurrent.ListenableFuture<V>);
    descriptor: (Lcom/google/common/util/concurrent/ListenableFuture;)Lcom/google/common/util/concurrent/FluentFuture;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.google.common.util.concurrent.ListenableFuture future
         0: .line 81
            aload 0 /* future */
            instanceof com.google.common.util.concurrent.FluentFuture
            ifeq 2
         1: .line 82
            aload 0 /* future */
            checkcast com.google.common.util.concurrent.FluentFuture
            goto 3
         2: .line 83
      StackMap locals:
      StackMap stack:
            new com.google.common.util.concurrent.ForwardingFluentFuture
            dup
            aload 0 /* future */
            invokespecial com.google.common.util.concurrent.ForwardingFluentFuture.<init>:(Lcom/google/common/util/concurrent/ListenableFuture;)V
         3: .line 81
      StackMap locals:
      StackMap stack: com.google.common.util.concurrent.FluentFuture
            areturn
        end local 0 // com.google.common.util.concurrent.ListenableFuture future
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    4     0  future  Lcom/google/common/util/concurrent/ListenableFuture<TV;>;
    Signature: <V:Ljava/lang/Object;>(Lcom/google/common/util/concurrent/ListenableFuture<TV;>;)Lcom/google/common/util/concurrent/FluentFuture<TV;>;
    MethodParameters:
        Name  Flags
      future  

  public final <X extends java.lang.Throwable> com.google.common.util.concurrent.FluentFuture<V> catching(java.lang.Class<X>, com.google.common.base.Function<? super X, ? extends V>, java.util.concurrent.Executor);
    descriptor: (Ljava/lang/Class;Lcom/google/common/base/Function;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/FluentFuture;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.google.common.util.concurrent.FluentFuture this
        start local 1 // java.lang.Class exceptionType
        start local 2 // com.google.common.base.Function fallback
        start local 3 // java.util.concurrent.Executor executor
         0: .line 126
            aload 0 /* this */
            aload 1 /* exceptionType */
            aload 2 /* fallback */
            aload 3 /* executor */
            invokestatic com.google.common.util.concurrent.Futures.catching:(Lcom/google/common/util/concurrent/ListenableFuture;Ljava/lang/Class;Lcom/google/common/base/Function;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ListenableFuture;
            checkcast com.google.common.util.concurrent.FluentFuture
            areturn
        end local 3 // java.util.concurrent.Executor executor
        end local 2 // com.google.common.base.Function fallback
        end local 1 // java.lang.Class exceptionType
        end local 0 // com.google.common.util.concurrent.FluentFuture this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lcom/google/common/util/concurrent/FluentFuture<TV;>;
            0    1     1  exceptionType  Ljava/lang/Class<TX;>;
            0    1     2       fallback  Lcom/google/common/base/Function<-TX;+TV;>;
            0    1     3       executor  Ljava/util/concurrent/Executor;
    Signature: <X:Ljava/lang/Throwable;>(Ljava/lang/Class<TX;>;Lcom/google/common/base/Function<-TX;+TV;>;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/FluentFuture<TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.util.concurrent.Partially$GwtIncompatible(value = "AVAILABLE but requires exceptionType to be Throwable.class")
    MethodParameters:
               Name  Flags
      exceptionType  
      fallback       
      executor       

  public final <X extends java.lang.Throwable> com.google.common.util.concurrent.FluentFuture<V> catchingAsync(java.lang.Class<X>, com.google.common.util.concurrent.AsyncFunction<? super X, ? extends V>, java.util.concurrent.Executor);
    descriptor: (Ljava/lang/Class;Lcom/google/common/util/concurrent/AsyncFunction;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/FluentFuture;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=4
        start local 0 // com.google.common.util.concurrent.FluentFuture this
        start local 1 // java.lang.Class exceptionType
        start local 2 // com.google.common.util.concurrent.AsyncFunction fallback
        start local 3 // java.util.concurrent.Executor executor
         0: .line 190
            aload 0 /* this */
            aload 1 /* exceptionType */
            aload 2 /* fallback */
            aload 3 /* executor */
            invokestatic com.google.common.util.concurrent.Futures.catchingAsync:(Lcom/google/common/util/concurrent/ListenableFuture;Ljava/lang/Class;Lcom/google/common/util/concurrent/AsyncFunction;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ListenableFuture;
            checkcast com.google.common.util.concurrent.FluentFuture
            areturn
        end local 3 // java.util.concurrent.Executor executor
        end local 2 // com.google.common.util.concurrent.AsyncFunction fallback
        end local 1 // java.lang.Class exceptionType
        end local 0 // com.google.common.util.concurrent.FluentFuture this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    1     0           this  Lcom/google/common/util/concurrent/FluentFuture<TV;>;
            0    1     1  exceptionType  Ljava/lang/Class<TX;>;
            0    1     2       fallback  Lcom/google/common/util/concurrent/AsyncFunction<-TX;+TV;>;
            0    1     3       executor  Ljava/util/concurrent/Executor;
    Signature: <X:Ljava/lang/Throwable;>(Ljava/lang/Class<TX;>;Lcom/google/common/util/concurrent/AsyncFunction<-TX;+TV;>;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/FluentFuture<TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.util.concurrent.Partially$GwtIncompatible(value = "AVAILABLE but requires exceptionType to be Throwable.class")
    MethodParameters:
               Name  Flags
      exceptionType  
      fallback       
      executor       

  public final com.google.common.util.concurrent.FluentFuture<V> withTimeout(long, java.util.concurrent.TimeUnit, java.util.concurrent.ScheduledExecutorService);
    descriptor: (JLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/ScheduledExecutorService;)Lcom/google/common/util/concurrent/FluentFuture;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // com.google.common.util.concurrent.FluentFuture this
        start local 1 // long timeout
        start local 3 // java.util.concurrent.TimeUnit unit
        start local 4 // java.util.concurrent.ScheduledExecutorService scheduledExecutor
         0: .line 206
            aload 0 /* this */
            lload 1 /* timeout */
            aload 3 /* unit */
            aload 4 /* scheduledExecutor */
            invokestatic com.google.common.util.concurrent.Futures.withTimeout:(Lcom/google/common/util/concurrent/ListenableFuture;JLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/ScheduledExecutorService;)Lcom/google/common/util/concurrent/ListenableFuture;
            checkcast com.google.common.util.concurrent.FluentFuture
            areturn
        end local 4 // java.util.concurrent.ScheduledExecutorService scheduledExecutor
        end local 3 // java.util.concurrent.TimeUnit unit
        end local 1 // long timeout
        end local 0 // com.google.common.util.concurrent.FluentFuture this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0               this  Lcom/google/common/util/concurrent/FluentFuture<TV;>;
            0    1     1            timeout  J
            0    1     3               unit  Ljava/util/concurrent/TimeUnit;
            0    1     4  scheduledExecutor  Ljava/util/concurrent/ScheduledExecutorService;
    Signature: (JLjava/util/concurrent/TimeUnit;Ljava/util/concurrent/ScheduledExecutorService;)Lcom/google/common/util/concurrent/FluentFuture<TV;>;
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.GwtIncompatible()
    MethodParameters:
                   Name  Flags
      timeout            
      unit               
      scheduledExecutor  

  public final <T> com.google.common.util.concurrent.FluentFuture<T> transformAsync(com.google.common.util.concurrent.AsyncFunction<? super V, T>, java.util.concurrent.Executor);
    descriptor: (Lcom/google/common/util/concurrent/AsyncFunction;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/FluentFuture;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.common.util.concurrent.FluentFuture this
        start local 1 // com.google.common.util.concurrent.AsyncFunction function
        start local 2 // java.util.concurrent.Executor executor
         0: .line 250
            aload 0 /* this */
            aload 1 /* function */
            aload 2 /* executor */
            invokestatic com.google.common.util.concurrent.Futures.transformAsync:(Lcom/google/common/util/concurrent/ListenableFuture;Lcom/google/common/util/concurrent/AsyncFunction;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ListenableFuture;
            checkcast com.google.common.util.concurrent.FluentFuture
            areturn
        end local 2 // java.util.concurrent.Executor executor
        end local 1 // com.google.common.util.concurrent.AsyncFunction function
        end local 0 // com.google.common.util.concurrent.FluentFuture this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/google/common/util/concurrent/FluentFuture<TV;>;
            0    1     1  function  Lcom/google/common/util/concurrent/AsyncFunction<-TV;TT;>;
            0    1     2  executor  Ljava/util/concurrent/Executor;
    Signature: <T:Ljava/lang/Object;>(Lcom/google/common/util/concurrent/AsyncFunction<-TV;TT;>;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/FluentFuture<TT;>;
    MethodParameters:
          Name  Flags
      function  
      executor  

  public final <T> com.google.common.util.concurrent.FluentFuture<T> transform(com.google.common.base.Function<? super V, T>, java.util.concurrent.Executor);
    descriptor: (Lcom/google/common/base/Function;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/FluentFuture;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.common.util.concurrent.FluentFuture this
        start local 1 // com.google.common.base.Function function
        start local 2 // java.util.concurrent.Executor executor
         0: .line 286
            aload 0 /* this */
            aload 1 /* function */
            aload 2 /* executor */
            invokestatic com.google.common.util.concurrent.Futures.transform:(Lcom/google/common/util/concurrent/ListenableFuture;Lcom/google/common/base/Function;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ListenableFuture;
            checkcast com.google.common.util.concurrent.FluentFuture
            areturn
        end local 2 // java.util.concurrent.Executor executor
        end local 1 // com.google.common.base.Function function
        end local 0 // com.google.common.util.concurrent.FluentFuture this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    1     0      this  Lcom/google/common/util/concurrent/FluentFuture<TV;>;
            0    1     1  function  Lcom/google/common/base/Function<-TV;TT;>;
            0    1     2  executor  Ljava/util/concurrent/Executor;
    Signature: <T:Ljava/lang/Object;>(Lcom/google/common/base/Function<-TV;TT;>;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/FluentFuture<TT;>;
    MethodParameters:
          Name  Flags
      function  
      executor  

  public final void addCallback(com.google.common.util.concurrent.FutureCallback<? super V>, java.util.concurrent.Executor);
    descriptor: (Lcom/google/common/util/concurrent/FutureCallback;Ljava/util/concurrent/Executor;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.google.common.util.concurrent.FluentFuture this
        start local 1 // com.google.common.util.concurrent.FutureCallback callback
        start local 2 // java.util.concurrent.Executor executor
         0: .line 327
            aload 0 /* this */
            aload 1 /* callback */
            aload 2 /* executor */
            invokestatic com.google.common.util.concurrent.Futures.addCallback:(Lcom/google/common/util/concurrent/ListenableFuture;Lcom/google/common/util/concurrent/FutureCallback;Ljava/util/concurrent/Executor;)V
         1: .line 328
            return
        end local 2 // java.util.concurrent.Executor executor
        end local 1 // com.google.common.util.concurrent.FutureCallback callback
        end local 0 // com.google.common.util.concurrent.FluentFuture this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/google/common/util/concurrent/FluentFuture<TV;>;
            0    2     1  callback  Lcom/google/common/util/concurrent/FutureCallback<-TV;>;
            0    2     2  executor  Ljava/util/concurrent/Executor;
    Signature: (Lcom/google/common/util/concurrent/FutureCallback<-TV;>;Ljava/util/concurrent/Executor;)V
    MethodParameters:
          Name  Flags
      callback  
      executor  
}
Signature: <V:Ljava/lang/Object;>Lcom/google/common/util/concurrent/GwtFluentFutureCatchingSpecialization<TV;>;
SourceFile: "FluentFuture.java"
InnerClasses:
  abstract GwtIncompatible = com.google.common.util.concurrent.Partially$GwtIncompatible of com.google.common.util.concurrent.Partially
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.Beta()
      com.google.common.annotations.GwtCompatible(emulated = true)