Skip to main content

ChoiceSelector

Struct ChoiceSelector 

Source
pub struct ChoiceSelector<N> { /* private fields */ }

Implementations§

Source§

impl<N> ChoiceSelector<N>

Source

pub const fn new() -> ChoiceSelector<N>

Trait Implementations§

Source§

impl<A, R> Prism<(A, R)> for ChoiceSelector<Z>
where A: Send, R: RowCon,

Source§

type Elem = A

Source§

fn inject_elem<'a, F>(t: App<'a, F, Self::Elem>) -> AppSum<'a, (A, R), F>
where F: TyCon + 'a + Send, (A, R): 'a,

Source§

fn extract_elem<'a, F>( row: AppSum<'a, (A, R), F>, ) -> Option<App<'a, F, Self::Elem>>
where F: TyCon + 'a + Send, (A, R): 'a,

Source§

impl<N, A, R> Prism<(A, R)> for ChoiceSelector<S<N>>
where R: RowCon, A: Send + 'static, ChoiceSelector<N>: Prism<R>,

Source§

type Elem = <ChoiceSelector<N> as Prism<R>>::Elem

Source§

fn inject_elem<'a, F>(elem: App<'a, F, Self::Elem>) -> AppSum<'a, (A, R), F>
where F: TyCon + 'a + Send, (A, R): 'a,

Source§

fn extract_elem<'a, F>( row: AppSum<'a, (A, R), F>, ) -> Option<App<'a, F, Self::Elem>>
where F: TyCon + 'a + Send, (A, R): 'a,

Auto Trait Implementations§

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<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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<F, A, X> HasRecApp<F, A> for X
where X: HasRecApp<F, A>,

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<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

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

Source§

type Error = !

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

fn try_from(value: U) -> Result<T, !>

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