struct FusedPredicate {
predicates: Vec<Box<dyn ArrowPredicate>>,
composition_policy: RowSelectionPolicy,
}Expand description
Evaluate same-projection predicates in order on one decoded batch. Later predicates see only surviving rows, sliced when contiguous or compacted otherwise.
Fields§
§predicates: Vec<Box<dyn ArrowPredicate>>At least two predicates, all with the same projection.
composition_policy: RowSelectionPolicyChooses how intermediate selections are composed. The output is always
a [BooleanArray], so this is independent of the reader’s
RowSelectionPolicy, which governs decoding.
Implementations§
Source§impl FusedPredicate
impl FusedPredicate
Sourcefn new(predicates: Vec<Box<dyn ArrowPredicate>>) -> Self
fn new(predicates: Vec<Box<dyn ArrowPredicate>>) -> Self
Create a fused predicate from at least two predicates that share one projection.
Trait Implementations§
Source§impl ArrowPredicate for FusedPredicate
impl ArrowPredicate for FusedPredicate
Source§fn projection(&self) -> &ProjectionMask
fn projection(&self) -> &ProjectionMask
Returns the
ProjectionMask that describes the columns required
to evaluate this predicate. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for FusedPredicate
impl !Sync for FusedPredicate
impl !UnwindSafe for FusedPredicate
impl Freeze for FusedPredicate
impl Send for FusedPredicate
impl Unpin for FusedPredicate
impl UnsafeUnpin for FusedPredicate
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