Struct snarkvm_wasm::panic::AssertUnwindSafe
1.9.0 · source · pub struct AssertUnwindSafe<T>(pub T);Expand description
A simple wrapper around a type to assert that it is unwind safe.
When using catch_unwind it may be the case that some of the closed over
variables are not unwind safe. For example if &mut T is captured the
compiler will generate a warning indicating that it is not unwind safe. It
might not be the case, however, that this is actually a problem due to the
specific usage of catch_unwind if unwind safety is specifically taken into
account. This wrapper struct is useful for a quick and lightweight
annotation that a variable is indeed unwind safe.
Examples
One way to use AssertUnwindSafe is to assert that the entire closure
itself is unwind safe, bypassing all checks for all variables:
use std::panic::{self, AssertUnwindSafe};
let mut variable = 4;
// This code will not compile because the closure captures `&mut variable`
// which is not considered unwind safe by default.
// panic::catch_unwind(|| {
// variable += 3;
// });
// This, however, will compile due to the `AssertUnwindSafe` wrapper
let result = panic::catch_unwind(AssertUnwindSafe(|| {
variable += 3;
}));
// ...Wrapping the entire closure amounts to a blanket assertion that all captured variables are unwind safe. This has the downside that if new captures are added in the future, they will also be considered unwind safe. Therefore, you may prefer to just wrap individual captures, as shown below. This is more annotation, but it ensures that if a new capture is added which is not unwind safe, you will get a compilation error at that time, which will allow you to consider whether that new capture in fact represent a bug or not.
use std::panic::{self, AssertUnwindSafe};
let mut variable = 4;
let other_capture = 3;
let result = {
let mut wrapper = AssertUnwindSafe(&mut variable);
panic::catch_unwind(move || {
**wrapper += other_capture;
})
};
// ...Tuple Fields
0: TTrait Implementations
sourceimpl<S> AsyncIterator for AssertUnwindSafe<S>where
S: AsyncIterator,
impl<S> AsyncIterator for AssertUnwindSafe<S>where
S: AsyncIterator,
type Item = <S as AsyncIterator>::Item
type Item = <S as AsyncIterator>::Item
async_iterator)sourcefn poll_next(
self: Pin<&mut AssertUnwindSafe<S>>,
cx: &mut Context<'_>
) -> Poll<Option<<S as AsyncIterator>::Item>>
fn poll_next(
self: Pin<&mut AssertUnwindSafe<S>>,
cx: &mut Context<'_>
) -> Poll<Option<<S as AsyncIterator>::Item>>
async_iterator)None if the async iterator is exhausted. Read more1.16.0 · sourceimpl<T> Debug for AssertUnwindSafe<T>where
T: Debug,
impl<T> Debug for AssertUnwindSafe<T>where
T: Debug,
1.62.0 · sourceimpl<T> Default for AssertUnwindSafe<T>where
T: Default,
impl<T> Default for AssertUnwindSafe<T>where
T: Default,
sourcefn default() -> AssertUnwindSafe<T>ⓘNotable traits for AssertUnwindSafe<F>impl<F> Future for AssertUnwindSafe<F>where
F: Future, type Output = <F as Future>::Output;
fn default() -> AssertUnwindSafe<T>ⓘNotable traits for AssertUnwindSafe<F>impl<F> Future for AssertUnwindSafe<F>where
F: Future, type Output = <F as Future>::Output;
F: Future, type Output = <F as Future>::Output;
sourceimpl<T> Deref for AssertUnwindSafe<T>
impl<T> Deref for AssertUnwindSafe<T>
sourceimpl<T> DerefMut for AssertUnwindSafe<T>
impl<T> DerefMut for AssertUnwindSafe<T>
sourceimpl<R, F> FnOnce() for AssertUnwindSafe<F>where
F: FnOnce() -> R,
impl<R, F> FnOnce() for AssertUnwindSafe<F>where
F: FnOnce() -> R,
impl<F> FusedFuture for AssertUnwindSafe<F>where
F: FusedFuture,
impl<F> FusedFuture for AssertUnwindSafe<F>where
F: FusedFuture,
fn is_terminated(&self) -> bool
fn is_terminated(&self) -> bool
true if the underlying future should no longer be polled.1.36.0 · sourceimpl<F> Future for AssertUnwindSafe<F>where
F: Future,
impl<F> Future for AssertUnwindSafe<F>where
F: Future,
sourcefn poll(
self: Pin<&mut AssertUnwindSafe<F>>,
cx: &mut Context<'_>
) -> Poll<<AssertUnwindSafe<F> as Future>::Output>
fn poll(
self: Pin<&mut AssertUnwindSafe<F>>,
cx: &mut Context<'_>
) -> Poll<<AssertUnwindSafe<F> as Future>::Output>
impl<S> Stream for AssertUnwindSafe<S>where
S: Stream,
impl<S> Stream for AssertUnwindSafe<S>where
S: Stream,
type Item = <S as Stream>::Item
type Item = <S as Stream>::Item
impl<T> RefUnwindSafe for AssertUnwindSafe<T>
impl<T> UnwindSafe for AssertUnwindSafe<T>
Auto Trait Implementations
impl<T> Send for AssertUnwindSafe<T>where
T: Send,
impl<T> Sync for AssertUnwindSafe<T>where
T: Sync,
impl<T> Unpin for AssertUnwindSafe<T>where
T: Unpin,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<T> FutureExt for Twhere
T: Future + ?Sized,
impl<T> FutureExt for Twhere
T: Future + ?Sized,
fn map<U, F>(self, f: F) -> Map<Self, F>ⓘNotable traits for Map<Fut, F>impl<Fut, F> Future for Map<Fut, F>where
Map<Fut, F>: Future, type Output = <Map<Fut, F> as Future>::Output;where
F: FnOnce(Self::Output) -> U,
Self: Sized,
fn map<U, F>(self, f: F) -> Map<Self, F>ⓘNotable traits for Map<Fut, F>impl<Fut, F> Future for Map<Fut, F>where
Map<Fut, F>: Future, type Output = <Map<Fut, F> as Future>::Output;where
F: FnOnce(Self::Output) -> U,
Self: Sized,
Map<Fut, F>: Future, type Output = <Map<Fut, F> as Future>::Output;
fn map_into<U>(self) -> MapInto<Self, U>ⓘNotable traits for MapInto<Fut, T>impl<Fut, T> Future for MapInto<Fut, T>where
Map<Fut, IntoFn<T>>: Future, type Output = <Map<Fut, IntoFn<T>> as Future>::Output;where
Self::Output: Into<U>,
Self: Sized,
fn map_into<U>(self) -> MapInto<Self, U>ⓘNotable traits for MapInto<Fut, T>impl<Fut, T> Future for MapInto<Fut, T>where
Map<Fut, IntoFn<T>>: Future, type Output = <Map<Fut, IntoFn<T>> as Future>::Output;where
Self::Output: Into<U>,
Self: Sized,
Map<Fut, IntoFn<T>>: Future, type Output = <Map<Fut, IntoFn<T>> as Future>::Output;
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>ⓘNotable traits for Then<Fut1, Fut2, F>impl<Fut1, Fut2, F> Future for Then<Fut1, Fut2, F>where
Flatten<Map<Fut1, F>, Fut2>: Future, type Output = <Flatten<Map<Fut1, F>, Fut2> as Future>::Output;where
F: FnOnce(Self::Output) -> Fut,
Fut: Future,
Self: Sized,
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>ⓘNotable traits for Then<Fut1, Fut2, F>impl<Fut1, Fut2, F> Future for Then<Fut1, Fut2, F>where
Flatten<Map<Fut1, F>, Fut2>: Future, type Output = <Flatten<Map<Fut1, F>, Fut2> as Future>::Output;where
F: FnOnce(Self::Output) -> Fut,
Fut: Future,
Self: Sized,
Flatten<Map<Fut1, F>, Fut2>: Future, type Output = <Flatten<Map<Fut1, F>, Fut2> as Future>::Output;
f. Read morefn left_future<B>(self) -> Either<Self, B>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;where
B: Future<Output = Self::Output>,
Self: Sized,
fn left_future<B>(self) -> Either<Self, B>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;where
B: Future<Output = Self::Output>,
Self: Sized,
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
fn right_future<A>(self) -> Either<A, Self>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;where
A: Future<Output = Self::Output>,
Self: Sized,
fn right_future<A>(self) -> Either<A, Self>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;where
A: Future<Output = Self::Output>,
Self: Sized,
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
fn flatten(self) -> Flatten<Self>ⓘNotable traits for Flatten<F>impl<F> Future for Flatten<F>where
Flatten<F, <F as Future>::Output>: Future,
F: Future, type Output = <Flatten<F, <F as Future>::Output> as Future>::Output;where
Self::Output: Future,
Self: Sized,
fn flatten(self) -> Flatten<Self>ⓘNotable traits for Flatten<F>impl<F> Future for Flatten<F>where
Flatten<F, <F as Future>::Output>: Future,
F: Future, type Output = <Flatten<F, <F as Future>::Output> as Future>::Output;where
Self::Output: Future,
Self: Sized,
Flatten<F, <F as Future>::Output>: Future,
F: Future, type Output = <Flatten<F, <F as Future>::Output> as Future>::Output;
fn flatten_stream(self) -> FlattenStream<Self>where
Self::Output: Stream,
Self: Sized,
fn flatten_stream(self) -> FlattenStream<Self>where
Self::Output: Stream,
Self: Sized,
fn fuse(self) -> Fuse<Self>ⓘNotable traits for Fuse<Fut>impl<Fut> Future for Fuse<Fut>where
Fut: Future, type Output = <Fut as Future>::Output;where
Self: Sized,
fn fuse(self) -> Fuse<Self>ⓘNotable traits for Fuse<Fut>impl<Fut> Future for Fuse<Fut>where
Fut: Future, type Output = <Fut as Future>::Output;where
Self: Sized,
Fut: Future, type Output = <Fut as Future>::Output;
poll will never again be called once it has
completed. This method can be used to turn any Future into a
FusedFuture. Read morefn inspect<F>(self, f: F) -> Inspect<Self, F>ⓘNotable traits for Inspect<Fut, F>impl<Fut, F> Future for Inspect<Fut, F>where
Map<Fut, InspectFn<F>>: Future, type Output = <Map<Fut, InspectFn<F>> as Future>::Output;where
F: FnOnce(&Self::Output),
Self: Sized,
fn inspect<F>(self, f: F) -> Inspect<Self, F>ⓘNotable traits for Inspect<Fut, F>impl<Fut, F> Future for Inspect<Fut, F>where
Map<Fut, InspectFn<F>>: Future, type Output = <Map<Fut, InspectFn<F>> as Future>::Output;where
F: FnOnce(&Self::Output),
Self: Sized,
Map<Fut, InspectFn<F>>: Future, type Output = <Map<Fut, InspectFn<F>> as Future>::Output;
fn unit_error(self) -> UnitError<Self>ⓘNotable traits for UnitError<Fut>impl<Fut> Future for UnitError<Fut>where
Map<Fut, OkFn<()>>: Future, type Output = <Map<Fut, OkFn<()>> as Future>::Output;where
Self: Sized,
fn unit_error(self) -> UnitError<Self>ⓘNotable traits for UnitError<Fut>impl<Fut> Future for UnitError<Fut>where
Map<Fut, OkFn<()>>: Future, type Output = <Map<Fut, OkFn<()>> as Future>::Output;where
Self: Sized,
Map<Fut, OkFn<()>>: Future, type Output = <Map<Fut, OkFn<()>> as Future>::Output;
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;where
Self: Sized,
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;where
Self: Sized,
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,
fn poll_unpin(&mut self, cx: &mut Context<'_>) -> Poll<Self::Output>where
Self: Unpin,
Future::poll on Unpin future types.fn now_or_never(self) -> Option<Self::Output>where
Self: Sized,
fn now_or_never(self) -> Option<Self::Output>where
Self: Sized,
Future::poll. Read moresourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T>where
T: Future, type Output = <T as Future>::Output;
fn instrument(self, span: Span) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T>where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
sourcefn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T>where
T: Future, type Output = <T as Future>::Output;
fn in_current_span(self) -> Instrumented<Self>ⓘNotable traits for Instrumented<T>impl<T> Future for Instrumented<T>where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;
sourceimpl<F> IntoFuture for Fwhere
F: Future,
impl<F> IntoFuture for Fwhere
F: Future,
type IntoFuture = F
type IntoFuture = F
sourcefn into_future(self) -> <F as IntoFuture>::IntoFuture
fn into_future(self) -> <F as IntoFuture>::IntoFuture
impl<T> Pointable for T
impl<T> Pointable for T
impl<T> StreamExt for Twhere
T: Stream + ?Sized,
impl<T> StreamExt for Twhere
T: Stream + ?Sized,
fn next(&mut self) -> Next<'_, Self>ⓘNotable traits for Next<'_, St>impl<St> Future for Next<'_, St>where
St: Stream + Unpin + ?Sized, type Output = Option<<St as Stream>::Item>;where
Self: Unpin,
fn next(&mut self) -> Next<'_, Self>ⓘNotable traits for Next<'_, St>impl<St> Future for Next<'_, St>where
St: Stream + Unpin + ?Sized, type Output = Option<<St as Stream>::Item>;where
Self: Unpin,
St: Stream + Unpin + ?Sized, type Output = Option<<St as Stream>::Item>;
fn into_future(self) -> StreamFuture<Self>ⓘNotable traits for StreamFuture<St>impl<St> Future for StreamFuture<St>where
St: Stream + Unpin, type Output = (Option<<St as Stream>::Item>, St);where
Self: Sized + Unpin,
fn into_future(self) -> StreamFuture<Self>ⓘNotable traits for StreamFuture<St>impl<St> Future for StreamFuture<St>where
St: Stream + Unpin, type Output = (Option<<St as Stream>::Item>, St);where
Self: Sized + Unpin,
St: Stream + Unpin, type Output = (Option<<St as Stream>::Item>, St);
fn map<T, F>(self, f: F) -> Map<Self, F>where
F: FnMut(Self::Item) -> T,
Self: Sized,
fn map<T, F>(self, f: F) -> Map<Self, F>where
F: FnMut(Self::Item) -> T,
Self: Sized,
fn enumerate(self) -> Enumerate<Self>where
Self: Sized,
fn enumerate(self) -> Enumerate<Self>where
Self: Sized,
fn filter<Fut, F>(self, f: F) -> Filter<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
fn filter<Fut, F>(self, f: F) -> Filter<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
fn filter_map<Fut, T, F>(self, f: F) -> FilterMap<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = Option<T>>,
Self: Sized,
fn filter_map<Fut, T, F>(self, f: F) -> FilterMap<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = Option<T>>,
Self: Sized,
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future,
Self: Sized,
fn then<Fut, F>(self, f: F) -> Then<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future,
Self: Sized,
fn collect<C>(self) -> Collect<Self, C>ⓘNotable traits for Collect<St, C>impl<St, C> Future for Collect<St, C>where
St: Stream,
C: Default + Extend<<St as Stream>::Item>, type Output = C;where
C: Default + Extend<Self::Item>,
Self: Sized,
fn collect<C>(self) -> Collect<Self, C>ⓘNotable traits for Collect<St, C>impl<St, C> Future for Collect<St, C>where
St: Stream,
C: Default + Extend<<St as Stream>::Item>, type Output = C;where
C: Default + Extend<Self::Item>,
Self: Sized,
St: Stream,
C: Default + Extend<<St as Stream>::Item>, type Output = C;
fn unzip<A, B, FromA, FromB>(self) -> Unzip<Self, FromA, FromB>ⓘNotable traits for Unzip<St, FromA, FromB>impl<St, A, B, FromA, FromB> Future for Unzip<St, FromA, FromB>where
St: Stream<Item = (A, B)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>, type Output = (FromA, FromB);where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Sized + Stream<Item = (A, B)>,
fn unzip<A, B, FromA, FromB>(self) -> Unzip<Self, FromA, FromB>ⓘNotable traits for Unzip<St, FromA, FromB>impl<St, A, B, FromA, FromB> Future for Unzip<St, FromA, FromB>where
St: Stream<Item = (A, B)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>, type Output = (FromA, FromB);where
FromA: Default + Extend<A>,
FromB: Default + Extend<B>,
Self: Sized + Stream<Item = (A, B)>,
St: Stream<Item = (A, B)>,
FromA: Default + Extend<A>,
FromB: Default + Extend<B>, type Output = (FromA, FromB);
fn concat(self) -> Concat<Self>ⓘNotable traits for Concat<St>impl<St> Future for Concat<St>where
St: Stream,
<St as Stream>::Item: Extend<<<St as Stream>::Item as IntoIterator>::Item> + IntoIterator + Default, type Output = <St as Stream>::Item;where
Self: Sized,
Self::Item: Extend<<Self::Item as IntoIterator>::Item> + IntoIterator + Default,
fn concat(self) -> Concat<Self>ⓘNotable traits for Concat<St>impl<St> Future for Concat<St>where
St: Stream,
<St as Stream>::Item: Extend<<<St as Stream>::Item as IntoIterator>::Item> + IntoIterator + Default, type Output = <St as Stream>::Item;where
Self: Sized,
Self::Item: Extend<<Self::Item as IntoIterator>::Item> + IntoIterator + Default,
St: Stream,
<St as Stream>::Item: Extend<<<St as Stream>::Item as IntoIterator>::Item> + IntoIterator + Default, type Output = <St as Stream>::Item;
fn count(self) -> Count<Self>where
Self: Sized,
fn count(self) -> Count<Self>where
Self: Sized,
fn fold<T, Fut, F>(self, init: T, f: F) -> Fold<Self, Fut, T, F>ⓘNotable traits for Fold<St, Fut, T, F>impl<St, Fut, T, F> Future for Fold<St, Fut, T, F>where
St: Stream,
F: FnMut(T, <St as Stream>::Item) -> Fut,
Fut: Future<Output = T>, type Output = T;where
F: FnMut(T, Self::Item) -> Fut,
Fut: Future<Output = T>,
Self: Sized,
fn fold<T, Fut, F>(self, init: T, f: F) -> Fold<Self, Fut, T, F>ⓘNotable traits for Fold<St, Fut, T, F>impl<St, Fut, T, F> Future for Fold<St, Fut, T, F>where
St: Stream,
F: FnMut(T, <St as Stream>::Item) -> Fut,
Fut: Future<Output = T>, type Output = T;where
F: FnMut(T, Self::Item) -> Fut,
Fut: Future<Output = T>,
Self: Sized,
St: Stream,
F: FnMut(T, <St as Stream>::Item) -> Fut,
Fut: Future<Output = T>, type Output = T;
fn any<Fut, F>(self, f: F) -> Any<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
fn any<Fut, F>(self, f: F) -> Any<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
true if any element in stream satisfied a predicate. Read morefn all<Fut, F>(self, f: F) -> All<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
fn all<Fut, F>(self, f: F) -> All<Self, Fut, F>where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
true if all element in stream satisfied a predicate. Read morefn flatten(self) -> Flatten<Self>where
Self::Item: Stream,
Self: Sized,
fn flatten(self) -> Flatten<Self>where
Self::Item: Stream,
Self: Sized,
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
F: FnMut(Self::Item) -> U,
U: Stream,
Self: Sized,
fn flat_map<U, F>(self, f: F) -> FlatMap<Self, U, F>where
F: FnMut(Self::Item) -> U,
U: Stream,
Self: Sized,
fn scan<S, B, Fut, F>(self, initial_state: S, f: F) -> Scan<Self, S, Fut, F>where
F: FnMut(&mut S, Self::Item) -> Fut,
Fut: Future<Output = Option<B>>,
Self: Sized,
fn scan<S, B, Fut, F>(self, initial_state: S, f: F) -> Scan<Self, S, Fut, F>where
F: FnMut(&mut S, Self::Item) -> Fut,
Fut: Future<Output = Option<B>>,
Self: Sized,
StreamExt::fold] that holds internal state
and produces a new stream. Read morefn skip_while<Fut, F>(self, f: F) -> SkipWhile<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
fn skip_while<Fut, F>(self, f: F) -> SkipWhile<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
true. Read morefn take_while<Fut, F>(self, f: F) -> TakeWhile<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
fn take_while<Fut, F>(self, f: F) -> TakeWhile<Self, Fut, F>where
F: FnMut(&Self::Item) -> Fut,
Fut: Future<Output = bool>,
Self: Sized,
true. Read morefn take_until<Fut>(self, fut: Fut) -> TakeUntil<Self, Fut>where
Fut: Future,
Self: Sized,
fn take_until<Fut>(self, fut: Fut) -> TakeUntil<Self, Fut>where
Fut: Future,
Self: Sized,
fn for_each<Fut, F>(self, f: F) -> ForEach<Self, Fut, F>ⓘNotable traits for ForEach<St, Fut, F>impl<St, Fut, F> Future for ForEach<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = ()>,
Self: Sized,
fn for_each<Fut, F>(self, f: F) -> ForEach<Self, Fut, F>ⓘNotable traits for ForEach<St, Fut, F>impl<St, Fut, F> Future for ForEach<St, Fut, F>where
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();where
F: FnMut(Self::Item) -> Fut,
Fut: Future<Output = ()>,
Self: Sized,
St: Stream,
F: FnMut(<St as Stream>::Item) -> Fut,
Fut: Future<Output = ()>, type Output = ();
fn take(self, n: usize) -> Take<Self>where
Self: Sized,
fn take(self, n: usize) -> Take<Self>where
Self: Sized,
n items of the underlying stream. Read morefn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
fn skip(self, n: usize) -> Skip<Self>where
Self: Sized,
n items of the underlying stream. Read morefn zip<St>(self, other: St) -> Zip<Self, St>where
St: Stream,
Self: Sized,
fn zip<St>(self, other: St) -> Zip<Self, St>where
St: Stream,
Self: Sized,
fn chain<St>(self, other: St) -> Chain<Self, St>where
St: Stream<Item = Self::Item>,
Self: Sized,
fn chain<St>(self, other: St) -> Chain<Self, St>where
St: Stream<Item = Self::Item>,
Self: Sized,
fn peekable(self) -> Peekable<Self>where
Self: Sized,
fn peekable(self) -> Peekable<Self>where
Self: Sized,
peek method. Read morefn inspect<F>(self, f: F) -> Inspect<Self, F>where
F: FnMut(&Self::Item),
Self: Sized,
fn inspect<F>(self, f: F) -> Inspect<Self, F>where
F: FnMut(&Self::Item),
Self: Sized,
fn left_stream<B>(self) -> Either<Self, B>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;where
B: Stream<Item = Self::Item>,
Self: Sized,
fn left_stream<B>(self) -> Either<Self, B>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;where
B: Stream<Item = Self::Item>,
Self: Sized,
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
fn right_stream<B>(self) -> Either<B, Self>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;where
B: Stream<Item = Self::Item>,
Self: Sized,
fn right_stream<B>(self) -> Either<B, Self>ⓘNotable traits for Either<A, B>impl<A, B> Future for Either<A, B>where
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;where
B: Stream<Item = Self::Item>,
Self: Sized,
A: Future,
B: Future<Output = <A as Future>::Output>, type Output = <A as Future>::Output;
fn poll_next_unpin(&mut self, cx: &mut Context<'_>) -> Poll<Option<Self::Item>>where
Self: Unpin,
fn poll_next_unpin(&mut self, cx: &mut Context<'_>) -> Poll<Option<Self::Item>>where
Self: Unpin,
impl<Fut> TryFutureExt for Futwhere
Fut: TryFuture + ?Sized,
impl<Fut> TryFutureExt for Futwhere
Fut: TryFuture + ?Sized,
fn map_ok<T, F>(self, f: F) -> MapOk<Self, F>ⓘNotable traits for MapOk<Fut, F>impl<Fut, F> Future for MapOk<Fut, F>where
Map<IntoFuture<Fut>, MapOkFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, MapOkFn<F>> as Future>::Output;where
F: FnOnce(Self::Ok) -> T,
Self: Sized,
fn map_ok<T, F>(self, f: F) -> MapOk<Self, F>ⓘNotable traits for MapOk<Fut, F>impl<Fut, F> Future for MapOk<Fut, F>where
Map<IntoFuture<Fut>, MapOkFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, MapOkFn<F>> as Future>::Output;where
F: FnOnce(Self::Ok) -> T,
Self: Sized,
Map<IntoFuture<Fut>, MapOkFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, MapOkFn<F>> as Future>::Output;
fn map_ok_or_else<T, E, F>(self, e: E, f: F) -> MapOkOrElse<Self, F, E>ⓘNotable traits for MapOkOrElse<Fut, F, G>impl<Fut, F, G> Future for MapOkOrElse<Fut, F, G>where
Map<IntoFuture<Fut>, ChainFn<MapOkFn<F>, ChainFn<MapErrFn<G>, MergeResultFn>>>: Future, type Output = <Map<IntoFuture<Fut>, ChainFn<MapOkFn<F>, ChainFn<MapErrFn<G>, MergeResultFn>>> as Future>::Output;where
F: FnOnce(Self::Ok) -> T,
E: FnOnce(Self::Error) -> T,
Self: Sized,
fn map_ok_or_else<T, E, F>(self, e: E, f: F) -> MapOkOrElse<Self, F, E>ⓘNotable traits for MapOkOrElse<Fut, F, G>impl<Fut, F, G> Future for MapOkOrElse<Fut, F, G>where
Map<IntoFuture<Fut>, ChainFn<MapOkFn<F>, ChainFn<MapErrFn<G>, MergeResultFn>>>: Future, type Output = <Map<IntoFuture<Fut>, ChainFn<MapOkFn<F>, ChainFn<MapErrFn<G>, MergeResultFn>>> as Future>::Output;where
F: FnOnce(Self::Ok) -> T,
E: FnOnce(Self::Error) -> T,
Self: Sized,
Map<IntoFuture<Fut>, ChainFn<MapOkFn<F>, ChainFn<MapErrFn<G>, MergeResultFn>>>: Future, type Output = <Map<IntoFuture<Fut>, ChainFn<MapOkFn<F>, ChainFn<MapErrFn<G>, MergeResultFn>>> as Future>::Output;
fn map_err<E, F>(self, f: F) -> MapErr<Self, F>ⓘNotable traits for MapErr<Fut, F>impl<Fut, F> Future for MapErr<Fut, F>where
Map<IntoFuture<Fut>, MapErrFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, MapErrFn<F>> as Future>::Output;where
F: FnOnce(Self::Error) -> E,
Self: Sized,
fn map_err<E, F>(self, f: F) -> MapErr<Self, F>ⓘNotable traits for MapErr<Fut, F>impl<Fut, F> Future for MapErr<Fut, F>where
Map<IntoFuture<Fut>, MapErrFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, MapErrFn<F>> as Future>::Output;where
F: FnOnce(Self::Error) -> E,
Self: Sized,
Map<IntoFuture<Fut>, MapErrFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, MapErrFn<F>> as Future>::Output;
fn err_into<E>(self) -> ErrInto<Self, E>ⓘNotable traits for ErrInto<Fut, E>impl<Fut, E> Future for ErrInto<Fut, E>where
MapErr<Fut, IntoFn<E>>: Future, type Output = <MapErr<Fut, IntoFn<E>> as Future>::Output;where
Self: Sized,
Self::Error: Into<E>,
fn err_into<E>(self) -> ErrInto<Self, E>ⓘNotable traits for ErrInto<Fut, E>impl<Fut, E> Future for ErrInto<Fut, E>where
MapErr<Fut, IntoFn<E>>: Future, type Output = <MapErr<Fut, IntoFn<E>> as Future>::Output;where
Self: Sized,
Self::Error: Into<E>,
MapErr<Fut, IntoFn<E>>: Future, type Output = <MapErr<Fut, IntoFn<E>> as Future>::Output;
fn ok_into<U>(self) -> OkInto<Self, U>ⓘNotable traits for OkInto<Fut, E>impl<Fut, E> Future for OkInto<Fut, E>where
MapOk<Fut, IntoFn<E>>: Future, type Output = <MapOk<Fut, IntoFn<E>> as Future>::Output;where
Self: Sized,
Self::Ok: Into<U>,
fn ok_into<U>(self) -> OkInto<Self, U>ⓘNotable traits for OkInto<Fut, E>impl<Fut, E> Future for OkInto<Fut, E>where
MapOk<Fut, IntoFn<E>>: Future, type Output = <MapOk<Fut, IntoFn<E>> as Future>::Output;where
Self: Sized,
Self::Ok: Into<U>,
MapOk<Fut, IntoFn<E>>: Future, type Output = <MapOk<Fut, IntoFn<E>> as Future>::Output;
fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>ⓘNotable traits for AndThen<Fut1, Fut2, F>impl<Fut1, Fut2, F> Future for AndThen<Fut1, Fut2, F>where
TryFlatten<MapOk<Fut1, F>, Fut2>: Future, type Output = <TryFlatten<MapOk<Fut1, F>, Fut2> as Future>::Output;where
F: FnOnce(Self::Ok) -> Fut,
Fut: TryFuture<Error = Self::Error>,
Self: Sized,
fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>ⓘNotable traits for AndThen<Fut1, Fut2, F>impl<Fut1, Fut2, F> Future for AndThen<Fut1, Fut2, F>where
TryFlatten<MapOk<Fut1, F>, Fut2>: Future, type Output = <TryFlatten<MapOk<Fut1, F>, Fut2> as Future>::Output;where
F: FnOnce(Self::Ok) -> Fut,
Fut: TryFuture<Error = Self::Error>,
Self: Sized,
TryFlatten<MapOk<Fut1, F>, Fut2>: Future, type Output = <TryFlatten<MapOk<Fut1, F>, Fut2> as Future>::Output;
fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>ⓘNotable traits for OrElse<Fut1, Fut2, F>impl<Fut1, Fut2, F> Future for OrElse<Fut1, Fut2, F>where
TryFlattenErr<MapErr<Fut1, F>, Fut2>: Future, type Output = <TryFlattenErr<MapErr<Fut1, F>, Fut2> as Future>::Output;where
F: FnOnce(Self::Error) -> Fut,
Fut: TryFuture<Ok = Self::Ok>,
Self: Sized,
fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>ⓘNotable traits for OrElse<Fut1, Fut2, F>impl<Fut1, Fut2, F> Future for OrElse<Fut1, Fut2, F>where
TryFlattenErr<MapErr<Fut1, F>, Fut2>: Future, type Output = <TryFlattenErr<MapErr<Fut1, F>, Fut2> as Future>::Output;where
F: FnOnce(Self::Error) -> Fut,
Fut: TryFuture<Ok = Self::Ok>,
Self: Sized,
TryFlattenErr<MapErr<Fut1, F>, Fut2>: Future, type Output = <TryFlattenErr<MapErr<Fut1, F>, Fut2> as Future>::Output;
fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>ⓘNotable traits for InspectOk<Fut, F>impl<Fut, F> Future for InspectOk<Fut, F>where
Inspect<IntoFuture<Fut>, InspectOkFn<F>>: Future, type Output = <Inspect<IntoFuture<Fut>, InspectOkFn<F>> as Future>::Output;where
F: FnOnce(&Self::Ok),
Self: Sized,
fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>ⓘNotable traits for InspectOk<Fut, F>impl<Fut, F> Future for InspectOk<Fut, F>where
Inspect<IntoFuture<Fut>, InspectOkFn<F>>: Future, type Output = <Inspect<IntoFuture<Fut>, InspectOkFn<F>> as Future>::Output;where
F: FnOnce(&Self::Ok),
Self: Sized,
Inspect<IntoFuture<Fut>, InspectOkFn<F>>: Future, type Output = <Inspect<IntoFuture<Fut>, InspectOkFn<F>> as Future>::Output;
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),
Self: Sized,
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),
Self: Sized,
Inspect<IntoFuture<Fut>, InspectErrFn<F>>: Future, type Output = <Inspect<IntoFuture<Fut>, InspectErrFn<F>> as Future>::Output;
fn try_flatten(self) -> TryFlatten<Self, Self::Ok>ⓘNotable traits for TryFlatten<Fut1, Fut2>impl<Fut1, Fut2> Future for TryFlatten<Fut1, Fut2>where
TryFlatten<Fut1, Fut2>: Future, type Output = <TryFlatten<Fut1, Fut2> as Future>::Output;where
Self::Ok: TryFuture<Error = Self::Error>,
Self: Sized,
fn try_flatten(self) -> TryFlatten<Self, Self::Ok>ⓘNotable traits for TryFlatten<Fut1, Fut2>impl<Fut1, Fut2> Future for TryFlatten<Fut1, Fut2>where
TryFlatten<Fut1, Fut2>: Future, type Output = <TryFlatten<Fut1, Fut2> as Future>::Output;where
Self::Ok: TryFuture<Error = Self::Error>,
Self: Sized,
TryFlatten<Fut1, Fut2>: Future, type Output = <TryFlatten<Fut1, Fut2> as Future>::Output;
fn try_flatten_stream(self) -> TryFlattenStream<Self>where
Self::Ok: TryStream<Error = Self::Error>,
Self: Sized,
fn try_flatten_stream(self) -> TryFlattenStream<Self>where
Self::Ok: TryStream<Error = Self::Error>,
Self: Sized,
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
Self: Sized,
F: FnOnce(Self::Error) -> Self::Ok,
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
Self: Sized,
F: FnOnce(Self::Error) -> Self::Ok,
Map<IntoFuture<Fut>, UnwrapOrElseFn<F>>: Future, type Output = <Map<IntoFuture<Fut>, UnwrapOrElseFn<F>> as Future>::Output;
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>;where
Self: Sized,
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>;where
Self: Sized,
Fut: TryFuture, type Output = Result<<Fut as TryFuture>::Ok, <Fut as TryFuture>::Error>;
impl<S, T, E> TryStream for Swhere
S: Stream<Item = Result<T, E>> + ?Sized,
impl<S, T, E> TryStream for Swhere
S: Stream<Item = Result<T, E>> + ?Sized,
impl<S> TryStreamExt for Swhere
S: TryStream + ?Sized,
impl<S> TryStreamExt for Swhere
S: TryStream + ?Sized,
fn err_into<E>(self) -> ErrInto<Self, E>where
Self: Sized,
Self::Error: Into<E>,
fn err_into<E>(self) -> ErrInto<Self, E>where
Self: Sized,
Self::Error: Into<E>,
fn map_ok<T, F>(self, f: F) -> MapOk<Self, F>where
Self: Sized,
F: FnMut(Self::Ok) -> T,
fn map_ok<T, F>(self, f: F) -> MapOk<Self, F>where
Self: Sized,
F: FnMut(Self::Ok) -> T,
fn map_err<E, F>(self, f: F) -> MapErr<Self, F>where
Self: Sized,
F: FnMut(Self::Error) -> E,
fn map_err<E, F>(self, f: F) -> MapErr<Self, F>where
Self: Sized,
F: FnMut(Self::Error) -> E,
fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>where
F: FnMut(Self::Ok) -> Fut,
Fut: TryFuture<Error = Self::Error>,
Self: Sized,
fn and_then<Fut, F>(self, f: F) -> AndThen<Self, Fut, F>where
F: FnMut(Self::Ok) -> Fut,
Fut: TryFuture<Error = Self::Error>,
Self: Sized,
f. Read morefn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>where
F: FnMut(Self::Error) -> Fut,
Fut: TryFuture<Ok = Self::Ok>,
Self: Sized,
fn or_else<Fut, F>(self, f: F) -> OrElse<Self, Fut, F>where
F: FnMut(Self::Error) -> Fut,
Fut: TryFuture<Ok = Self::Ok>,
Self: Sized,
f. Read morefn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>where
F: FnMut(&Self::Ok),
Self: Sized,
fn inspect_ok<F>(self, f: F) -> InspectOk<Self, F>where
F: FnMut(&Self::Ok),
Self: Sized,
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F>where
F: FnMut(&Self::Error),
Self: Sized,
fn inspect_err<F>(self, f: F) -> InspectErr<Self, F>where
F: FnMut(&Self::Error),
Self: Sized,
fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
fn into_stream(self) -> IntoStream<Self>where
Self: Sized,
fn try_next(&mut self) -> TryNext<'_, Self>ⓘNotable traits for TryNext<'_, St>impl<St> Future for TryNext<'_, St>where
St: TryStream + Unpin + ?Sized, type Output = Result<Option<<St as TryStream>::Ok>, <St as TryStream>::Error>;where
Self: Unpin,
fn try_next(&mut self) -> TryNext<'_, Self>ⓘNotable traits for TryNext<'_, St>impl<St> Future for TryNext<'_, St>where
St: TryStream + Unpin + ?Sized, type Output = Result<Option<<St as TryStream>::Ok>, <St as TryStream>::Error>;where
Self: Unpin,
St: TryStream + Unpin + ?Sized, type Output = Result<Option<<St as TryStream>::Ok>, <St as TryStream>::Error>;
fn try_for_each<Fut, F>(self, f: F) -> TryForEach<Self, Fut, F>ⓘNotable traits for TryForEach<St, Fut, F>impl<St, Fut, F> Future for TryForEach<St, Fut, F>where
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = <St as TryStream>::Error>, type Output = Result<(), <St as TryStream>::Error>;where
F: FnMut(Self::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = Self::Error>,
Self: Sized,
fn try_for_each<Fut, F>(self, f: F) -> TryForEach<Self, Fut, F>ⓘNotable traits for TryForEach<St, Fut, F>impl<St, Fut, F> Future for TryForEach<St, Fut, F>where
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = <St as TryStream>::Error>, type Output = Result<(), <St as TryStream>::Error>;where
F: FnMut(Self::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = Self::Error>,
Self: Sized,
St: TryStream,
F: FnMut(<St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = (), Error = <St as TryStream>::Error>, type Output = Result<(), <St as TryStream>::Error>;
fn try_skip_while<Fut, F>(self, f: F) -> TrySkipWhile<Self, Fut, F>where
F: FnMut(&Self::Ok) -> Fut,
Fut: TryFuture<Ok = bool, Error = Self::Error>,
Self: Sized,
fn try_skip_while<Fut, F>(self, f: F) -> TrySkipWhile<Self, Fut, F>where
F: FnMut(&Self::Ok) -> Fut,
Fut: TryFuture<Ok = bool, Error = Self::Error>,
Self: Sized,
true. Read morefn try_take_while<Fut, F>(self, f: F) -> TryTakeWhile<Self, Fut, F>where
F: FnMut(&Self::Ok) -> Fut,
Fut: TryFuture<Ok = bool, Error = Self::Error>,
Self: Sized,
fn try_take_while<Fut, F>(self, f: F) -> TryTakeWhile<Self, Fut, F>where
F: FnMut(&Self::Ok) -> Fut,
Fut: TryFuture<Ok = bool, Error = Self::Error>,
Self: Sized,
true. Read morefn try_collect<C>(self) -> TryCollect<Self, C>ⓘNotable traits for TryCollect<St, C>impl<St, C> Future for TryCollect<St, C>where
St: TryStream,
C: Default + Extend<<St as TryStream>::Ok>, type Output = Result<C, <St as TryStream>::Error>;where
C: Default + Extend<Self::Ok>,
Self: Sized,
fn try_collect<C>(self) -> TryCollect<Self, C>ⓘNotable traits for TryCollect<St, C>impl<St, C> Future for TryCollect<St, C>where
St: TryStream,
C: Default + Extend<<St as TryStream>::Ok>, type Output = Result<C, <St as TryStream>::Error>;where
C: Default + Extend<Self::Ok>,
Self: Sized,
St: TryStream,
C: Default + Extend<<St as TryStream>::Ok>, type Output = Result<C, <St as TryStream>::Error>;
fn try_filter<Fut, F>(self, f: F) -> TryFilter<Self, Fut, F>where
Fut: Future<Output = bool>,
F: FnMut(&Self::Ok) -> Fut,
Self: Sized,
fn try_filter<Fut, F>(self, f: F) -> TryFilter<Self, Fut, F>where
Fut: Future<Output = bool>,
F: FnMut(&Self::Ok) -> Fut,
Self: Sized,
fn try_filter_map<Fut, F, T>(self, f: F) -> TryFilterMap<Self, Fut, F>where
Fut: TryFuture<Ok = Option<T>, Error = Self::Error>,
F: FnMut(Self::Ok) -> Fut,
Self: Sized,
fn try_filter_map<Fut, F, T>(self, f: F) -> TryFilterMap<Self, Fut, F>where
Fut: TryFuture<Ok = Option<T>, Error = Self::Error>,
F: FnMut(Self::Ok) -> Fut,
Self: Sized,
fn try_flatten(self) -> TryFlatten<Self>where
Self::Ok: TryStream,
<Self::Ok as TryStream>::Error: From<Self::Error>,
Self: Sized,
fn try_flatten(self) -> TryFlatten<Self>where
Self::Ok: TryStream,
<Self::Ok as TryStream>::Error: From<Self::Error>,
Self: Sized,
fn try_fold<T, Fut, F>(self, init: T, f: F) -> TryFold<Self, Fut, T, F>ⓘNotable traits for TryFold<St, Fut, T, F>impl<St, Fut, T, F> Future for TryFold<St, Fut, T, F>where
St: TryStream,
F: FnMut(T, <St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = <St as TryStream>::Error>, type Output = Result<T, <St as TryStream>::Error>;where
F: FnMut(T, Self::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = Self::Error>,
Self: Sized,
fn try_fold<T, Fut, F>(self, init: T, f: F) -> TryFold<Self, Fut, T, F>ⓘNotable traits for TryFold<St, Fut, T, F>impl<St, Fut, T, F> Future for TryFold<St, Fut, T, F>where
St: TryStream,
F: FnMut(T, <St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = <St as TryStream>::Error>, type Output = Result<T, <St as TryStream>::Error>;where
F: FnMut(T, Self::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = Self::Error>,
Self: Sized,
St: TryStream,
F: FnMut(T, <St as TryStream>::Ok) -> Fut,
Fut: TryFuture<Ok = T, Error = <St as TryStream>::Error>, type Output = Result<T, <St as TryStream>::Error>;
fn try_concat(self) -> TryConcat<Self>ⓘNotable traits for TryConcat<St>impl<St> Future for TryConcat<St>where
St: TryStream,
<St as TryStream>::Ok: Extend<<<St as TryStream>::Ok as IntoIterator>::Item> + IntoIterator + Default, type Output = Result<<St as TryStream>::Ok, <St as TryStream>::Error>;where
Self: Sized,
Self::Ok: Extend<<Self::Ok as IntoIterator>::Item> + IntoIterator + Default,
fn try_concat(self) -> TryConcat<Self>ⓘNotable traits for TryConcat<St>impl<St> Future for TryConcat<St>where
St: TryStream,
<St as TryStream>::Ok: Extend<<<St as TryStream>::Ok as IntoIterator>::Item> + IntoIterator + Default, type Output = Result<<St as TryStream>::Ok, <St as TryStream>::Error>;where
Self: Sized,
Self::Ok: Extend<<Self::Ok as IntoIterator>::Item> + IntoIterator + Default,
St: TryStream,
<St as TryStream>::Ok: Extend<<<St as TryStream>::Ok as IntoIterator>::Item> + IntoIterator + Default, type Output = Result<<St as TryStream>::Ok, <St as TryStream>::Error>;
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
impl<V, T> VZip<V> for Twhere
V: MultiLane<T>,
fn vzip(self) -> V
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T>where
T: Future, type Output = <T as Future>::Output;where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T>where
T: Future, type Output = <T as Future>::Output;where
S: Into<Dispatch>,
T: Future, type Output = <T as Future>::Output;
sourcefn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T>where
T: Future, type Output = <T as Future>::Output;
fn with_current_subscriber(self) -> WithDispatch<Self>ⓘNotable traits for WithDispatch<T>impl<T> Future for WithDispatch<T>where
T: Future, type Output = <T as Future>::Output;
T: Future, type Output = <T as Future>::Output;