pub struct RequiredColumns {
columns: Vec<(Column, StatisticsType, Field)>,
}Expand description
Describes which columns statistics are necessary to evaluate a
PruningPredicate.
This structure permits reading and creating the minimum number statistics, which is important since statistics may be non trivial to read (e.g. large strings or when there are 1000s of columns).
Handles creating references to the min/max statistics for columns as well as recording which statistics are needed
Fields§
§columns: Vec<(Column, StatisticsType, Field)>Implementations§
Source§impl RequiredColumns
impl RequiredColumns
Sourcepub fn single_column(&self) -> Option<&Column>
pub fn single_column(&self) -> Option<&Column>
Returns Some(column) if this is a single column predicate.
Returns None if this is a multi-column predicate.
Examples:
a > 5 OR a < 10returnsSome(a)a > 5 OR b < 10returnsNonetruereturns None
Trait Implementations§
Source§impl Clone for RequiredColumns
impl Clone for RequiredColumns
Source§fn clone(&self) -> RequiredColumns
fn clone(&self) -> RequiredColumns
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 moreSource§impl Debug for RequiredColumns
impl Debug for RequiredColumns
Source§impl Default for RequiredColumns
impl Default for RequiredColumns
Source§fn default() -> RequiredColumns
fn default() -> RequiredColumns
Returns the “default value” for a type. Read more
Source§impl From<Vec<(Column, StatisticsType, Field)>> for RequiredColumns
impl From<Vec<(Column, StatisticsType, Field)>> for RequiredColumns
Source§fn from(columns: Vec<(Column, StatisticsType, Field)>) -> RequiredColumns
fn from(columns: Vec<(Column, StatisticsType, Field)>) -> RequiredColumns
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for RequiredColumns
impl RefUnwindSafe for RequiredColumns
impl Send for RequiredColumns
impl Sync for RequiredColumns
impl Unpin for RequiredColumns
impl UnwindSafe for RequiredColumns
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