struct NumRowsEvaluator {
n_rows: usize,
}Expand description
State for the row_number built-in window function.
Fields§
§n_rows: usizeTrait Implementations§
Source§impl Debug for NumRowsEvaluator
impl Debug for NumRowsEvaluator
Source§impl Default for NumRowsEvaluator
impl Default for NumRowsEvaluator
Source§fn default() -> NumRowsEvaluator
fn default() -> NumRowsEvaluator
Returns the “default value” for a type. Read more
Source§impl PartitionEvaluator for NumRowsEvaluator
impl PartitionEvaluator for NumRowsEvaluator
Source§fn is_causal(&self) -> bool
fn is_causal(&self) -> bool
Get whether evaluator needs future data for its result (if so returns
false) or notSource§fn evaluate_all(
&mut self,
_values: &[ArrayRef],
num_rows: usize,
) -> Result<ArrayRef>
fn evaluate_all( &mut self, _values: &[ArrayRef], num_rows: usize, ) -> Result<ArrayRef>
Evaluate a window function on an entire input partition. Read more
Source§fn evaluate(
&mut self,
_values: &[ArrayRef],
_range: &Range<usize>,
) -> Result<ScalarValue>
fn evaluate( &mut self, _values: &[ArrayRef], _range: &Range<usize>, ) -> Result<ScalarValue>
Evaluate window function on a range of rows in an input
partition.x Read more
Source§fn supports_bounded_execution(&self) -> bool
fn supports_bounded_execution(&self) -> bool
Can the window function be incrementally computed using
bounded memory? Read more
Source§fn memoize(
&mut self,
_state: &mut WindowAggState,
) -> Result<(), DataFusionError>
fn memoize( &mut self, _state: &mut WindowAggState, ) -> Result<(), DataFusionError>
When the window frame has a fixed beginning (e.g UNBOUNDED
PRECEDING), some functions such as FIRST_VALUE, LAST_VALUE and
NTH_VALUE do not need the (unbounded) input once they have
seen a certain amount of input. Read more
Source§fn get_range(
&self,
idx: usize,
_n_rows: usize,
) -> Result<Range<usize>, DataFusionError>
fn get_range( &self, idx: usize, _n_rows: usize, ) -> Result<Range<usize>, DataFusionError>
If
uses_window_frame flag is false. This method is used to
calculate required range for the window function during
stateful execution. Read moreSource§fn evaluate_all_with_rank(
&self,
_num_rows: usize,
_ranks_in_partition: &[Range<usize>],
) -> Result<Arc<dyn Array>, DataFusionError>
fn evaluate_all_with_rank( &self, _num_rows: usize, _ranks_in_partition: &[Range<usize>], ) -> Result<Arc<dyn Array>, DataFusionError>
PartitionEvaluator::evaluate_all_with_rank is called for window
functions that only need the rank of a row within its window
frame. Read moreSource§fn uses_window_frame(&self) -> bool
fn uses_window_frame(&self) -> bool
Does the window function use the values from the window frame,
if one is specified? Read more
Source§fn include_rank(&self) -> bool
fn include_rank(&self) -> bool
Can this function be evaluated with (only) rank Read more
Auto Trait Implementations§
impl Freeze for NumRowsEvaluator
impl RefUnwindSafe for NumRowsEvaluator
impl Send for NumRowsEvaluator
impl Sync for NumRowsEvaluator
impl Unpin for NumRowsEvaluator
impl UnwindSafe for NumRowsEvaluator
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
§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