pub struct ApplyOperator { /* private fields */ }Expand description
Apply (lateral join) operator.
Evaluates inner once for each row of outer. The result schema is
outer_columns ++ inner_columns. If the inner plan produces zero rows
for a given outer row, that outer row is omitted (inner join semantics).
When param_state is set, outer row values for the specified column indices
are injected into the shared ParameterState before each inner execution,
allowing the inner plan’s ParameterScanOperator to read them.
Implementations§
Source§impl ApplyOperator
impl ApplyOperator
Sourcepub fn new(outer: Box<dyn Operator>, inner: Box<dyn Operator>) -> Self
pub fn new(outer: Box<dyn Operator>, inner: Box<dyn Operator>) -> Self
Creates a new Apply operator (uncorrelated: no parameter injection).
Creates a correlated Apply operator that injects outer row values.
param_state is shared with a ParameterScanOperator in the inner plan.
param_col_indices specifies which outer columns to inject (by index).
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ApplyOperator
impl !RefUnwindSafe for ApplyOperator
impl Send for ApplyOperator
impl Sync for ApplyOperator
impl Unpin for ApplyOperator
impl UnsafeUnpin for ApplyOperator
impl !UnwindSafe for ApplyOperator
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more