pub struct SequentialFold<L, S1, S2, F1, F2, M>{ /* private fields */ }Expand description
Sequential fold — run one fold, then use its output to inform another.
§Type Compatibility Invariant
Both F1 and F2 must accept the same entry type L. The state types
S1 and S2 are independent. The context_mapper is the only bridge
between the two folds.
Implementations§
Source§impl<L, S1, S2, F1, F2, M> SequentialFold<L, S1, S2, F1, F2, M>
impl<L, S1, S2, F1, F2, M> SequentialFold<L, S1, S2, F1, F2, M>
Sourcepub fn execute<'a, I>(
&self,
entries: I,
context: &FoldContext,
) -> (FoldOutcome<S1>, FoldOutcome<S2>)
pub fn execute<'a, I>( &self, entries: I, context: &FoldContext, ) -> (FoldOutcome<S1>, FoldOutcome<S2>)
Execute the sequential fold.
Auto Trait Implementations§
impl<L, S1, S2, F1, F2, M> Freeze for SequentialFold<L, S1, S2, F1, F2, M>
impl<L, S1, S2, F1, F2, M> RefUnwindSafe for SequentialFold<L, S1, S2, F1, F2, M>where
F1: RefUnwindSafe,
F2: RefUnwindSafe,
M: RefUnwindSafe,
L: RefUnwindSafe,
S1: RefUnwindSafe,
S2: RefUnwindSafe,
impl<L, S1, S2, F1, F2, M> Send for SequentialFold<L, S1, S2, F1, F2, M>
impl<L, S1, S2, F1, F2, M> Sync for SequentialFold<L, S1, S2, F1, F2, M>
impl<L, S1, S2, F1, F2, M> Unpin for SequentialFold<L, S1, S2, F1, F2, M>
impl<L, S1, S2, F1, F2, M> UnsafeUnpin for SequentialFold<L, S1, S2, F1, F2, M>
impl<L, S1, S2, F1, F2, M> UnwindSafe for SequentialFold<L, S1, S2, F1, F2, M>
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