Struct datafusion_physical_expr::analysis::ExprBoundaries
source · pub struct ExprBoundaries {
pub column: Column,
pub interval: Interval,
pub distinct_count: Precision<usize>,
}
Expand description
Represents the boundaries (e.g. min and max values) of a particular column
This is used range analysis of expressions, to determine if the expression
limits the value of particular columns (e.g. analyzing an expression such as
time < 50
would result in a boundary interval for time
having a max
value of 50
).
Fields§
§column: Column
§interval: Interval
Minimum and maximum values this expression can have.
distinct_count: Precision<usize>
Maximum number of distinct values this expression can produce, if known.
Implementations§
source§impl ExprBoundaries
impl ExprBoundaries
sourcepub fn try_from_column(
schema: &Schema,
col_stats: &ColumnStatistics,
col_index: usize
) -> Result<Self>
pub fn try_from_column( schema: &Schema, col_stats: &ColumnStatistics, col_index: usize ) -> Result<Self>
Create a new ExprBoundaries
object from column level statistics.
sourcepub fn try_new_unbounded(schema: &Schema) -> Result<Vec<Self>>
pub fn try_new_unbounded(schema: &Schema) -> Result<Vec<Self>>
Create ExprBoundaries
that represent no known bounds for all the
columns in schema
Trait Implementations§
source§impl Clone for ExprBoundaries
impl Clone for ExprBoundaries
source§fn clone(&self) -> ExprBoundaries
fn clone(&self) -> ExprBoundaries
Returns a copy 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 moresource§impl Debug for ExprBoundaries
impl Debug for ExprBoundaries
source§impl PartialEq for ExprBoundaries
impl PartialEq for ExprBoundaries
source§fn eq(&self, other: &ExprBoundaries) -> bool
fn eq(&self, other: &ExprBoundaries) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for ExprBoundaries
Auto Trait Implementations§
impl !RefUnwindSafe for ExprBoundaries
impl Send for ExprBoundaries
impl Sync for ExprBoundaries
impl Unpin for ExprBoundaries
impl !UnwindSafe for ExprBoundaries
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