code: public static <T> Observable<T> startFuture(Func0<? extends Future<? extends T>> functionAsync) {
          return OperatorStartFuture.startFuture(functionAsync);
      }
docs: Invokes the asynchronous function immediately, surfacing the result through an Observable.
  <p>
  <em>Important note</em> subscribing to the resulting Observable blocks until the future completes.
  <p>
  <img width="640" src="https://raw.github.com/wiki/ReactiveX/RxJava/images/rx-operators/startFuture.png" alt="">
  
  @param <T> the result type
  @param functionAsync the asynchronous function to run
  @return an Observable that surfaces the result of the future
  @see #startFuture(rx.functions.Func0, rx.Scheduler)
  @see <a href="https://github.com/ReactiveX/RxJava/wiki/Async-Operators#wiki-startfuture">RxJava Wiki: startFuture()</a>