Struct party_types::Channel[][src]

pub struct Channel<To, Tr: Transport> { /* fields omitted */ }

Implementations

impl<To, Tr: Transport> Channel<To, Tr>[src]

pub fn recv<T: Debug + 'static, Cont>(
    &mut self,
    protocol: Rx<To, T, Cont>
) -> Result<(T, Cont)>
[src]

pub fn send<T: Send + 'static, Cont>(
    &mut self,
    protocol: Tx<To, T, Cont>,
    value: T
) -> Result<Cont>
[src]

Trait Implementations

impl<To, Tr> Clone for Channel<To, Tr> where
    Tr: Transport,
    Tr::Rx: Clone,
    Tr::Tx: Clone
[src]

Auto Trait Implementations

impl<To, Tr> RefUnwindSafe for Channel<To, Tr> where
    To: RefUnwindSafe,
    Tr: RefUnwindSafe,
    <Tr as Transport>::Rx: RefUnwindSafe,
    <Tr as Transport>::Tx: RefUnwindSafe

impl<To, Tr> Send for Channel<To, Tr> where
    To: Send,
    Tr: Send,
    <Tr as Transport>::Rx: Send,
    <Tr as Transport>::Tx: Send

impl<To, Tr> Sync for Channel<To, Tr> where
    To: Sync,
    Tr: Sync,
    <Tr as Transport>::Rx: Sync,
    <Tr as Transport>::Tx: Sync

impl<To, Tr> Unpin for Channel<To, Tr> where
    To: Unpin,
    Tr: Unpin,
    <Tr as Transport>::Rx: Unpin,
    <Tr as Transport>::Tx: Unpin

impl<To, Tr> UnwindSafe for Channel<To, Tr> where
    To: UnwindSafe,
    Tr: UnwindSafe,
    <Tr as Transport>::Rx: UnwindSafe,
    <Tr as Transport>::Tx: UnwindSafe

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.