pub struct PythonFunctionWindowUDF { /* private fields */ }Expand description
WindowUDFImpl for Python-defined window UDFs.
Holds the Python evaluator factory directly so the codec can
downcast and cloudpickle it across process boundaries. Replaces
the prior factory-erased MultiColumnWindowUDF; the old name is
kept as a type alias below for backward compatibility.
Implementations§
Trait Implementations§
Source§impl Debug for PythonFunctionWindowUDF
impl Debug for PythonFunctionWindowUDF
impl Eq for PythonFunctionWindowUDF
Source§impl Hash for PythonFunctionWindowUDF
impl Hash for PythonFunctionWindowUDF
Source§impl PartialEq for PythonFunctionWindowUDF
impl PartialEq for PythonFunctionWindowUDF
Source§impl WindowUDFImpl for PythonFunctionWindowUDF
impl WindowUDFImpl for PythonFunctionWindowUDF
Source§fn signature(&self) -> &Signature
fn signature(&self) -> &Signature
Returns the function’s
Signature for information about what input
types are accepted and the function’s Volatility.Source§fn partition_evaluator(
&self,
_partition_evaluator_args: PartitionEvaluatorArgs<'_>,
) -> Result<Box<dyn PartitionEvaluator>>
fn partition_evaluator( &self, _partition_evaluator_args: PartitionEvaluatorArgs<'_>, ) -> Result<Box<dyn PartitionEvaluator>>
Invoke the function, returning the
PartitionEvaluator instanceSource§fn aliases(&self) -> &[String]
fn aliases(&self) -> &[String]
Returns any aliases (alternate names) for this function. Read more
Source§fn expressions(
&self,
expr_args: ExpressionArgs<'_>,
) -> Vec<Arc<dyn PhysicalExpr>>
fn expressions( &self, expr_args: ExpressionArgs<'_>, ) -> Vec<Arc<dyn PhysicalExpr>>
Returns the expressions that are passed to the
PartitionEvaluator.Source§fn simplify(
&self,
) -> Option<Box<dyn Fn(WindowFunction, &SimplifyContext) -> Result<Expr, DataFusionError>>>
fn simplify( &self, ) -> Option<Box<dyn Fn(WindowFunction, &SimplifyContext) -> Result<Expr, DataFusionError>>>
Returns an optional hook for simplifying this user-defined window
function. Read more
Source§fn sort_options(&self) -> Option<SortOptions>
fn sort_options(&self) -> Option<SortOptions>
Allows the window UDF to define a custom result ordering. Read more
Source§fn coerce_types(
&self,
_arg_types: &[DataType],
) -> Result<Vec<DataType>, DataFusionError>
fn coerce_types( &self, _arg_types: &[DataType], ) -> Result<Vec<DataType>, DataFusionError>
Coerce arguments of a function call to types that the function can evaluate. Read more
Source§fn reverse_expr(&self) -> ReversedUDWF
fn reverse_expr(&self) -> ReversedUDWF
Allows customizing the behavior of the user-defined window
function when it is evaluated in reverse order.
Source§fn documentation(&self) -> Option<&Documentation>
fn documentation(&self) -> Option<&Documentation>
Returns the documentation for this Window UDF. Read more
Source§fn limit_effect(&self, _args: &[Arc<dyn PhysicalExpr>]) -> LimitEffect
fn limit_effect(&self, _args: &[Arc<dyn PhysicalExpr>]) -> LimitEffect
If not causal, returns the effect this function will have on the window
Auto Trait Implementations§
impl !RefUnwindSafe for PythonFunctionWindowUDF
impl !UnwindSafe for PythonFunctionWindowUDF
impl Freeze for PythonFunctionWindowUDF
impl Send for PythonFunctionWindowUDF
impl Sync for PythonFunctionWindowUDF
impl Unpin for PythonFunctionWindowUDF
impl UnsafeUnpin for PythonFunctionWindowUDF
Blanket Implementations§
Source§impl<Source> AccessAs for Source
impl<Source> AccessAs for Source
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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