/guava/android/guava/src/com/google/common/util/concurrent/TimeoutFuture.java
TimeoutFuture<V> timeoutFuture = timeoutFutureRef;TimeoutFuture<V> result = new TimeoutFuture<>( delegate) ;
TimeoutFuture<V> result = new TimeoutFuture<> ( delegate ) ;
final class TimeoutFuture<V extends @Nullable Object> extends FluentFuture.TrustedFuture<V> { static <V extends @Nullable Object> ListenableFuture<V> create( ListenableFuture<V> delegate, long time, TimeUnit unit, ScheduledExecutorService scheduledExecutor) { <extra_id_0> Fire<V> fire = new Fire<>(result); result.timer = scheduledExecutor.schedule(fire, time, unit); delegate.addListener(fire, directExecutor()); return result; } @CheckForNull private ListenableFuture<V> delegateRef;