PipelineExecutor

Trait PipelineExecutor 

Source
pub trait PipelineExecutor<I, O> {
    // Required methods
    fn execute(&self, pipeline: &Pipeline<I, O>, input: I) -> Result<O>;
    fn name(&self) -> &str;
}
Expand description

Trait for pipeline executors

Required Methods§

Source

fn execute(&self, pipeline: &Pipeline<I, O>, input: I) -> Result<O>

Execute the pipeline with the given input

Source

fn name(&self) -> &str

Get executor name

Implementors§

Source§

impl<E, I, O> PipelineExecutor<I, O> for MonitoringExecutor<E>
where E: PipelineExecutor<I, O>, I: 'static + Send + Sync, O: 'static + Send + Sync,

Source§

impl<E, I, O> PipelineExecutor<I, O> for RetryExecutor<E>
where E: PipelineExecutor<I, O>, I: 'static + Send + Sync + Clone, O: 'static + Send + Sync,

Source§

impl<I, O> PipelineExecutor<Vec<I>, Vec<O>> for BackpressureStreamingExecutor
where I: 'static + Send + Sync + Clone, O: 'static + Send + Sync,

Source§

impl<I, O> PipelineExecutor<Vec<I>, Vec<O>> for DistributedExecutor
where I: 'static + Send + Sync + Clone, O: 'static + Send + Sync,

Source§

impl<I, O> PipelineExecutor<Vec<I>, Vec<O>> for StreamingExecutor
where I: 'static + Send + Sync + Clone, O: 'static + Send + Sync,

Source§

impl<I, O> PipelineExecutor<I, O> for CachedExecutor
where I: 'static + Send + Sync + Debug, O: 'static + Send + Sync + Serialize + DeserializeOwned,

Source§

impl<I, O> PipelineExecutor<I, O> for CheckpointedExecutor
where I: 'static + Send + Sync + Serialize + DeserializeOwned, O: 'static + Send + Sync + Serialize + DeserializeOwned,

Source§

impl<I, O> PipelineExecutor<I, O> for EventDrivenExecutor
where I: 'static + Send + Sync, O: 'static + Send + Sync,

Source§

impl<I, O> PipelineExecutor<I, O> for ParallelStageExecutor
where I: 'static + Send + Sync, O: 'static + Send + Sync,

Source§

impl<I, O> PipelineExecutor<I, O> for SequentialExecutor
where I: 'static + Send + Sync, O: 'static + Send + Sync,