[][src]Struct futures::channel::oneshot::Receiver

#[must_use = "futures do nothing unless polled"]
pub struct Receiver<T> { /* fields omitted */ }

A future for a value that will be provided by another asynchronous task.

This is created by the channel function.

Methods

impl<T> Receiver<T>[src]

pub fn close(&mut self)[src]

Gracefully close this receiver, preventing any subsequent attempts to send to it.

Any send operation which happens after this method returns is guaranteed to fail. After calling this method, you can use Receiver::poll to determine whether a message had previously been sent.

pub fn try_recv(&mut self) -> Result<Option<T>, Canceled>[src]

Attempts to receive a message outside of the context of a task.

Does not schedule a task wakeup or have any other side effects.

A return value of None must be considered immediately stale (out of date) unless close has been called first.

Returns an error if the sender was dropped.

Trait Implementations

impl<T> Unpin for Receiver<T>[src]

impl<T> Debug for Receiver<T> where
    T: Debug
[src]

impl<T> Drop for Receiver<T>[src]

impl<T> Future for Receiver<T>[src]

type Output = Result<T, Canceled>

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

futures in libcore are unstable

The type of value produced on completion.

Auto Trait Implementations

impl<T> Send for Receiver<T> where
    T: Send

impl<T> Sync for Receiver<T> where
    T: Send

Blanket Implementations

impl<T> From for T[src]

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

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

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

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

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

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

Important traits for Map<Fut, F>
default fn map<U, F>(self, f: F) -> Map<Self, F> where
    F: FnOnce(Self::Output) -> U, 
[src]

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

Important traits for Then<Fut1, Fut2, F>
default fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F> where
    F: FnOnce(Self::Output) -> Fut,
    Fut: Future
[src]

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

default fn into_stream(self) -> IntoStream<Self>[src]

Convert this future into a single element stream. Read more

Important traits for Flatten<Fut>
default fn flatten(self) -> Flatten<Self> where
    Self::Output: Future
[src]

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

default fn flatten_stream(self) -> FlattenStream<Self> where
    Self::Output: Stream
[src]

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

Important traits for Fuse<Fut>
default fn fuse(self) -> Fuse<Self>[src]

Fuse a future such that poll will never again be called once it has completed. This method can be used to turn any Future into a FusedFuture. Read more

Important traits for Inspect<Fut, F>
default fn inspect<F>(self, f: F) -> Inspect<Self, F> where
    F: FnOnce(&Self::Output), 
[src]

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

Important traits for CatchUnwind<Fut>
default fn catch_unwind(self) -> CatchUnwind<Self> where
    Self: UnwindSafe
[src]

Catches unwinding panics while polling the future. Read more

Important traits for Shared<Fut>
default fn shared(self) -> Shared<Self> where
    Self::Output: Clone
[src]

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

default fn remote_handle(self) -> (Remote<Self>, RemoteHandle<Self::Output>)[src]

Turn this future into a future that yields () on completion and sends its output to another future on a separate task. Read more

Important traits for Pin<P>
default fn boxed(self) -> Pin<Box<Self>>[src]

Wrap the future in a Box, pinning it.

Important traits for UnitError<Fut>
default fn unit_error(self) -> UnitError<Self>[src]

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

default fn poll_unpin(&mut self, cx: &mut Context) -> Poll<Self::Output> where
    Self: Unpin
[src]

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

impl<F, T, E> TryFuture for F where
    F: Future<Output = Result<T, E>>, 
[src]

type Ok = T

The type of successful values yielded by this future

type Error = E

The type of failures yielded by this future

impl<Fut> TryFutureExt for Fut where
    Fut: TryFuture
[src]

default fn flatten_sink<Item>(self) -> FlattenSink<Self, Self::Ok> where
    Self::Ok: Sink<Item>,
    <Self::Ok as Sink<Item>>::SinkError == Self::Error
[src]

Flattens the execution of this future when the successful result of this future is a [Sink]. Read more

Important traits for MapOk<Fut, F>
default fn map_ok<T, F>(self, f: F) -> MapOk<Self, F> where
    F: FnOnce(Self::Ok) -> T, 
[src]

Maps this future's success value to a different value. Read more

Important traits for MapErr<Fut, F>
default fn map_err<E, F>(self, f: F) -> MapErr<Self, F> where
    F: FnOnce(Self::Error) -> E, 
[src]

Maps this future's error value to a different value. Read more

Important traits for ErrInto<Fut, E>
default fn err_into<E>(self) -> ErrInto<Self, E> where
    Self::Error: Into<E>, 
[src]

Maps this future's Error to a new error type using the Into trait. Read more

Important traits for AndThen<Fut1, Fut2, F>
default fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F> where
    F: FnOnce(Self::Ok) -> Fut,
    Fut: TryFuture<Error = Self::Error>, 
[src]

Executes another future after this one resolves successfully. The success value is passed to a closure to create this subsequent future. Read more

Important traits for OrElse<Fut1, Fut2, F>
default fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F> where
    F: FnOnce(Self::Error) -> Fut,
    Fut: TryFuture<Ok = Self::Ok>, 
[src]

Executes another future if this one resolves to an error. The error value is passed to a closure to create this subsequent future. Read more

Important traits for UnwrapOrElse<Fut, F>
default fn unwrap_or_else<F>(self, f: F) -> UnwrapOrElse<Self, F> where
    F: FnOnce(Self::Error) -> Self::Ok
[src]

Unwraps this future's ouput, producing a future with this future's Ok type as its Output type. Read more

Important traits for Compat<R>
default fn compat(self) -> Compat<Self> where
    Self: Unpin
[src]

Wraps a [TryFuture] into a future compatable with libraries using futures 0.1 future definitons. Requires the compat feature to enable. Read more

Important traits for IntoFuture<Fut>
default fn into_future(self) -> IntoFuture<Self>[src]

Wraps a [TryFuture] into a type that implements Future. Read more