Struct WithPath

Source
pub struct WithPath<S: Stack + ?Sized, Prev: Builder<S>, P: AsUriPath> { /* private fields */ }
Expand description

A request that sets a request Uri-Path.

This is based on a Code, and built in Code::with_path.

Implementations§

Source§

impl<S: Stack + ?Sized, Prev: Builder<S, Output = Result<(), ()>>, P: AsUriPath> WithPath<S, Prev, P>

Source

pub fn with_request_callback<F>(self, f: F) -> WithRequestCallback<S, Self, F>
where F: FnMut(&mut S::RequestMessage<'_>) -> Result<(), S::RequestUnionError>,

Set the request payload in a user callback.

§Caveats

Note that while the user may do all sorts of writes to the request message, they better stick to writing to the payload (for other uses might lead to panics).

Also, it is not sure whether this can actualy be used in a way that satisfies all its constraints.

Source

pub fn with_request_payload_slice( self, payload: &[u8], ) -> WithRequestPayloadSlice<'_, S, Self>

Source

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

Provide the response payload to a user callback.

Trait Implementations§

Source§

impl<S: Stack + ?Sized, Prev: Builder<S>, P: AsUriPath> Request<S> for WithPath<S, Prev, P>

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: Prev::Carry, ) -> Self::Output

Process the response message Read more

Auto Trait Implementations§

§

impl<S, Prev, P> Freeze for WithPath<S, Prev, P>
where Prev: Freeze, P: Freeze, S: ?Sized,

§

impl<S, Prev, P> RefUnwindSafe for WithPath<S, Prev, P>

§

impl<S, Prev, P> Send for WithPath<S, Prev, P>
where Prev: Send, P: Send, S: Send + ?Sized,

§

impl<S, Prev, P> Sync for WithPath<S, Prev, P>
where Prev: Sync, P: Sync, S: Sync + ?Sized,

§

impl<S, Prev, P> Unpin for WithPath<S, Prev, P>
where Prev: Unpin, P: Unpin, S: Unpin + ?Sized,

§

impl<S, Prev, P> UnwindSafe for WithPath<S, Prev, P>
where Prev: UnwindSafe, P: 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.