[−][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.
Methods
impl<T> Receiver<T>
[src]
impl<T> Receiver<T>
pub fn close(&mut self)
[src]
pub fn close(&mut self)
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]
pub fn try_recv(&mut self) -> Result<Option<T>, Canceled>
Attempts to receive a message outside of the context of a task.
Useful when a Context
is not available such as within a
Drop
impl.
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]
impl<T> Debug for Receiver<T> where
T: Debug,
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>
[src]
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter. Read more
impl<T> Drop for Receiver<T>
[src]
impl<T> Drop for Receiver<T>
impl<T> Future for Receiver<T>
[src]
impl<T> Future for Receiver<T>
Auto Trait Implementations
Blanket Implementations
impl<T, U> TryFrom for T where
T: From<U>,
[src]
impl<T, U> TryFrom for T where
T: From<U>,
type Error = !
try_from
)The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
try_from
)Performs the conversion.
impl<T> From for T
[src]
impl<T> From for T
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
impl<T, U> TryInto for T where
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
try_from
)The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
try_from
)Performs the conversion.
impl<T, U> Into for T where
U: From<T>,
[src]
impl<T, U> Into for T where
U: From<T>,
impl<T> Borrow for T where
T: ?Sized,
[src]
impl<T> Borrow for T where
T: ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
impl<T> BorrowMut for T where
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<T> Any for T where
T: 'static + ?Sized,
[src]
impl<T> Any for T where
T: 'static + ?Sized,
fn get_type_id(&self) -> TypeId
[src]
fn get_type_id(&self) -> TypeId
🔬 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<F> IntoFuture for F where
F: Future,
[src]
impl<F> IntoFuture for F where
F: Future,
type Future = F
The future that this type can be converted into.
type Item = <F as Future>::Item
The item that the future may resolve with.
type Error = <F as Future>::Error
The error that the future may resolve with.
fn into_future(self) -> F
[src]
fn into_future(self) -> F
Consumes this object and produces a future.
impl<T> FutureExt for T where
T: Future + ?Sized,
[src]
impl<T> FutureExt for T where
T: Future + ?Sized,
fn map<U, F>(self, f: F) -> Map<Self, F> where
F: FnOnce(Self::Item) -> U,
[src]
fn map<U, F>(self, f: F) -> Map<Self, F> where
F: FnOnce(Self::Item) -> U,
Map this future's result to a different type, returning a new future of the resulting type. Read more
fn map_err<E, F>(self, f: F) -> MapErr<Self, F> where
F: FnOnce(Self::Error) -> E,
[src]
fn map_err<E, F>(self, f: F) -> MapErr<Self, F> where
F: FnOnce(Self::Error) -> E,
Map this future's error to a different error, returning a new future. Read more
fn err_into<E>(self) -> ErrInto<Self, E> where
Self::Error: Into<E>,
[src]
fn err_into<E>(self) -> ErrInto<Self, E> where
Self::Error: Into<E>,
Map this future's error to a new error type using the Into
trait. Read more
fn then<B, F>(self, f: F) -> Then<Self, B, F> where
B: IntoFuture,
F: FnOnce(Result<Self::Item, Self::Error>) -> B,
[src]
fn then<B, F>(self, f: F) -> Then<Self, B, F> where
B: IntoFuture,
F: FnOnce(Result<Self::Item, Self::Error>) -> B,
Chain on a computation for when a future finished, passing the result of the future to the provided closure f
. Read more
fn and_then<B, F>(self, f: F) -> AndThen<Self, B, F> where
B: IntoFuture<Error = Self::Error>,
F: FnOnce(Self::Item) -> B,
[src]
fn and_then<B, F>(self, f: F) -> AndThen<Self, B, F> where
B: IntoFuture<Error = Self::Error>,
F: FnOnce(Self::Item) -> B,
Execute another future after this one has resolved successfully. Read more
fn or_else<B, F>(self, f: F) -> OrElse<Self, B, F> where
B: IntoFuture<Item = Self::Item>,
F: FnOnce(Self::Error) -> B,
[src]
fn or_else<B, F>(self, f: F) -> OrElse<Self, B, F> where
B: IntoFuture<Item = Self::Item>,
F: FnOnce(Self::Error) -> B,
Execute another future if this one resolves with an error. Read more
fn select<B>(self, other: B) -> Select<Self, <B as IntoFuture>::Future> where
B: IntoFuture,
[src]
fn select<B>(self, other: B) -> Select<Self, <B as IntoFuture>::Future> where
B: IntoFuture,
Waits for either one of two differently-typed futures to complete. Read more
fn join<B>(self, other: B) -> Join<Self, <B as IntoFuture>::Future> where
B: IntoFuture<Error = Self::Error>,
[src]
fn join<B>(self, other: B) -> Join<Self, <B as IntoFuture>::Future> where
B: IntoFuture<Error = Self::Error>,
Joins the result of two futures, waiting for them both to complete. Read more
fn join3<B, C>(
self,
b: B,
c: C
) -> Join3<Self, <B as IntoFuture>::Future, <C as IntoFuture>::Future> where
B: IntoFuture<Error = Self::Error>,
C: IntoFuture<Error = Self::Error>,
[src]
fn join3<B, C>(
self,
b: B,
c: C
) -> Join3<Self, <B as IntoFuture>::Future, <C as IntoFuture>::Future> where
B: IntoFuture<Error = Self::Error>,
C: IntoFuture<Error = Self::Error>,
Same as join
, but with more futures.
fn join4<B, C, D>(
self,
b: B,
c: C,
d: D
) -> Join4<Self, <B as IntoFuture>::Future, <C as IntoFuture>::Future, <D as IntoFuture>::Future> where
B: IntoFuture<Error = Self::Error>,
C: IntoFuture<Error = Self::Error>,
D: IntoFuture<Error = Self::Error>,
[src]
fn join4<B, C, D>(
self,
b: B,
c: C,
d: D
) -> Join4<Self, <B as IntoFuture>::Future, <C as IntoFuture>::Future, <D as IntoFuture>::Future> where
B: IntoFuture<Error = Self::Error>,
C: IntoFuture<Error = Self::Error>,
D: IntoFuture<Error = Self::Error>,
Same as join
, but with more futures.
fn join5<B, C, D, E>(
self,
b: B,
c: C,
d: D,
e: E
) -> Join5<Self, <B as IntoFuture>::Future, <C as IntoFuture>::Future, <D as IntoFuture>::Future, <E as IntoFuture>::Future> where
B: IntoFuture<Error = Self::Error>,
C: IntoFuture<Error = Self::Error>,
D: IntoFuture<Error = Self::Error>,
E: IntoFuture<Error = Self::Error>,
[src]
fn join5<B, C, D, E>(
self,
b: B,
c: C,
d: D,
e: E
) -> Join5<Self, <B as IntoFuture>::Future, <C as IntoFuture>::Future, <D as IntoFuture>::Future, <E as IntoFuture>::Future> where
B: IntoFuture<Error = Self::Error>,
C: IntoFuture<Error = Self::Error>,
D: IntoFuture<Error = Self::Error>,
E: IntoFuture<Error = Self::Error>,
Same as join
, but with more futures.
ⓘImportant traits for Either<L, R>fn left<B>(self) -> Either<Self, B> where
B: Future<Item = Self::Item, Error = Self::Error>,
[src]
fn left<B>(self) -> Either<Self, B> where
B: Future<Item = Self::Item, Error = Self::Error>,
: use left_future
instead
Wrap this future in an Either
future, making it the left-hand variant of that Either
. Read more
ⓘImportant traits for Either<L, R>fn left_future<B>(self) -> Either<Self, B> where
B: Future<Item = Self::Item, Error = Self::Error>,
[src]
fn left_future<B>(self) -> Either<Self, B> where
B: Future<Item = Self::Item, Error = Self::Error>,
Wrap this future in an Either
future, making it the left-hand variant of that Either
. Read more
ⓘImportant traits for Either<L, R>fn right<A>(self) -> Either<A, Self> where
A: Future<Item = Self::Item, Error = Self::Error>,
[src]
fn right<A>(self) -> Either<A, Self> where
A: Future<Item = Self::Item, Error = Self::Error>,
: use right_future
instead
Wrap this future in an Either
future, making it the right-hand variant of that Either
. Read more
ⓘImportant traits for Either<L, R>fn right_future<A>(self) -> Either<A, Self> where
A: Future<Item = Self::Item, Error = Self::Error>,
[src]
fn right_future<A>(self) -> Either<A, Self> where
A: Future<Item = Self::Item, Error = Self::Error>,
Wrap this future in an Either
future, making it the right-hand variant of that Either
. Read more
fn into_stream(self) -> IntoStream<Self>
[src]
fn into_stream(self) -> IntoStream<Self>
Convert this future into a single element stream. Read more
fn flatten(self) -> Flatten<Self> where
Self::Item: IntoFuture,
<Self::Item as IntoFuture>::Error == Self::Error,
[src]
fn flatten(self) -> Flatten<Self> where
Self::Item: IntoFuture,
<Self::Item as IntoFuture>::Error == Self::Error,
Flatten the execution of this future when the successful result of this future is itself another future. Read more
fn flatten_sink(self) -> FlattenSink<Self> where
Self::Item: Sink,
<Self::Item as Sink>::SinkError == Self::Error,
[src]
fn flatten_sink(self) -> FlattenSink<Self> where
Self::Item: Sink,
<Self::Item as Sink>::SinkError == Self::Error,
Flatten the execution of this future when the successful result of this future is a sink. Read more
fn flatten_stream(self) -> FlattenStream<Self> where
Self::Item: Stream,
<Self::Item as Stream>::Error == Self::Error,
[src]
fn flatten_stream(self) -> FlattenStream<Self> where
Self::Item: Stream,
<Self::Item as Stream>::Error == Self::Error,
Flatten the execution of this future when the successful result of this future is a stream. Read more
fn fuse(self) -> Fuse<Self>
[src]
fn fuse(self) -> Fuse<Self>
Fuse a future such that poll
will never again be called once it has completed. Read more
fn inspect<F>(self, f: F) -> Inspect<Self, F> where
F: FnOnce(&Self::Item),
[src]
fn inspect<F>(self, f: F) -> Inspect<Self, F> where
F: FnOnce(&Self::Item),
Do something with the item of a future, passing it on. Read more
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F> where
F: FnOnce(&Self::Error),
[src]
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F> where
F: FnOnce(&Self::Error),
Do something with the error of a future, passing it on. Read more
fn catch_unwind(self) -> CatchUnwind<Self> where
Self: UnwindSafe,
[src]
fn catch_unwind(self) -> CatchUnwind<Self> where
Self: UnwindSafe,
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
fn recover<E, F>(self, f: F) -> Recover<Self, E, F> where
F: FnOnce(Self::Error) -> Self::Item,
[src]
fn recover<E, F>(self, f: F) -> Recover<Self, E, F> where
F: FnOnce(Self::Error) -> Self::Item,
Handle errors generated by this future by converting them into Self::Item
. Read more
fn with_executor<E>(self, executor: E) -> WithExecutor<Self, E> where
E: Executor,
[src]
fn with_executor<E>(self, executor: E) -> WithExecutor<Self, E> where
E: Executor,
Assigns the provided Executor
to be used when spawning tasks from within the future. Read more