1. override
Future<E> asFuture<E>([E futureValue ])

Returns a future that handles the onDone and onError callbacks.

This method overwrites the existing onDone and onError callbacks with new ones that complete the returned future.

In case of an error the subscription will automatically cancel (even when it was listening with cancelOnError set to false).

In case of a done event the future completes with the given futureValue.

Source

@override
Future<E> asFuture<E>([E futureValue]) {
  // This stream is never done and has no errors.
  return new Completer<E>().future;
}