Struct timely::dataflow::operators::InputCapability
source · pub struct InputCapability<T: Timestamp> { /* private fields */ }
Expand description
An capability of an input port. Holding onto this capability will implicitly holds onto a capability for all the outputs ports this input is connected to, after the connection summaries have been applied.
This input capability supplies a retain_for_output(self)
method which consumes the input
capability and turns it into a Capability for a specific output port.
Implementations§
source§impl<T: Timestamp> InputCapability<T>
impl<T: Timestamp> InputCapability<T>
sourcepub fn delayed(&self, new_time: &T) -> Capability<T>
pub fn delayed(&self, new_time: &T) -> Capability<T>
Makes a new capability for a timestamp new_time
greater or equal to the timestamp of
the source capability (self
).
This method panics if self.time
is not less or equal to new_time
.
sourcepub fn delayed_for_output(
&self,
new_time: &T,
output_port: usize,
) -> Capability<T>
pub fn delayed_for_output( &self, new_time: &T, output_port: usize, ) -> Capability<T>
Delays capability for a specific output port.
sourcepub fn retain(self) -> Capability<T>
pub fn retain(self) -> Capability<T>
Transform to an owned capability.
This method produces an owned capability which must be dropped to release the capability. Users should take care that these capabilities are only stored for as long as they are required, as failing to drop them may result in livelock.
This method panics if the timestamp summary to output zero strictly advances the time.
sourcepub fn retain_for_output(self, output_port: usize) -> Capability<T>
pub fn retain_for_output(self, output_port: usize) -> Capability<T>
Transforms to an owned capability for a specific output port.
This method panics if the timestamp summary to output_port
strictly advances the time.