mz_timely_util::replay

Trait MzReplay

Source
pub trait MzReplay<T, C, A>: Sized{
    // Required method
    fn mz_replay<S: Scope<Timestamp = T>, CB, L>(
        self,
        scope: &mut S,
        name: &str,
        period: Duration,
        activator: A,
        logic: L,
    ) -> (StreamCore<S, CB::Container>, Rc<dyn Any>)
       where CB: ContainerBuilder,
             L: FnMut(Session<'_, T, CB, PushCounter<T, CB::Container, Tee<T, CB::Container>>>, &C) + 'static;
}
Expand description

Replay a capture stream into a scope with the same timestamp.

Required Methods§

Source

fn mz_replay<S: Scope<Timestamp = T>, CB, L>( self, scope: &mut S, name: &str, period: Duration, activator: A, logic: L, ) -> (StreamCore<S, CB::Container>, Rc<dyn Any>)
where CB: ContainerBuilder, L: FnMut(Session<'_, T, CB, PushCounter<T, CB::Container, Tee<T, CB::Container>>>, &C) + 'static,

Replays self into the provided scope, as a StreamCore<S, CB::Container> and provides a cancellation token. Uses the supplied container builder CB to form containers.

The period argument allows the specification of a re-activation period, where the operator will re-activate itself every so often.

  • scope: The Scope to replay into.
  • name: Human-readable debug name of the Timely operator.
  • period: Reschedule the operator once the period has elapsed. Provide Duration::MAX to disable periodic scheduling.
  • activator: An activator to trigger the operator.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<T, C, I, A> MzReplay<T, C, A> for I
where T: Timestamp, C: Container, I: IntoIterator, I::Item: EventIterator<T, C> + 'static, A: ActivatorTrait + 'static,