InternalChoice

Struct InternalChoice 

Source
pub struct InternalChoice<Row>(/* private fields */);

Trait Implementations§

Source§

impl<Row> Protocol for InternalChoice<Row>
where Row: ToRow + Send + 'static,

Source§

type ClientEndpoint = ReceiverOnce<AppSum<'static, <Row as ToRow>::Row, ClientEndpointF>>

Source§

type ProviderEndpoint = SenderOnce<AppSum<'static, <Row as ToRow>::Row, ClientEndpointF>>

Source§

fn create_endpoints() -> (Self::ProviderEndpoint, Self::ClientEndpoint)

Source§

fn forward( client_end: Self::ClientEndpoint, provider_end: Self::ProviderEndpoint, ) -> Pin<Box<dyn Future<Output = ()> + Send + 'static>>

Source§

impl<Row1, Row2, Row3, A> RecApp<A> for InternalChoice<Row1>
where A: Send + 'static, Row1: Send + 'static + ToRow<Row = Row2>, Row2: RowCon + RecApp<A, Applied = Row3>, Row3: RowCon,

Source§

impl<Row1, Row2, Row3, A> SharedRecApp<A> for InternalChoice<Row1>
where A: Send + 'static, Row1: ToRow<Row = Row2>, Row2: RowCon + SharedRecApp<A, Applied = Row3>, Row3: RowCon,

Source§

impl<Row1> SealedProtocol for InternalChoice<Row1>

Auto Trait Implementations§

§

impl<Row> Freeze for InternalChoice<Row>

§

impl<Row> RefUnwindSafe for InternalChoice<Row>
where Row: RefUnwindSafe,

§

impl<Row> Send for InternalChoice<Row>
where Row: Send,

§

impl<Row> Sync for InternalChoice<Row>
where Row: Sync,

§

impl<Row> Unpin for InternalChoice<Row>
where Row: Unpin,

§

impl<Row> UnwindSafe for InternalChoice<Row>
where Row: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, F, A> HasRecApp<F, A> for T
where F: 'static + RecApp<A, Applied = T>, A: 'static, T: Send + 'static,

Source§

fn get_applied(self: Box<T>) -> Box<T>

Source§

impl<'a, S, Row, F> HasSumApp<'a, Row, F> for S
where F: TyCon, S: Send, Row: SumApp<'a, F, Applied = S>,

Source§

fn get_sum(self: Box<S>) -> Box<<Row as SumApp<'a, F>>::Applied>
where F: TyCon, Row: SumApp<'a, F>,

Source§

fn get_sum_borrow(&self) -> &<Row as SumApp<'a, F>>::Applied
where F: TyCon, Row: SumApp<'a, F>,

Source§

impl<'a, T, F, A> HasTypeApp<'a, F, A> for T
where T: Send, F: TypeApp<'a, A, Applied = T>,

Source§

fn get_applied(self: Box<T>) -> Box<T>

Source§

fn get_applied_borrow(&self) -> &<F as TypeApp<'a, A>>::Applied
where F: TypeApp<'a, A>,

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<A> Slot for A
where A: Protocol,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<F, A, X> HasRecApp<F, A> for X
where X: HasRecApp<F, A>,

Source§

impl<A, X> RecApp<A> for X
where X: RecApp<A>,

Source§

impl<X, S> SharedRecApp<X> for S
where S: SharedRecApp<X>,