pub trait Operator: Send + Sync {
// Required method
fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
input: Vec<RecordBatch>,
ctx: &'life1 OpContext,
) -> Pin<Box<dyn Future<Output = HirnResult<Vec<RecordBatch>>> + Send + 'async_trait>>
where Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait;
}Expand description
A composable query-plan stage that transforms RecordBatch streams.
Required Methods§
Sourcefn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
input: Vec<RecordBatch>,
ctx: &'life1 OpContext,
) -> Pin<Box<dyn Future<Output = HirnResult<Vec<RecordBatch>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn execute<'life0, 'life1, 'async_trait>(
&'life0 self,
input: Vec<RecordBatch>,
ctx: &'life1 OpContext,
) -> Pin<Box<dyn Future<Output = HirnResult<Vec<RecordBatch>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Execute this operator.
input— batches from the previous stage (empty for source operators).ctx— shared execution context (store, graph, principal).
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".