[][src]Enum futures_util::future::MaybeDone

pub enum MaybeDone<Fut: Future> {
    Future(Fut),
    Done(Fut::Output),
    Gone,
}

A future that may have completed.

This is created by the maybe_done() function.

Variants

A not-yet-completed future

The output of the completed future

The empty variant after the result of a MaybeDone has been taken using the take_output method.

Methods

impl<Fut: Future> MaybeDone<Fut>
[src]

Returns an Option containing a mutable reference to the output of the future. The output of this method will be Some if and only if the inner future has been completed and take_output has not yet been called.

Attempt to take the output of a MaybeDone without driving it towards completion.

Trait Implementations

impl<Fut: Debug + Future> Debug for MaybeDone<Fut> where
    Fut::Output: Debug
[src]

Formats the value using the given formatter. Read more

impl<Fut: Future + Unpin> Unpin for MaybeDone<Fut>
[src]

impl<Fut: Future> Future for MaybeDone<Fut>
[src]

🔬 This is a nightly-only experimental API. (futures_api)

futures in libcore are unstable

The result of the Future.

🔬 This is a nightly-only experimental API. (futures_api)

futures in libcore are unstable

Attempt to resolve the future to a final value, registering the current task for wakeup if the value is not yet available. Read more

Auto Trait Implementations

impl<Fut> Send for MaybeDone<Fut> where
    Fut: Send,
    <Fut as Future>::Output: Send

impl<Fut> Sync for MaybeDone<Fut> where
    Fut: Sync,
    <Fut as Future>::Output: Sync

Blanket Implementations

impl<T> FutureExt for T where
    T: Future + ?Sized
[src]

Map this future's output to a different type, returning a new future of the resulting type. Read more

Chain on a computation for when a future finished, passing the result of the future to the provided closure f. Read more

Joins the result of two futures, waiting for them both to complete. Read more

Same as join, but with more futures. Read more

Same as join, but with more futures. Read more

Same as join, but with more futures. Read more

Convert this future into a single element stream. Read more

Flatten the execution of this future when the successful result of this future is itself another future. Read more

Flatten the execution of this future when the successful result of this future is a stream. Read more

Fuse a future such that poll will never again be called once it has completed. Read more

Do something with the output of a future before passing it on. Read more

Catches unwinding panics while polling the future. Read more

Create a cloneable handle to this future where all handles will resolve to the same result. Read more

Wrap the future in a Box, pinning it.

Turns a Future into a TryFuture with Error = ().

Assigns the provided Spawn to be used when spawning tasks from within the future. Read more

A convenience for calling Future::poll on Unpin future types.

impl<T> From for T
[src]

Performs the conversion.

impl<T, U> Into for T where
    U: From<T>, 
[src]

Performs the conversion.

impl<T, U> TryFrom for T where
    T: From<U>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

impl<T> Borrow for T where
    T: ?Sized
[src]

Important traits for &'a mut R

Immutably borrows from an owned value. Read more

impl<T> Any for T where
    T: 'static + ?Sized
[src]

🔬 This is a nightly-only experimental API. (get_type_id)

this method will likely be replaced by an associated static

Gets the TypeId of self. Read more

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

🔬 This is a nightly-only experimental API. (try_from)

Performs the conversion.

impl<T> BorrowMut for T where
    T: ?Sized
[src]

Important traits for &'a mut R

Mutably borrows from an owned value. Read more