pub trait CapabilityTrait<T: Timestamp> {
// Required methods
fn stamp(&self) -> Stamp<T>;
fn valid_for_output(
&self,
query_buffer: &Rc<RefCell<ChangeBatch<T>>>,
port: usize,
) -> bool;
}Expand description
An internal trait expressing the capability to send messages with given timestamps.
Required Methods§
Sourcefn stamp(&self) -> Stamp<T>
fn stamp(&self) -> Stamp<T>
The stamp of timestamps to attach to messages sent with this capability.
Messages may only result in downstream work at times greater or equal to some element of the stamp. An empty stamp makes no progress claims, and such messages may be delivered after downstream frontiers have advanced past all times in their contents.
Sourcefn valid_for_output(
&self,
query_buffer: &Rc<RefCell<ChangeBatch<T>>>,
port: usize,
) -> bool
fn valid_for_output( &self, query_buffer: &Rc<RefCell<ChangeBatch<T>>>, port: usize, ) -> bool
Validates that the capability is valid for a specific internal buffer and output port.
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".