Trait ferrite_session::internal::base::ContextLens [−][src]
pub trait ContextLens<C, A1, A2>: Send + 'static where
C: Context,
A1: Slot,
A2: Slot, { type Deleted: Context; type Target: Context; fn extract_source(
channels: C::Endpoints
) -> (A1::Endpoint, <Self::Deleted as Context>::Endpoints); fn insert_target(
receiver: A2::Endpoint,
channels: <Self::Deleted as Context>::Endpoints
) -> <Self::Target as Context>::Endpoints; }
Associated Types
Loading content...Required methods
fn extract_source(
channels: C::Endpoints
) -> (A1::Endpoint, <Self::Deleted as Context>::Endpoints)
[src]
channels: C::Endpoints
) -> (A1::Endpoint, <Self::Deleted as Context>::Endpoints)
fn insert_target(
receiver: A2::Endpoint,
channels: <Self::Deleted as Context>::Endpoints
) -> <Self::Target as Context>::Endpoints
[src]
receiver: A2::Endpoint,
channels: <Self::Deleted as Context>::Endpoints
) -> <Self::Target as Context>::Endpoints
Implementors
impl<B, A1, A2, C, N> ContextLens<(B, C), A1, A2> for S<N> where
B: Slot,
A1: Slot,
A2: Slot,
C: Context,
N: ContextLens<C, A1, A2>,
[src]
impl<B, A1, A2, C, N> ContextLens<(B, C), A1, A2> for S<N> where
B: Slot,
A1: Slot,
A2: Slot,
C: Context,
N: ContextLens<C, A1, A2>,
[src]type Deleted = (B, N::Deleted)
type Target = (B, N::Target)
fn extract_source(
(p, r1): (B::Endpoint, C::Endpoints)
) -> (A1::Endpoint, (B::Endpoint, <N::Deleted as Context>::Endpoints))
[src]
(p, r1): (B::Endpoint, C::Endpoints)
) -> (A1::Endpoint, (B::Endpoint, <N::Deleted as Context>::Endpoints))
fn insert_target(
q: A2::Endpoint,
(p, r1): (B::Endpoint, <N::Deleted as Context>::Endpoints)
) -> (B::Endpoint, <N::Target as Context>::Endpoints)
[src]
q: A2::Endpoint,
(p, r1): (B::Endpoint, <N::Deleted as Context>::Endpoints)
) -> (B::Endpoint, <N::Target as Context>::Endpoints)