Struct StreamMatcher

Source
pub struct StreamMatcher<'code> { /* private fields */ }
Available on crate feature stream only.
Expand description

A struct holding a reference with the &'code lifetime to a dyn FnMut, which is a type-erased vtable.

Implementations§

Source§

impl<'code> StreamMatcher<'code>

Source

pub fn new( handler: &'code mut (dyn FnMut(StreamMatch) -> MatchResult + 'code), ) -> Self

Create a matcher instance which wraps the provided dyn vtable reference.

Any variables closed over by a closure reference provided to handler will become available again after this object is dropped (which must occur within the span of the 'code lifetime parameter), so any state which is modified by a match callback can be examined once the stream is dropped!

Auto Trait Implementations§

§

impl<'code> Freeze for StreamMatcher<'code>

§

impl<'code> !RefUnwindSafe for StreamMatcher<'code>

§

impl<'code> !Send for StreamMatcher<'code>

§

impl<'code> !Sync for StreamMatcher<'code>

§

impl<'code> Unpin for StreamMatcher<'code>

§

impl<'code> !UnwindSafe for StreamMatcher<'code>

Blanket Implementations§

Source§

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

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

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

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

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

Source§

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

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

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

Source§

fn into(self) -> U

Calls U::from(self).

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

Source§

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

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

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

Source§

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

The type returned in the event of a conversion error.
Source§

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

Performs the conversion.