pub struct ExprMappedResult { /* private fields */ }Expand description
Expression-based mapped result with pre-compiled projections
This struct pre-compiles all expressions during construction, providing efficient per-row evaluation through the Expression VM.
Implementations§
Source§impl ExprMappedResult
impl ExprMappedResult
Sourcepub fn new(
inner: Box<dyn QueryResult>,
expressions: Vec<Expression>,
output_columns: Vec<String>,
) -> Result<Self>
pub fn new( inner: Box<dyn QueryResult>, expressions: Vec<Expression>, output_columns: Vec<String>, ) -> Result<Self>
Create a new expression-mapped result
§Arguments
inner- The source result to projectexpressions- The projection expressionsoutput_columns- Names for the output columns
Returns an error if any expression cannot be compiled.
pub fn with_context( inner: Box<dyn QueryResult>, expressions: Vec<Expression>, output_columns: Vec<String>, ctx: &ExecutionContext, ) -> Result<Self>
Sourcepub fn with_defaults(
inner: Box<dyn QueryResult>,
expressions: Vec<Expression>,
output_columns: Vec<String>,
) -> Result<Self>
pub fn with_defaults( inner: Box<dyn QueryResult>, expressions: Vec<Expression>, output_columns: Vec<String>, ) -> Result<Self>
Create with default function registry (static lifetime)
Trait Implementations§
Source§impl QueryResult for ExprMappedResult
impl QueryResult for ExprMappedResult
Source§fn scan(&self, dest: &mut [Value]) -> Result<()>
fn scan(&self, dest: &mut [Value]) -> Result<()>
Scans the current row into the provided values Read more
Source§fn rows_affected(&self) -> i64
fn rows_affected(&self) -> i64
Returns the number of rows affected by an INSERT, UPDATE, or DELETE
Source§fn last_insert_id(&self) -> i64
fn last_insert_id(&self) -> i64
Returns the last inserted ID for an INSERT operation
Source§fn last_error(&mut self) -> Option<Error>
fn last_error(&mut self) -> Option<Error>
Returns a pending error from the last
next() call, if any. Read moreSource§fn with_aliases(
self: Box<Self>,
aliases: FxHashMap<String, String>,
) -> Box<dyn QueryResult>
fn with_aliases( self: Box<Self>, aliases: FxHashMap<String, String>, ) -> Box<dyn QueryResult>
Sets column aliases for this result Read more
Source§fn columns_arc(&self) -> Option<CompactArc<Vec<String>>>
fn columns_arc(&self) -> Option<CompactArc<Vec<String>>>
Returns column names as Arc for zero-copy sharing Read more
Source§fn try_into_arc_rows(&mut self) -> Option<CompactArc<Vec<Row>>>
fn try_into_arc_rows(&mut self) -> Option<CompactArc<Vec<Row>>>
Try to extract all rows as
CompactArc<Vec<Row>> for zero-copy joins Read moreSource§fn estimated_count(&self) -> Option<usize>
fn estimated_count(&self) -> Option<usize>
Returns an estimate of the total number of rows in the result. Read more
Source§fn supports_typed_batches(&self) -> bool
fn supports_typed_batches(&self) -> bool
Whether the result can yield decoded typed column batches without
constructing a row/value object for every result record. Read more
Source§fn typed_batch_fallback_reason(&self) -> Option<TypedBatchFallbackReason>
fn typed_batch_fallback_reason(&self) -> Option<TypedBatchFallbackReason>
If
supports_typed_batches() is false, return the best semantic reason. Read moreSource§fn next_typed_batch(&mut self) -> Result<Option<TypedColumnBatch>, Error>
fn next_typed_batch(&mut self) -> Result<Option<TypedColumnBatch>, Error>
Advance to the next typed column batch. Read more
Auto Trait Implementations§
impl !RefUnwindSafe for ExprMappedResult
impl !Sync for ExprMappedResult
impl !UnwindSafe for ExprMappedResult
impl Freeze for ExprMappedResult
impl Send for ExprMappedResult
impl Unpin for ExprMappedResult
impl UnsafeUnpin for ExprMappedResult
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