pub struct Expanding<O: OrderState>(/* private fields */);Trait Implementations§
Source§impl ElementEmission for Expanding<Ordered>
impl ElementEmission for Expanding<Ordered>
type OutArity<C: Arity> = <C as Arity>::AfterOrderedExpansion
type Step<T> = Vec<T>
fn map_step<T, U>( step: Self::Step<T>, function: impl Fn(T) -> U, ) -> Self::Step<U>
fn apply<'a, C: Arity, X: 'a, Y: 'a>( container: C::Container<'a, X>, function: impl Fn(X) -> Self::Step<Y> + 'a, ) -> <Self::OutArity<C> as Arity>::Container<'a, Y>
fn default_estimate(_input: Estimate) -> Estimate
Source§impl ElementEmission for Expanding<Unordered>
impl ElementEmission for Expanding<Unordered>
type OutArity<C: Arity> = <C as Arity>::AfterUnorderedExpansion
type Step<T> = Vec<T>
fn map_step<T, U>( step: Self::Step<T>, function: impl Fn(T) -> U, ) -> Self::Step<U>
fn apply<'a, C: Arity, X: 'a, Y: 'a>( container: C::Container<'a, X>, function: impl Fn(X) -> Self::Step<Y> + 'a, ) -> <Self::OutArity<C> as Arity>::Container<'a, Y>
fn default_estimate(_input: Estimate) -> Estimate
Source§impl<P: IndexDomain, C: IndexDomain, V: ValueDomain, W: ValueDomain> ElementTransition<Indexed<ExpandedIndex<P, C>, W>, Expanding<Ordered>> for Indexed<P, V>
impl<P: IndexDomain, C: IndexDomain, V: ValueDomain, W: ValueDomain> ElementTransition<Indexed<ExpandedIndex<P, C>, W>, Expanding<Ordered>> for Indexed<P, V>
type Pipeline<'a> = Pipeline<'a, (<P as IndexDomain>::Index<'a>, <V as ValueDomain>::Value<'a>), Result<Vec<ExpandedChild<'a, C, W>>, Box<Failure>>, Expanding<Ordered>> where Self: 'a, Indexed<ExpandedIndex<P, C>, W>: 'a
fn apply<'a, A: Arity>( values: A::Container<'a, Self::Element<'a>>, pipeline: Self::Pipeline<'a>, ) -> <<Expanding<Ordered> as ElementEmission>::OutArity<A> as Arity>::Container<'a, <Indexed<ExpandedIndex<P, C>, W> as ElementShape>::Element<'a>>
Source§impl<P: IndexDomain, C: IndexDomain, V: ValueDomain, W: ValueDomain> ElementTransition<Indexed<ExpandedIndex<P, C>, W>, Expanding<Unordered>> for Indexed<P, V>
impl<P: IndexDomain, C: IndexDomain, V: ValueDomain, W: ValueDomain> ElementTransition<Indexed<ExpandedIndex<P, C>, W>, Expanding<Unordered>> for Indexed<P, V>
type Pipeline<'a> = Pipeline<'a, (<P as IndexDomain>::Index<'a>, <V as ValueDomain>::Value<'a>), Result<Vec<ExpandedChild<'a, C, W>>, Box<Failure>>, Expanding<Unordered>> where Self: 'a, Indexed<ExpandedIndex<P, C>, W>: 'a
fn apply<'a, A: Arity>( values: A::Container<'a, Self::Element<'a>>, pipeline: Self::Pipeline<'a>, ) -> <<Expanding<Unordered> as ElementEmission>::OutArity<A> as Arity>::Container<'a, <Indexed<ExpandedIndex<P, C>, W> as ElementShape>::Element<'a>>
Auto Trait Implementations§
impl<O> Freeze for Expanding<O>
impl<O> RefUnwindSafe for Expanding<O>where
O: RefUnwindSafe,
impl<O> Send for Expanding<O>where
O: Send,
impl<O> Sync for Expanding<O>where
O: Sync,
impl<O> Unpin for Expanding<O>where
O: Unpin,
impl<O> UnsafeUnpin for Expanding<O>
impl<O> UnwindSafe for Expanding<O>where
O: UnwindSafe,
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more