pub struct ScalarFunctionLambdaArg {
pub params: Vec<FieldRef>,
pub body: Arc<dyn PhysicalExpr>,
pub captures: Option<RecordBatch>,
}Expand description
A lambda argument to a ScalarFunction
Fields§
§params: Vec<FieldRef>The parameters defined in this lambda
For example, for array_transform([2], v -> -v),
this will be vec![Field::new("v", DataType::Int32, true)]
body: Arc<dyn PhysicalExpr>The body of the lambda
For example, for array_transform([2], v -> -v),
this will be the physical expression of -v
captures: Option<RecordBatch>A RecordBatch containing at least the captured columns inside this lambda body, if any Note that it may contain additional, non-specified columns, but that’s implementation detail
For example, for array_transform([2], v -> v + a + b),
this will be a RecordBatch with two columns, a and b
Trait Implementations§
Source§impl Clone for ScalarFunctionLambdaArg
impl Clone for ScalarFunctionLambdaArg
Source§fn clone(&self) -> ScalarFunctionLambdaArg
fn clone(&self) -> ScalarFunctionLambdaArg
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ScalarFunctionLambdaArg
impl !RefUnwindSafe for ScalarFunctionLambdaArg
impl Send for ScalarFunctionLambdaArg
impl Sync for ScalarFunctionLambdaArg
impl Unpin for ScalarFunctionLambdaArg
impl !UnwindSafe for ScalarFunctionLambdaArg
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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