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§
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>
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".