Skip to main content

FilterPredicate

Struct FilterPredicate 

pub struct FilterPredicate {
    filter: BooleanArray,
    count: usize,
    strategy: IterationStrategy,
}
Expand description

A filtering predicate that can be applied to an Array

Fields§

§filter: BooleanArray§count: usize§strategy: IterationStrategy

Implementations§

§

impl FilterPredicate

pub fn filter(&self, values: &dyn Array) -> Result<Arc<dyn Array>, ArrowError>

Selects rows from values based on this FilterPredicate

pub fn filter_record_batch( &self, record_batch: &RecordBatch, ) -> Result<RecordBatch, ArrowError>

Returns a filtered RecordBatch containing only the rows that are selected by this FilterPredicate.

This is the equivalent of calling filter on each column of the RecordBatch.

pub fn count(&self) -> usize

Number of rows being selected based on this FilterPredicate

pub fn filter_nulls(&self, nulls: Option<&NullBuffer>) -> Option<NullBuffer>

Filters the given nulls buffer using this predicate.

Returns None when there is nothing to track in the output, either because the input nulls was None, the input had no nulls, or the filtered result has no nulls. Otherwise returns the filtered NullBuffer with its precomputed null count.

Trait Implementations§

§

impl Debug for FilterPredicate

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

§

impl<T> Allocation for T
where T: RefUnwindSafe + Send + Sync,

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> Ungil for T
where T: Send,

§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V