Skip to main content

PhysicalTaskVisitor

Trait PhysicalTaskVisitor 

Source
pub trait PhysicalTaskVisitor {
    type Output;
    type Error;

Show 14 methods // Required methods fn vector(&mut self, op: &VectorOp) -> Result<Self::Output, Self::Error>; fn graph(&mut self, op: &GraphOp) -> Result<Self::Output, Self::Error>; fn document(&mut self, op: &DocumentOp) -> Result<Self::Output, Self::Error>; fn kv(&mut self, op: &KvOp) -> Result<Self::Output, Self::Error>; fn text(&mut self, op: &TextOp) -> Result<Self::Output, Self::Error>; fn columnar(&mut self, op: &ColumnarOp) -> Result<Self::Output, Self::Error>; fn timeseries( &mut self, op: &TimeseriesOp, ) -> Result<Self::Output, Self::Error>; fn spatial(&mut self, op: &SpatialOp) -> Result<Self::Output, Self::Error>; fn crdt(&mut self, op: &CrdtOp) -> Result<Self::Output, Self::Error>; fn query(&mut self, op: &QueryOp) -> Result<Self::Output, Self::Error>; fn meta(&mut self, op: &MetaOp) -> Result<Self::Output, Self::Error>; fn array(&mut self, op: &ArrayOp) -> Result<Self::Output, Self::Error>; fn cluster_array( &mut self, op: &ClusterArrayOp, ) -> Result<Self::Output, Self::Error>; fn cluster_event( &mut self, op: &ClusterEventOp, ) -> Result<Self::Output, Self::Error>;
}
Expand description

Per-deployment executor for PhysicalPlan.

Implementations decide their own Output and Error. Origin’s Data Plane handlers may return a row stream; Lite’s executor may return a boxed future to a QueryResult. The trait stays sync — async backends box their futures and resolve at the call site, mirroring the pattern used by LiteVisitor for PlanVisitor.

Required Associated Types§

Required Methods§

Source

fn vector(&mut self, op: &VectorOp) -> Result<Self::Output, Self::Error>

Source

fn graph(&mut self, op: &GraphOp) -> Result<Self::Output, Self::Error>

Source

fn document(&mut self, op: &DocumentOp) -> Result<Self::Output, Self::Error>

Source

fn kv(&mut self, op: &KvOp) -> Result<Self::Output, Self::Error>

Source

fn text(&mut self, op: &TextOp) -> Result<Self::Output, Self::Error>

Source

fn columnar(&mut self, op: &ColumnarOp) -> Result<Self::Output, Self::Error>

Source

fn timeseries(&mut self, op: &TimeseriesOp) -> Result<Self::Output, Self::Error>

Source

fn spatial(&mut self, op: &SpatialOp) -> Result<Self::Output, Self::Error>

Source

fn crdt(&mut self, op: &CrdtOp) -> Result<Self::Output, Self::Error>

Source

fn query(&mut self, op: &QueryOp) -> Result<Self::Output, Self::Error>

Source

fn meta(&mut self, op: &MetaOp) -> Result<Self::Output, Self::Error>

Source

fn array(&mut self, op: &ArrayOp) -> Result<Self::Output, Self::Error>

Source

fn cluster_array( &mut self, op: &ClusterArrayOp, ) -> Result<Self::Output, Self::Error>

Source

fn cluster_event( &mut self, op: &ClusterEventOp, ) -> Result<Self::Output, Self::Error>

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§