···33use std::{cell::Cell, task::Poll};
4455/// from [futures-concurrency](https://github.com/yoshuawuyts/futures-concurrency/tree/main)
66-/// Wait for all futures to complete.
66+/// Wait for the first future to complete.
77///
88-/// Awaits multiple futures simultaneously, returning the output of the futures
99-/// in the same container type they were created once all complete.
88+/// Awaits multiple future at once, returning as soon as one completes. The
99+/// other futures are cancelled.
1010pub trait Race<'scope> {
1111 /// The resulting output type.
1212 type Output;
···1414 /// The [`ScopedFuture`] implementation returned by this method.
1515 type Future: ScopedFuture<'scope, Output = Self::Output>;
16161717- /// Waits for multiple futures to complete.
1717+ /// Wait for the first future to complete.
1818 ///
1919- /// Awaits multiple futures simultaneously, returning the output of the futures
2020- /// in the same container type they we're created once all complete.
1919+ /// Awaits multiple futures at once, returning as soon as one completes. The
2020+ /// other futures are cancelled.
2121 ///
2222 /// This function returns a new future which polls all futures concurrently.
2323 fn race(self) -> Self::Future;
+1-1
futures-core/src/lib.rs
···11-use std::task::Poll;
11+use std::task::{Poll, RawWaker};
2233/// A task that can be woken.
44///