pub struct ForkingHandler<'a, H1, H2> { /* private fields */ }
Trait Implementations§
Source§impl<'a, RD1, H1, RD2, H2> Handler for ForkingHandler<'a, H1, H2>
impl<'a, RD1, H1, RD2, H2> Handler for ForkingHandler<'a, H1, H2>
Source§type RequestData = ForkingRequestData<RD1, RD2>
type RequestData = ForkingRequestData<RD1, RD2>
Source§type ExtractRequestError = ForkingRequestData<<H1 as Handler>::ExtractRequestError, <H2 as Handler>::ExtractRequestError>
type ExtractRequestError = ForkingRequestData<<H1 as Handler>::ExtractRequestError, <H2 as Handler>::ExtractRequestError>
Error type for
extract_request_data()
. Read moreSource§type BuildResponseError<M: MinimalWritableMessage> = ForkingRequestData<<H1 as Handler>::BuildResponseError<M>, <H2 as Handler>::BuildResponseError<M>>
type BuildResponseError<M: MinimalWritableMessage> = ForkingRequestData<<H1 as Handler>::BuildResponseError<M>, <H2 as Handler>::BuildResponseError<M>>
Error type for writing response data. Read more
Source§fn extract_request_data<M: ReadableMessage>(
&mut self,
request: &M,
) -> Result<Self::RequestData, Self::ExtractRequestError>
fn extract_request_data<M: ReadableMessage>( &mut self, request: &M, ) -> Result<Self::RequestData, Self::ExtractRequestError>
Process an incoming request. Read more
Source§fn estimate_length(&mut self, request: &Self::RequestData) -> usize
fn estimate_length(&mut self, request: &Self::RequestData) -> usize
Estimate an upper bound for the number of bytes in the response Read more
Source§fn build_response<M: MutableWritableMessage>(
&mut self,
response: &mut M,
request: Self::RequestData,
) -> Result<(), Self::BuildResponseError<M>>
fn build_response<M: MutableWritableMessage>( &mut self, response: &mut M, request: Self::RequestData, ) -> Result<(), Self::BuildResponseError<M>>
Build a response for the request Read more
Source§impl<'a, RD1, H1, RD2, H2> Reporting for ForkingHandler<'a, H1, H2>
impl<'a, RD1, H1, RD2, H2> Reporting for ForkingHandler<'a, H1, H2>
type Record<'b> = ForkingRecord<PrefixedRecord<'b, <H1 as Reporting>::Record<'b>>, <H2 as Reporting>::Record<'b>> where Self: 'b
type Reporter<'b> = Chain<Map<<H2 as Reporting>::Reporter<'b>, fn(_: <H2 as Reporting>::Record<'b>) -> <ForkingHandler<'a, H1, H2> as Reporting>::Record<'b>>, Map<Zip<<H1 as Reporting>::Reporter<'b>, Repeat<&'b [&'b str]>>, fn(_: (<H1 as Reporting>::Record<'b>, &'b [&'b str])) -> <ForkingHandler<'a, H1, H2> as Reporting>::Record<'b>>> where Self: 'b
fn report(&self) -> Self::Reporter<'_>
Auto Trait Implementations§
impl<'a, H1, H2> Freeze for ForkingHandler<'a, H1, H2>
impl<'a, H1, H2> RefUnwindSafe for ForkingHandler<'a, H1, H2>where
H1: RefUnwindSafe,
H2: RefUnwindSafe,
impl<'a, H1, H2> Send for ForkingHandler<'a, H1, H2>
impl<'a, H1, H2> Sync for ForkingHandler<'a, H1, H2>
impl<'a, H1, H2> Unpin for ForkingHandler<'a, H1, H2>
impl<'a, H1, H2> UnwindSafe for ForkingHandler<'a, H1, H2>where
H1: UnwindSafe,
H2: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<'a, OldRD, OldH> HandlerBuilder<'a, OldRD> for OldHwhere
OldH: Handler<RequestData = OldRD>,
impl<'a, OldRD, OldH> HandlerBuilder<'a, OldRD> for OldHwhere
OldH: Handler<RequestData = OldRD>,
Source§fn at<H>(self, path: &'a [&'a str], handler: H) -> ForkingHandler<'a, H, Self>
fn at<H>(self, path: &'a [&'a str], handler: H) -> ForkingHandler<'a, H, Self>
Source§fn at_with_attributes<H>(
self,
path: &'a [&'a str],
attributes: &'a [Attribute],
handler: H,
) -> ForkingHandler<'a, ConstantSingleRecordReport<'a, H>, Self>
fn at_with_attributes<H>( self, path: &'a [&'a str], attributes: &'a [Attribute], handler: H, ) -> ForkingHandler<'a, ConstantSingleRecordReport<'a, H>, Self>
Divert requests arriving at
path
into the given handler
, and announce them with the
given attributes in .well-known/core. Read moreSource§impl<'a, OldRD, OldH> ReportingHandlerBuilder<'a, OldRD> for OldH
impl<'a, OldRD, OldH> ReportingHandlerBuilder<'a, OldRD> for OldH
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.