pub struct SinkedChain<DF: RecFamily, CurF: RecFamily, D, P, E, R> { /* private fields */ }Expand description
A fully specified chain, ready to build — or to stamp out one instance
per pipeline thread via SinkedChain::build_factory.
Implementations§
Source§impl<DF, CurF, D, P, E, R> SinkedChain<DF, CurF, D, P, E, R>where
DF: RecFamily,
CurF: RecFamily,
D: Deserializer<DF> + 'static,
P: Assemble<SinkHandoff<CurF, E, R>>,
P::Out: for<'buf> Collector<<DF as RecFamily>::Rec<'buf>> + StageLifecycle + Send + 'static,
E: RowEncoder<CurF> + Clone + 'static,
R: ShardRouter + Send + 'static,
impl<DF, CurF, D, P, E, R> SinkedChain<DF, CurF, D, P, E, R>where
DF: RecFamily,
CurF: RecFamily,
D: Deserializer<DF> + 'static,
P: Assemble<SinkHandoff<CurF, E, R>>,
P::Out: for<'buf> Collector<<DF as RecFamily>::Rec<'buf>> + StageLifecycle + Send + 'static,
E: RowEncoder<CurF> + Clone + 'static,
R: ShardRouter + Send + 'static,
Sourcepub fn build(self) -> Box<dyn RunnableChain>
pub fn build(self) -> Box<dyn RunnableChain>
Build one chain instance. Consumes the specification; the deserializer
and router need no Clone, but the encoder does — the terminal stage
mints one encoder per shard (columnar encoders hold per-block state
that cannot be shared), and every in-tree encoder is Clone.
Sourcepub fn build_factory(self) -> ChainFactory<DF, CurF, D, P, E, R>
pub fn build_factory(self) -> ChainFactory<DF, CurF, D, P, E, R>
Turn the specification into a factory producing one identical chain per pipeline thread.
Trait Implementations§
Source§impl<DF: Clone + RecFamily, CurF: Clone + RecFamily, D: Clone, P: Clone, E: Clone, R: Clone> Clone for SinkedChain<DF, CurF, D, P, E, R>
impl<DF: Clone + RecFamily, CurF: Clone + RecFamily, D: Clone, P: Clone, E: Clone, R: Clone> Clone for SinkedChain<DF, CurF, D, P, E, R>
Source§fn clone(&self) -> SinkedChain<DF, CurF, D, P, E, R>
fn clone(&self) -> SinkedChain<DF, CurF, D, P, E, R>
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl<DF, CurF, D, P, E, R> Freeze for SinkedChain<DF, CurF, D, P, E, R>
impl<DF, CurF, D, P, E, R> !RefUnwindSafe for SinkedChain<DF, CurF, D, P, E, R>
impl<DF, CurF, D, P, E, R> Send for SinkedChain<DF, CurF, D, P, E, R>
impl<DF, CurF, D, P, E, R> Sync for SinkedChain<DF, CurF, D, P, E, R>
impl<DF, CurF, D, P, E, R> Unpin for SinkedChain<DF, CurF, D, P, E, R>
impl<DF, CurF, D, P, E, R> UnsafeUnpin for SinkedChain<DF, CurF, D, P, E, R>
impl<DF, CurF, D, P, E, R> !UnwindSafe for SinkedChain<DF, CurF, D, P, E, R>
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