pub struct Transceiver<TyTx, TyRx, TrTx, TrRx, C: CodecFor<TyTx> + CodecFor<TyRx>> { /* private fields */ }Expand description
A typed, multidirectional endpoint pairing a send half and a receive half.
The two halves carry independent transport types: the full-duplex
consortium_ipc_transport_memory::SharedMemoryTransport
is split into a …Tx send half and a …Rx receive half, and each is the
transport of its respective Channel.
§Type parameters
TyTx/TyRx- the sent and received message typesTrTx- send-half transport (SendTransport)TrRx- receive-half transport (RecvTransport)C- codec
Implementations§
Source§impl<TyTx, TyRx, TrTx, TrRx, C: CodecFor<TyTx> + CodecFor<TyRx>> Transceiver<TyTx, TyRx, TrTx, TrRx, C>
impl<TyTx, TyRx, TrTx, TrRx, C: CodecFor<TyTx> + CodecFor<TyRx>> Transceiver<TyTx, TyRx, TrTx, TrRx, C>
Source§impl<TyTx, TyRx, TrTx, TrRx, C> Transceiver<TyTx, TyRx, TrTx, TrRx, C>
impl<TyTx, TyRx, TrTx, TrRx, C> Transceiver<TyTx, TyRx, TrTx, TrRx, C>
Source§impl<TyTx, TyRx, TrTx, TrRx, C> Transceiver<TyTx, TyRx, TrTx, TrRx, C>
impl<TyTx, TyRx, TrTx, TrRx, C> Transceiver<TyTx, TyRx, TrTx, TrRx, C>
Sourcepub async fn recv(
&mut self,
) -> Result<ReceivedMessage<'_, TyRx, C>, ChannelError<C, TrRx>>
pub async fn recv( &mut self, ) -> Result<ReceivedMessage<'_, TyRx, C>, ChannelError<C, TrRx>>
receive message
Auto Trait Implementations§
impl<TyTx, TyRx, TrTx, TrRx, C> !UnwindSafe for Transceiver<TyTx, TyRx, TrTx, TrRx, C>
impl<TyTx, TyRx, TrTx, TrRx, C> Freeze for Transceiver<TyTx, TyRx, TrTx, TrRx, C>
impl<TyTx, TyRx, TrTx, TrRx, C> RefUnwindSafe for Transceiver<TyTx, TyRx, TrTx, TrRx, C>where
TrTx: RefUnwindSafe,
TrRx: RefUnwindSafe,
TyTx: RefUnwindSafe,
C: RefUnwindSafe,
TyRx: RefUnwindSafe,
impl<TyTx, TyRx, TrTx, TrRx, C> Send for Transceiver<TyTx, TyRx, TrTx, TrRx, C>
impl<TyTx, TyRx, TrTx, TrRx, C> Sync for Transceiver<TyTx, TyRx, TrTx, TrRx, C>
impl<TyTx, TyRx, TrTx, TrRx, C> Unpin for Transceiver<TyTx, TyRx, TrTx, TrRx, C>
impl<TyTx, TyRx, TrTx, TrRx, C> UnsafeUnpin for Transceiver<TyTx, TyRx, TrTx, TrRx, C>where
TrTx: UnsafeUnpin,
TrRx: UnsafeUnpin,
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