[−][src]Struct futures::channel::oneshot::Receiver
A future for a value that will be provided by another asynchronous task.
This is created by the channel
function.
Implementations
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> Debug for Receiver<T> where
T: Debug,
[src]
T: Debug,
impl<T> Drop for Receiver<T>
[src]
impl<T> Future for Receiver<T>
[src]
type Output = Result<T, Canceled>
The type of value produced on completion.
fn poll(
self: Pin<&mut Receiver<T>>,
cx: &mut Context<'_>
) -> Poll<Result<T, Canceled>>
[src]
self: Pin<&mut Receiver<T>>,
cx: &mut Context<'_>
) -> Poll<Result<T, Canceled>>
impl<T> Unpin for Receiver<T>
[src]
Auto Trait Implementations
impl<T> !RefUnwindSafe for Receiver<T>
impl<T> Send for Receiver<T> where
T: Send,
T: Send,
impl<T> Sync for Receiver<T> where
T: Send,
T: Send,
impl<T> !UnwindSafe for Receiver<T>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut Tⓘ
[src]
impl<T> From<T> for T
[src]
impl<T> FutureExt for T where
T: Future + ?Sized,
[src]
T: Future + ?Sized,
fn map<U, F>(self, f: F) -> Map<Self, F>ⓘ where
F: FnOnce(Self::Output) -> U,
[src]
F: FnOnce(Self::Output) -> U,
fn map_into<U>(self) -> MapInto<Self, U> where
Self::Output: Into<U>,
[src]
Self::Output: Into<U>,
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>ⓘ where
F: FnOnce(Self::Output) -> Fut,
Fut: Future,
[src]
F: FnOnce(Self::Output) -> Fut,
Fut: Future,
fn left_future<B>(self) -> Either<Self, B>ⓘ where
B: Future<Output = Self::Output>,
[src]
B: Future<Output = Self::Output>,
fn right_future<A>(self) -> Either<A, Self>ⓘ where
A: Future<Output = Self::Output>,
[src]
A: Future<Output = Self::Output>,
fn into_stream(self) -> IntoStream<Self>
[src]
fn flatten(self) -> Flatten<Self>ⓘ where
Self::Output: Future,
[src]
Self::Output: Future,
fn flatten_stream(self) -> FlattenStream<Self> where
Self::Output: Stream,
[src]
Self::Output: Stream,
fn fuse(self) -> Fuse<Self>ⓘ
[src]
fn inspect<F>(self, f: F) -> Inspect<Self, F>ⓘ where
F: FnOnce(&Self::Output),
[src]
F: FnOnce(&Self::Output),
fn catch_unwind(self) -> CatchUnwind<Self>ⓘNotable traits for CatchUnwind<Fut>
impl<Fut> Future for CatchUnwind<Fut> where
Fut: Future + UnwindSafe, type Output = Result<<Fut as Future>::Output, Box<dyn Any + 'static + Send>>;
where
Self: UnwindSafe,
[src]
Notable traits for CatchUnwind<Fut>
impl<Fut> Future for CatchUnwind<Fut> where
Fut: Future + UnwindSafe, type Output = Result<<Fut as Future>::Output, Box<dyn Any + 'static + Send>>;
Self: UnwindSafe,
fn shared(self) -> Shared<Self>ⓘ where
Self::Output: Clone,
[src]
Self::Output: Clone,
fn remote_handle(self) -> (Remote<Self>, RemoteHandle<Self::Output>)
[src]
fn boxed<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + 'a + Send>>ⓘ where
Self: Send + 'a,
[src]
Self: Send + 'a,
fn boxed_local<'a>(self) -> Pin<Box<dyn Future<Output = Self::Output> + 'a>>ⓘ where
Self: 'a,
[src]
Self: 'a,
fn unit_error(self) -> UnitError<Self>ⓘ
[src]
fn never_error(self) -> NeverError<Self>ⓘNotable traits for NeverError<Fut>
impl<Fut> Future for NeverError<Fut> where
Map<Fut, OkFn<Infallible>>: Future, type Output = <Map<Fut, OkFn<Infallible>> as Future>::Output;
[src]
Notable traits for NeverError<Fut>
impl<Fut> Future for NeverError<Fut> where
Map<Fut, OkFn<Infallible>>: Future, type Output = <Map<Fut, OkFn<Infallible>> as Future>::Output;
fn poll_unpin(&mut self, cx: &mut Context<'_>) -> Poll<Self::Output> where
Self: Unpin,
[src]
Self: Unpin,
fn now_or_never(self) -> Option<Self::Output>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<F> IntoFuture for F where
F: Future,
[src]
F: Future,
type Output = <F as Future>::Output
into_future
)The output that the future will produce on completion.
type Future = F
into_future
)Which kind of future are we turning this into?
fn into_future(self) -> <F as IntoFuture>::Future
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<F, T, E> TryFuture for F where
F: Future<Output = Result<T, E>> + ?Sized,
[src]
F: Future<Output = Result<T, E>> + ?Sized,
type Ok = T
The type of successful values yielded by this future
type Error = E
The type of failures yielded by this future
fn try_poll(
self: Pin<&mut F>,
cx: &mut Context<'_>
) -> Poll<<F as Future>::Output>
[src]
self: Pin<&mut F>,
cx: &mut Context<'_>
) -> Poll<<F as Future>::Output>
impl<Fut> TryFutureExt for Fut where
Fut: TryFuture + ?Sized,
[src]
Fut: TryFuture + ?Sized,
fn flatten_sink<Item>(self) -> FlattenSink<Self, Self::Ok> where
Self::Ok: Sink<Item>,
<Self::Ok as Sink<Item>>::Error == Self::Error,
[src]
Self::Ok: Sink<Item>,
<Self::Ok as Sink<Item>>::Error == Self::Error,
fn map_ok<T, F>(self, f: F) -> MapOk<Self, F>ⓘ where
F: FnOnce(Self::Ok) -> T,
[src]
F: FnOnce(Self::Ok) -> T,
fn map_ok_or_else<T, E, F>(self, e: E, f: F) -> MapOkOrElse<Self, F, E> where
E: FnOnce(Self::Error) -> T,
F: FnOnce(Self::Ok) -> T,
[src]
E: FnOnce(Self::Error) -> T,
F: FnOnce(Self::Ok) -> T,
fn map_err<E, F>(self, f: F) -> MapErr<Self, F>ⓘ where
F: FnOnce(Self::Error) -> E,
[src]
F: FnOnce(Self::Error) -> E,
fn err_into<E>(self) -> ErrInto<Self, E>ⓘ where
Self::Error: Into<E>,
[src]
Self::Error: Into<E>,
fn ok_into<U>(self) -> OkInto<Self, U> where
Self::Ok: Into<U>,
[src]
Self::Ok: Into<U>,
fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>ⓘ where
F: FnOnce(Self::Ok) -> Fut,
Fut: TryFuture<Error = Self::Error>,
[src]
F: FnOnce(Self::Ok) -> Fut,
Fut: TryFuture<Error = Self::Error>,
fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>ⓘ where
F: FnOnce(Self::Error) -> Fut,
Fut: TryFuture<Ok = Self::Ok>,
[src]
F: FnOnce(Self::Error) -> Fut,
Fut: TryFuture<Ok = Self::Ok>,
fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>ⓘ where
F: FnOnce(&Self::Ok),
[src]
F: FnOnce(&Self::Ok),
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F>ⓘNotable traits for InspectErr<Fut, F>
impl<Fut, F> Future for InspectErr<Fut, F> where
Inspect<IntoFuture<Fut>, InspectErrFn<F>>: Future, type Output = <Inspect<IntoFuture<Fut>, InspectErrFn<F>> as Future>::Output;
where
F: FnOnce(&Self::Error),
[src]
Notable traits for InspectErr<Fut, F>
impl<Fut, F> Future for InspectErr<Fut, F> where
Inspect<IntoFuture<Fut>, InspectErrFn<F>>: Future, type Output = <Inspect<IntoFuture<Fut>, InspectErrFn<F>> as Future>::Output;
F: FnOnce(&Self::Error),
fn try_flatten(self) -> TryFlatten<Self, Self::Ok> where
Self::Ok: TryFuture,
<Self::Ok as TryFuture>::Error == Self::Error,
[src]
Self::Ok: TryFuture,
<Self::Ok as TryFuture>::Error == Self::Error,
fn try_flatten_stream(self) -> TryFlattenStream<Self> where
Self::Ok: TryStream,
<Self::Ok as TryStream>::Error == Self::Error,
[src]
Self::Ok: TryStream,
<Self::Ok as TryStream>::Error == Self::Error,
fn unwrap_or_else<F>(self, f: F) -> UnwrapOrElse<Self, F>ⓘNotable traits for UnwrapOrElse<Fut, F>
impl<Fut, F> Future for UnwrapOrElse<Fut, F> where
Map<IntoFuture<Fut>, UnwrapOrElseFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, UnwrapOrElseFn<F>> as Future>::Output;
where
F: FnOnce(Self::Error) -> Self::Ok,
[src]
Notable traits for UnwrapOrElse<Fut, F>
impl<Fut, F> Future for UnwrapOrElse<Fut, F> where
Map<IntoFuture<Fut>, UnwrapOrElseFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, UnwrapOrElseFn<F>> as Future>::Output;
F: FnOnce(Self::Error) -> Self::Ok,
fn into_future(self) -> IntoFuture<Self>ⓘNotable traits for IntoFuture<Fut>
impl<Fut> Future for IntoFuture<Fut> where
Fut: TryFuture, type Output = Result<<Fut as TryFuture>::Ok, <Fut as TryFuture>::Error>;
[src]
Notable traits for IntoFuture<Fut>
impl<Fut> Future for IntoFuture<Fut> where
Fut: TryFuture, type Output = Result<<Fut as TryFuture>::Ok, <Fut as TryFuture>::Error>;
fn try_poll_unpin(
&mut self,
cx: &mut Context<'_>
) -> Poll<Result<Self::Ok, Self::Error>> where
Self: Unpin,
[src]
&mut self,
cx: &mut Context<'_>
) -> Poll<Result<Self::Ok, Self::Error>> where
Self: Unpin,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,