Module futures_util::future
source Β· Expand description
Asynchronous values.
This module contains:
- The
Future
trait. - The
FutureExt
andTryFutureExt
trait, which provides adapters for chaining and composing futures. - Top-level future combinators like
lazy
which creates a future from a closure that defines its return value, andready
, which constructs a future with an immediate defined value.
Re-exports§
pub use core::future::Future;
Modules§
- abortable π
- always_ready π
- either π
- future πFutures
- join π
- join_all πDefinition of the
JoinAll
combinator, waiting for all of a list of futures to finish. - lazy π
- maybe_done πDefinition of the MaybeDone combinator
- option πDefinition of the
Option
(optional step) combinator - pending π
- poll_fn πDefinition of the
PollFn
adapter combinator - poll_immediate π
- ready π
- select π
- select_all π
- select_ok π
- try_future πFutures
- try_join π
- try_join_all πDefinition of the
TryJoinAll
combinator, waiting for all of a list of futures to finish with either success or error. - try_maybe_done πDefinition of the TryMaybeDone combinator
- try_select π
Structs§
- A handle to an
Abortable
task. - A registration handle for an
Abortable
task. Values of this type can be acquired fromAbortHandle::new
and are used in calls toAbortable::new
. - A future/stream which can be remotely short-circuited using an
AbortHandle
. - Indicator that the
Abortable
task was aborted. - Future for the
always_ready
function. - Future for the
and_then
method. - Future for the
catch_unwind
method. - Future for the
err_into
method. - Future for the
flatten
method. - Sink for the
flatten_sink
method. - Stream for the
flatten_stream
method. - Future for the
fuse
method. - A custom trait object for polling futures, roughly akin to
Box<dyn Future<Output = T> + Send + 'a>
. - Future for the
inspect
method. - Future for the
inspect_err
method. - Future for the
inspect_ok
method. - Future for the
into_future
method. - Stream for the
into_stream
method. - Future for the
join
function. - Future for the
join3
function. - Future for the
join4
function. - Future for the
join5
function. - Future for the
join_all
function. - Future for the
lazy
function. - A custom trait object for polling futures, roughly akin to
Box<dyn Future<Output = T> + 'a>
. - Future for the
map
method. - Future for the
map_err
method. - Future for the
map_into
combinator. - Future for the
map_ok
method. - Future for the
map_ok_or_else
method. - Future for the
never_error
combinator. - Future for the
ok_into
method. - A future representing a value which may or may not be present.
- Future for the
or_else
method. - Future for the
pending()
function. - Future for the
poll_fn
function. - Future for the
poll_immediate
function. - Future for the
ready
function. - A future which sends its output to the corresponding
RemoteHandle
. Created byremote_handle
. - The handle to a remote future returned by
remote_handle
. When you drop this, the remote future will be woken up to be dropped by the executor. - Future for the
select()
function. - Future for the
select_all
function. - Future for the
select_ok
function. - Future for the
shared
method. - Future for the
then
method. - Future for the
try_flatten
method. - Future for the
try_flatten_stream
method. - Future for the
try_join
function. - Future for the
try_join3
function. - Future for the
try_join4
function. - Future for the
try_join5
function. - Future for the
try_join_all
function. - Future for the
try_select()
function. - Future for the
unit_error
combinator. - Future for the
unwrap_or_else
method. - A weak reference to a
Shared
that can be upgraded much like anArc
.
Enums§
- Combines two different futures, streams, or sinks having the same associated types into a single type.
- A future that may have completed.
- A future that may have completed with an error.
Traits§
- A future which tracks whether or not the underlying future should no longer be polled.
- An extension trait for
Future
s that provides a variety of convenient adapters. - A convenience for futures that return
Result
values that includes a variety of adapters tailored to such futures. - Adapters specific to
Result
-returning futures - A custom implementation of a future trait object for
FutureObj
, providing a vtable with drop support.
Functions§
- Creates a new
Abortable
future and anAbortHandle
which can be used to stop it. - Creates a future that is always immediately ready with a value.
- assert_future π
- Create a future that is immediately ready with an error value.
- Joins the result of two futures, waiting for them both to complete.
- Same as
join
, but with more futures. - Same as
join
, but with more futures. - Same as
join
, but with more futures. - Creates a future which represents a collection of the outputs of the futures given.
- Creates a new future that allows delayed execution of a closure.
- Wraps a future into a
MaybeDone
- Create a future that is immediately ready with a success value.
- Creates a future which never resolves, representing a computation that never finishes.
- Creates a new future wrapping around a function returning
Poll
. - Creates a future that is immediately ready with an Option of a value. Specifically this means that poll always returns Poll::Ready.
- Creates a future that is immediately ready with a value.
- Waits for either one of two differently-typed futures to complete.
- Creates a new future which will select over a list of futures.
- Creates a new future which will select the first successful future over a list of futures.
- Joins the result of two futures, waiting for them both to complete or for one to produce an error.
- Same as
try_join
, but with more futures. - Same as
try_join
, but with more futures. - Same as
try_join
, but with more futures. - Creates a future which represents either a collection of the results of the futures given or an error.
- Wraps a future into a
TryMaybeDone
- Waits for either one of two differently-typed futures to complete.
Type Aliases§
- An owned dynamically typed
Future
for use in cases where you canβt statically type your result or need to add some indirection. BoxFuture
, but without theSend
requirement.