pub struct WindowShift { /* private fields */ }Expand description
window shift expression
Implementations§
Source§impl WindowShift
impl WindowShift
Trait Implementations§
Source§impl Debug for WindowShift
impl Debug for WindowShift
Source§impl Hash for WindowShift
impl Hash for WindowShift
Source§impl PartialEq for WindowShift
impl PartialEq for WindowShift
Source§impl WindowUDFImpl for WindowShift
impl WindowUDFImpl for WindowShift
Source§fn expressions(
&self,
expr_args: ExpressionArgs<'_>,
) -> Vec<Arc<dyn PhysicalExpr>>
fn expressions( &self, expr_args: ExpressionArgs<'_>, ) -> Vec<Arc<dyn PhysicalExpr>>
Handles the case where NULL expression is passed as an
argument to lead/lag. The type is refined depending
on the default value argument.
For more details see: https://github.com/apache/datafusion/issues/12717
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 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
Source§fn aliases(&self) -> &[String]
fn aliases(&self) -> &[String]
Returns any aliases (alternate names) for this function. Read more
Source§fn simplify(
&self,
) -> Option<Box<dyn Fn(WindowFunction, &dyn SimplifyInfo) -> Result<Expr, DataFusionError>>>
fn simplify( &self, ) -> Option<Box<dyn Fn(WindowFunction, &dyn SimplifyInfo) -> Result<Expr, DataFusionError>>>
Optionally apply per-UDWF simplification / rewrite rules. 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
impl Eq for WindowShift
impl StructuralPartialEq for WindowShift
Auto Trait Implementations§
impl Freeze for WindowShift
impl !RefUnwindSafe for WindowShift
impl Send for WindowShift
impl Sync for WindowShift
impl Unpin for WindowShift
impl !UnwindSafe for WindowShift
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<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§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> 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