[−][src]Struct rr_mux::mapped::Mapped
Mapped wraps a connector type with a Mapper implementation
Methods
impl<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> where
ReqId: Eq + Hash + Debug + Clone + Send + 'static,
Target: Debug + Send + 'static,
BaseReq: Debug + Send + 'static,
BaseResp: Debug + Send + 'static,
MappedReq: Debug + Send + 'static,
MappedResp: Debug + Send + 'static,
E: Debug + Send + 'static,
Ctx: Clone + Send + 'static,
Conn: Connector<ReqId, Target, BaseReq, BaseResp, E, Ctx> + Send + 'static,
M: Mapper<Original = Muxed<BaseReq, BaseResp>, Mapped = Muxed<MappedReq, MappedResp>> + Clone + Send + 'static,
[src]
ReqId: Eq + Hash + Debug + Clone + Send + 'static,
Target: Debug + Send + 'static,
BaseReq: Debug + Send + 'static,
BaseResp: Debug + Send + 'static,
MappedReq: Debug + Send + 'static,
MappedResp: Debug + Send + 'static,
E: Debug + Send + 'static,
Ctx: Clone + Send + 'static,
Conn: Connector<ReqId, Target, BaseReq, BaseResp, E, Ctx> + Send + 'static,
M: Mapper<Original = Muxed<BaseReq, BaseResp>, Mapped = Muxed<MappedReq, MappedResp>> + Clone + Send + 'static,
pub fn new(
conn: Conn,
mapper: M
) -> Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M>
[src]
conn: Conn,
mapper: M
) -> Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M>
Trait Implementations
impl<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> Connector<ReqId, Target, MappedReq, MappedResp, E, Ctx> for Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> where
ReqId: Eq + Hash + Debug + Clone + Send + 'static,
Target: Debug + Send + 'static,
BaseReq: Debug + Send + 'static,
BaseResp: Debug + Send + 'static,
MappedReq: Debug + Send + 'static,
MappedResp: Debug + Send + 'static,
E: Debug + Send + 'static,
Ctx: Clone + Send + 'static,
Conn: Connector<ReqId, Target, BaseReq, BaseResp, E, Ctx> + Send + 'static,
M: Mapper<Original = Muxed<BaseReq, BaseResp>, Mapped = Muxed<MappedReq, MappedResp>> + Clone + Send + 'static,
[src]
ReqId: Eq + Hash + Debug + Clone + Send + 'static,
Target: Debug + Send + 'static,
BaseReq: Debug + Send + 'static,
BaseResp: Debug + Send + 'static,
MappedReq: Debug + Send + 'static,
MappedResp: Debug + Send + 'static,
E: Debug + Send + 'static,
Ctx: Clone + Send + 'static,
Conn: Connector<ReqId, Target, BaseReq, BaseResp, E, Ctx> + Send + 'static,
M: Mapper<Original = Muxed<BaseReq, BaseResp>, Mapped = Muxed<MappedReq, MappedResp>> + Clone + Send + 'static,
fn request<'life0, 'async_trait>(
&'life0 mut self,
ctx: Ctx,
req_id: ReqId,
target: Target,
req: MappedReq
) -> Pin<Box<dyn Future<Output = Result<MappedResp, E>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
ctx: Ctx,
req_id: ReqId,
target: Target,
req: MappedReq
) -> Pin<Box<dyn Future<Output = Result<MappedResp, E>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn respond<'life0, 'async_trait>(
&'life0 mut self,
ctx: Ctx,
req_id: ReqId,
target: Target,
resp: MappedResp
) -> Pin<Box<dyn Future<Output = Result<(), E>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
ctx: Ctx,
req_id: ReqId,
target: Target,
resp: MappedResp
) -> Pin<Box<dyn Future<Output = Result<(), E>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Auto Trait Implementations
impl<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> RefUnwindSafe for Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> where
BaseReq: RefUnwindSafe,
BaseResp: RefUnwindSafe,
Conn: RefUnwindSafe,
Ctx: RefUnwindSafe,
E: RefUnwindSafe,
M: RefUnwindSafe,
MappedReq: RefUnwindSafe,
MappedResp: RefUnwindSafe,
ReqId: RefUnwindSafe,
Target: RefUnwindSafe,
BaseReq: RefUnwindSafe,
BaseResp: RefUnwindSafe,
Conn: RefUnwindSafe,
Ctx: RefUnwindSafe,
E: RefUnwindSafe,
M: RefUnwindSafe,
MappedReq: RefUnwindSafe,
MappedResp: RefUnwindSafe,
ReqId: RefUnwindSafe,
Target: RefUnwindSafe,
impl<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> Send for Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> where
BaseReq: Send,
BaseResp: Send,
Conn: Send,
Ctx: Send,
E: Send,
M: Send,
MappedReq: Send,
MappedResp: Send,
ReqId: Send,
Target: Send,
BaseReq: Send,
BaseResp: Send,
Conn: Send,
Ctx: Send,
E: Send,
M: Send,
MappedReq: Send,
MappedResp: Send,
ReqId: Send,
Target: Send,
impl<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> Sync for Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> where
BaseReq: Sync,
BaseResp: Sync,
Conn: Sync,
Ctx: Sync,
E: Sync,
M: Sync,
MappedReq: Sync,
MappedResp: Sync,
ReqId: Sync,
Target: Sync,
BaseReq: Sync,
BaseResp: Sync,
Conn: Sync,
Ctx: Sync,
E: Sync,
M: Sync,
MappedReq: Sync,
MappedResp: Sync,
ReqId: Sync,
Target: Sync,
impl<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> Unpin for Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> where
BaseReq: Unpin,
BaseResp: Unpin,
Conn: Unpin,
Ctx: Unpin,
E: Unpin,
M: Unpin,
MappedReq: Unpin,
MappedResp: Unpin,
ReqId: Unpin,
Target: Unpin,
BaseReq: Unpin,
BaseResp: Unpin,
Conn: Unpin,
Ctx: Unpin,
E: Unpin,
M: Unpin,
MappedReq: Unpin,
MappedResp: Unpin,
ReqId: Unpin,
Target: Unpin,
impl<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> UnwindSafe for Mapped<BaseReq, BaseResp, MappedReq, MappedResp, ReqId, Target, E, Ctx, Conn, M> where
BaseReq: UnwindSafe,
BaseResp: UnwindSafe,
Conn: UnwindSafe,
Ctx: UnwindSafe,
E: UnwindSafe,
M: UnwindSafe,
MappedReq: UnwindSafe,
MappedResp: UnwindSafe,
ReqId: UnwindSafe,
Target: UnwindSafe,
BaseReq: UnwindSafe,
BaseResp: UnwindSafe,
Conn: UnwindSafe,
Ctx: UnwindSafe,
E: UnwindSafe,
M: UnwindSafe,
MappedReq: UnwindSafe,
MappedResp: UnwindSafe,
ReqId: UnwindSafe,
Target: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,