Skip to main content

Operator

Trait Operator 

Source
pub trait Operator: Send {
    // Required methods
    fn id(&self) -> FlowNodeId;
    fn capabilities(&self) -> &[OperatorCapability];
    fn apply(&self, txn: &mut FlowTransaction, change: Change) -> Result<Change>;

    // Provided methods
    fn tick(
        &self,
        _txn: &mut FlowTransaction,
        _tick: Tick,
    ) -> Result<Option<Change>> { ... }
    fn ticks(&self) -> Option<Duration> { ... }
}

Required Methods§

Source

fn id(&self) -> FlowNodeId

Source

fn capabilities(&self) -> &[OperatorCapability]

Source

fn apply(&self, txn: &mut FlowTransaction, change: Change) -> Result<Change>

Provided Methods§

Source

fn tick( &self, _txn: &mut FlowTransaction, _tick: Tick, ) -> Result<Option<Change>>

Source

fn ticks(&self) -> Option<Duration>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§