Struct WithRequestCallback

Source
pub struct WithRequestCallback<S: Stack + ?Sized, Prev: Builder<S>, F>
where F: FnMut(&mut S::RequestMessage<'_>) -> Result<(), S::RequestUnionError>,
{ /* private fields */ }
Expand description

A request into which the user can populate a custom payload.

Implementations§

Source§

impl<S: Stack + ?Sized, Prev: Builder<S, Output = Result<(), ()>>, F1> WithRequestCallback<S, Prev, F1>
where F1: FnMut(&mut S::RequestMessage<'_>) -> Result<(), S::RequestUnionError>,

Source

pub fn processing_response_payload_through<O, F2>( self, f: F2, ) -> ProcessingResponse<S, Self, O, F2>
where F2: for<'a> FnOnce(&'a [u8]) -> O,

Provide the response payload to a user callback.

Trait Implementations§

Source§

impl<S: Stack + ?Sized, Prev: Builder<S>, F> Request<S> for WithRequestCallback<S, Prev, F>
where F: FnMut(&mut S::RequestMessage<'_>) -> Result<(), S::RequestUnionError>,

Source§

type Carry = <Prev as Request<S>>::Carry

Source§

type Output = <Prev as Request<S>>::Output

Source§

async fn build_request( &mut self, req: &mut S::RequestMessage<'_>, ) -> Result<Self::Carry, S::RequestUnionError>

Build the request message Read more
Source§

async fn process_response( &mut self, res: &S::ResponseMessage<'_>, carry: Self::Carry, ) -> Self::Output

Process the response message Read more

Auto Trait Implementations§

§

impl<S, Prev, F> Freeze for WithRequestCallback<S, Prev, F>
where Prev: Freeze, F: Freeze, S: ?Sized,

§

impl<S, Prev, F> RefUnwindSafe for WithRequestCallback<S, Prev, F>

§

impl<S, Prev, F> Send for WithRequestCallback<S, Prev, F>
where Prev: Send, F: Send, S: Send + ?Sized,

§

impl<S, Prev, F> Sync for WithRequestCallback<S, Prev, F>
where Prev: Sync, F: Sync, S: Sync + ?Sized,

§

impl<S, Prev, F> Unpin for WithRequestCallback<S, Prev, F>
where Prev: Unpin, F: Unpin, S: Unpin + ?Sized,

§

impl<S, Prev, F> UnwindSafe for WithRequestCallback<S, Prev, F>
where Prev: UnwindSafe, F: UnwindSafe, S: UnwindSafe + ?Sized,

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.