'Returns a `.Future` that will yield the next available result.
Note that this `.Future` will not be the same object as any of
the inputs.'

def next(self):

    self._running_future = TracebackFuture()
    if self._finished:
        self._return_result(self._finished.popleft())
    return self._running_future
