pub struct MaterializedOperator { /* private fields */ }Expand description
An operator that yields rows from a pre-materialized vector.
This is useful for:
- Converting existing
Vec<Row>results to the operator model - CTEs that have been pre-computed
- Subquery results
Implementations§
Source§impl MaterializedOperator
impl MaterializedOperator
Sourcepub fn new(rows: Vec<Row>, schema: Vec<ColumnInfo>) -> Self
pub fn new(rows: Vec<Row>, schema: Vec<ColumnInfo>) -> Self
Create an operator from a vector of rows.
Sourcepub fn with_ordering(self, ordering: OrderingProperty) -> Self
pub fn with_ordering(self, ordering: OrderingProperty) -> Self
Attach ordering already proven by the producing physical operator.
This method does not inspect rows. Callers must propagate a genuine physical certificate rather than infer one from current contents.
Sourcepub fn from_arc(arc_rows: CompactArc<Vec<Row>>, schema: Vec<ColumnInfo>) -> Self
pub fn from_arc(arc_rows: CompactArc<Vec<Row>>, schema: Vec<ColumnInfo>) -> Self
Create from a CompactArc<Vec<Row>>, unwrapping if sole owner or cloning if shared.
This is optimal for CTE results which may have multiple references.
Trait Implementations§
Source§impl Operator for MaterializedOperator
impl Operator for MaterializedOperator
Source§fn schema(&self) -> &[ColumnInfo]
fn schema(&self) -> &[ColumnInfo]
Get the schema (column information) for this operator’s output.
Source§fn estimated_rows(&self) -> Option<usize>
fn estimated_rows(&self) -> Option<usize>
Get an estimate of the number of rows this operator will produce. Read more
Source§fn ordering(&self) -> OrderingProperty
fn ordering(&self) -> OrderingProperty
Physical ordering guaranteed by this operator’s output. Read more
Auto Trait Implementations§
impl Freeze for MaterializedOperator
impl RefUnwindSafe for MaterializedOperator
impl Send for MaterializedOperator
impl Sync for MaterializedOperator
impl Unpin for MaterializedOperator
impl UnsafeUnpin for MaterializedOperator
impl UnwindSafe for MaterializedOperator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more