pub async fn select_abcde<A, B, C, D, E, FutA, FutB, FutC, FutD, FutE>(
    a: FutA,
    b: FutB,
    c: FutC,
    d: FutD,
    e: FutE
) -> OptionAbcde<A, B, C, D, E> where
    FutA: 'static + Future<Output = A> + Send,
    FutB: 'static + Future<Output = B> + Send,
    FutC: 'static + Future<Output = C> + Send,
    FutD: 'static + Future<Output = D> + Send,
    FutE: 'static + Future<Output = E> + Send
Expand description

Awaits the futures and returns the value from the one that completes first.

First moves them to the heap, to make them Unpin. Use SelectFuture::new to avoid allocating on the heap.