OperatorExt

Trait OperatorExt 

Source
pub trait OperatorExt<T: ArconType> {
    // Required method
    fn operator<OP: Operator<IN = T> + 'static>(
        self,
        builder: OperatorBuilder<OP>,
    ) -> Stream<OP::OUT>;
}
Expand description

Extension trait for creating an Operator

Required Methods§

Source

fn operator<OP: Operator<IN = T> + 'static>( self, builder: OperatorBuilder<OP>, ) -> Stream<OP::OUT>

Add an Operator to the dataflow graph

Example

use arcon::prelude::*;

let stream: Stream<u64> = (0..100u64)
    .to_stream(|conf| {
        conf.set_arcon_time(ArconTime::Process);
    })
    .operator(OperatorBuilder {
        operator: Arc::new(|| Map::new(|x| x + 10)),
        state: Arc::new(|_| EmptyState),
        conf: Default::default(),
    });

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§