Struct CatchUnwind

#[must_use = "streams do nothing unless polled"]
pub struct CatchUnwind<St> { /* private fields */ }

Stream for the catch_unwind method.

Implementations

impl<St: Stream + UnwindSafe> CatchUnwind<St>

fn get_ref(&self) -> &St

Acquires a reference to the underlying sink or stream that this combinator is pulling from.

fn get_mut(&mut self) -> &mut St

Acquires a mutable reference to the underlying sink or stream that this combinator is pulling from.

Note that care must be taken to avoid tampering with the state of the sink or stream which may otherwise confuse this combinator.

fn get_pin_mut(self: Pin<&mut Self>) -> Pin<&mut St>

Acquires a pinned mutable reference to the underlying sink or stream that this combinator is pulling from.

Note that care must be taken to avoid tampering with the state of the sink or stream which may otherwise confuse this combinator.

fn into_inner(self) -> St

Consumes this combinator, returning the underlying sink or stream.

Note that this may discard intermediate state of this combinator, so care should be taken to avoid losing resources when this is called.

Trait Implementations

impl<'__pin, St> Unpin for CatchUnwind<St> where PinnedFieldsOf<__Origin<'__pin, St>>: Unpin,

impl<St: Debug> Debug for CatchUnwind<St>

fn fmt(&self, f: &mut Formatter<'_>) -> Result

impl<St: FusedStream + UnwindSafe> FusedStream for CatchUnwind<St>

fn is_terminated(&self) -> bool

impl<St: Stream + UnwindSafe> Stream for CatchUnwind<St>

type Item = Result<<St as Stream>::Item, Box<dyn Any + Send>>;
fn poll_next(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Option<Self::Item>>
fn size_hint(&self) -> (usize, Option<usize>)

Auto Trait Implementations

impl<St> Freeze for CatchUnwind<St> where St: Freeze,

impl<St> RefUnwindSafe for CatchUnwind<St> where St: RefUnwindSafe,

impl<St> Send for CatchUnwind<St> where St: Send,

impl<St> Sync for CatchUnwind<St> where St: Sync,

impl<St> UnsafeUnpin for CatchUnwind<St> where St: UnsafeUnpin,

impl<St> UnwindSafe for CatchUnwind<St> where St: UnwindSafe,

Blanket Implementations

impl<S> TryStreamExt for CatchUnwind<St> where S: TryStream + ?Sized,

impl<S, T, E> TryStream for CatchUnwind<St> where S: Stream<Item = Result<T, E>> + ?Sized,

type Ok = T;
type Error = E;
fn try_poll_next(self: Pin<&mut S>, cx: &mut Context<'_>) -> Poll<Option<Result<<S as TryStream>::Ok, <S as TryStream>::Error>>>

impl<T> Any for CatchUnwind<St> where T: 'static + ?Sized,

fn type_id(&self) -> TypeId

impl<T> Borrow<T> for CatchUnwind<St> where T: ?Sized,

fn borrow(&self) -> &T

impl<T> BorrowMut<T> for CatchUnwind<St> where T: ?Sized,

fn borrow_mut(&mut self) -> &mut T

impl<T> From<T> for CatchUnwind<St>

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> StreamExt for CatchUnwind<St> where T: Stream + ?Sized,

impl<T, U> Into<U> for CatchUnwind<St> where U: From<T>,

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom<U> for CatchUnwind<St> where U: Into<T>,

type Error = never;
fn try_from(value: U) -> Result<T, never>

impl<T, U> TryInto<U> for CatchUnwind<St> where U: TryFrom<T>,

type Error = <U as TryFrom<T>>::Error;
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>