Filter

Trait Filter 

Source
pub trait Filter<Selection: ?Sized> {
    type Output;

    // Required method
    fn filter(self, selection: &Selection) -> Self::Output;
}
Expand description

Function for filtering based on a selection mask.

Required Associated Types§

Source

type Output

The result type after performing the operation.

Required Methods§

Source

fn filter(self, selection: &Selection) -> Self::Output

Filters an object using the provided mask, returning a new value.

The result value will have length equal to the true count of the provided mask.

§Panics

If the length of the mask does not equal the length of the value being filtered.

Implementations on Foreign Types§

Source§

impl Filter<Mask> for &Mask

Source§

type Output = Mask

Source§

fn filter(self, selection_mask: &Mask) -> Mask

Source§

impl Filter<Mask> for &Vector

Source§

type Output = Vector

Source§

fn filter(self, selection: &Mask) -> Self::Output

Source§

impl Filter<Mask> for &BitBuffer

Source§

type Output = BitBuffer

Source§

fn filter(self, selection_mask: &Mask) -> BitBuffer

Source§

impl Filter<Mask> for &NullVector

Source§

type Output = NullVector

Source§

fn filter(self, selection: &Mask) -> Self::Output

Source§

impl Filter<Mask> for &mut VectorMut

Source§

type Output = ()

Source§

fn filter(self, selection: &Mask) -> Self::Output

Source§

impl Filter<Mask> for &mut BitBufferMut

Source§

type Output = ()

Source§

fn filter(self, selection_mask: &Mask)

Source§

impl Filter<Mask> for &mut MaskMut

Source§

type Output = ()

Source§

fn filter(self, selection_mask: &Mask)

Source§

impl Filter<Mask> for &mut NullVectorMut

Source§

type Output = ()

Source§

fn filter(self, selection: &Mask) -> Self::Output

Source§

impl Filter<Mask> for NullVector

Source§

type Output = NullVector

Source§

fn filter(self, selection: &Mask) -> Self

Source§

impl<'a, const NB: usize, T: Copy> Filter<BitView<'a, NB>> for &mut [T]

Source§

type Output = &mut [T]

Source§

fn filter(self, mask: &BitView<'a, NB>) -> Self::Output

Source§

impl<M> Filter<M> for &DecimalVector
where for<'a> &'a DVector<i8>: Filter<M, Output = DVector<i8>>, for<'a> &'a DVector<i16>: Filter<M, Output = DVector<i16>>, for<'a> &'a DVector<i32>: Filter<M, Output = DVector<i32>>, for<'a> &'a DVector<i64>: Filter<M, Output = DVector<i64>>, for<'a> &'a DVector<i128>: Filter<M, Output = DVector<i128>>, for<'a> &'a DVector<i256>: Filter<M, Output = DVector<i256>>,

Source§

type Output = DecimalVector

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &PrimitiveVector
where for<'a> &'a PVector<i8>: Filter<M, Output = PVector<i8>>, for<'a> &'a PVector<i16>: Filter<M, Output = PVector<i16>>, for<'a> &'a PVector<i32>: Filter<M, Output = PVector<i32>>, for<'a> &'a PVector<i64>: Filter<M, Output = PVector<i64>>, for<'a> &'a PVector<u8>: Filter<M, Output = PVector<u8>>, for<'a> &'a PVector<u16>: Filter<M, Output = PVector<u16>>, for<'a> &'a PVector<u32>: Filter<M, Output = PVector<u32>>, for<'a> &'a PVector<u64>: Filter<M, Output = PVector<u64>>, for<'a> &'a PVector<f16>: Filter<M, Output = PVector<f16>>, for<'a> &'a PVector<f32>: Filter<M, Output = PVector<f32>>, for<'a> &'a PVector<f64>: Filter<M, Output = PVector<f64>>,

Source§

type Output = PrimitiveVector

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &BoolVector
where for<'a> &'a BitBuffer: Filter<M, Output = BitBuffer>, for<'a> &'a Mask: Filter<M, Output = Mask>,

Source§

type Output = BoolVector

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &FixedSizeListVector
where for<'a> &'a Mask: Filter<M, Output = Mask>, for<'a> &'a Vector: Filter<Mask, Output = Vector>,

Source§

type Output = FixedSizeListVector

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &ListViewVector
where for<'a> &'a PrimitiveVector: Filter<M, Output = PrimitiveVector>, for<'a> &'a Mask: Filter<M, Output = Mask>,

Source§

type Output = ListViewVector

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &StructVector
where for<'a> &'a Mask: Filter<M, Output = Mask>, for<'a> &'a Vector: Filter<M, Output = Vector>,

Source§

type Output = StructVector

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &mut DecimalVectorMut
where for<'a> &'a mut DVectorMut<i8>: Filter<M, Output = ()>, for<'a> &'a mut DVectorMut<i16>: Filter<M, Output = ()>, for<'a> &'a mut DVectorMut<i32>: Filter<M, Output = ()>, for<'a> &'a mut DVectorMut<i64>: Filter<M, Output = ()>, for<'a> &'a mut DVectorMut<i128>: Filter<M, Output = ()>, for<'a> &'a mut DVectorMut<i256>: Filter<M, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &mut PrimitiveVectorMut
where for<'a> &'a mut PVectorMut<i8>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<i16>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<i32>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<i64>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<u8>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<u16>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<u32>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<u64>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<f16>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<f32>: Filter<M, Output = ()>, for<'a> &'a mut PVectorMut<f64>: Filter<M, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &mut BoolVectorMut
where for<'a> &'a mut BitBufferMut: Filter<M, Output = ()>, for<'a> &'a mut MaskMut: Filter<M, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &mut FixedSizeListVectorMut
where for<'a> &'a mut MaskMut: Filter<M, Output = ()>, for<'a> &'a mut VectorMut: Filter<Mask, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &mut ListViewVectorMut
where for<'a> &'a mut PrimitiveVectorMut: Filter<M, Output = ()>, for<'a> &'a mut MaskMut: Filter<M, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for &mut StructVectorMut
where for<'a> &'a mut MaskMut: Filter<M, Output = ()>, for<'a> &'a mut VectorMut: Filter<M, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M> Filter<M> for DecimalVector
where for<'a> &'a DecimalVector: Filter<M, Output = DecimalVector>, for<'a> &'a mut DecimalVectorMut: Filter<M, Output = ()>,

Source§

type Output = DecimalVector

Source§

fn filter(self, selection: &M) -> Self

Source§

impl<M> Filter<M> for PrimitiveVector
where for<'a> &'a PrimitiveVector: Filter<M, Output = PrimitiveVector>, for<'a> &'a mut PrimitiveVectorMut: Filter<M, Output = ()>,

Source§

type Output = PrimitiveVector

Source§

fn filter(self, selection: &M) -> Self

Source§

impl<M> Filter<M> for BoolVector
where for<'a> &'a BoolVector: Filter<M, Output = BoolVector>, for<'a> &'a mut BoolVectorMut: Filter<M, Output = ()>,

Source§

type Output = BoolVector

Source§

fn filter(self, selection: &M) -> Self

Source§

impl<M> Filter<M> for FixedSizeListVector
where for<'a> &'a FixedSizeListVector: Filter<M, Output = FixedSizeListVector>, for<'a> &'a mut FixedSizeListVectorMut: Filter<M, Output = ()>,

Source§

type Output = FixedSizeListVector

Source§

fn filter(self, selection: &M) -> Self

Source§

impl<M> Filter<M> for ListViewVector
where for<'a> &'a ListViewVector: Filter<M, Output = ListViewVector>, for<'a> &'a mut ListViewVectorMut: Filter<M, Output = ()>,

Source§

type Output = ListViewVector

Source§

fn filter(self, selection: &M) -> Self

Source§

impl<M> Filter<M> for StructVector
where for<'a> &'a StructVector: Filter<M, Output = StructVector>, for<'a> &'a mut StructVectorMut: Filter<M, Output = ()>,

Source§

type Output = StructVector

Source§

fn filter(self, selection: &M) -> Self

Source§

impl<M, D: NativeDecimalType> Filter<M> for &DVector<D>
where for<'a> &'a Buffer<D>: Filter<M, Output = Buffer<D>>, for<'a> &'a Mask: Filter<M, Output = Mask>,

Source§

type Output = DVector<D>

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M, D: NativeDecimalType> Filter<M> for &mut DVectorMut<D>
where for<'a> &'a mut BufferMut<D>: Filter<M, Output = ()>, for<'a> &'a mut MaskMut: Filter<M, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M, D: NativeDecimalType> Filter<M> for DVector<D>
where for<'a> &'a DVector<D>: Filter<M, Output = DVector<D>>, for<'a> &'a mut DVectorMut<D>: Filter<M, Output = ()>,

Source§

type Output = DVector<D>

Source§

fn filter(self, selection: &M) -> Self

Source§

impl<M, T> Filter<M> for &mut BufferMut<T>
where for<'a> &'a mut [T]: Filter<M, Output = &'a mut [T]>,

Source§

type Output = ()

Source§

fn filter(self, selection_mask: &M) -> Self::Output

Source§

impl<M, T: Copy> Filter<M> for Buffer<T>
where for<'a> &'a Buffer<T>: Filter<M, Output = Buffer<T>>, for<'a> &'a mut BufferMut<T>: Filter<M, Output = ()>,

Source§

type Output = Buffer<T>

Source§

fn filter(self, selection_mask: &M) -> Self

Source§

impl<M, T: NativePType> Filter<M> for &PVector<T>
where for<'a> &'a Buffer<T>: Filter<M, Output = Buffer<T>>, for<'a> &'a Mask: Filter<M, Output = Mask>,

Source§

type Output = PVector<T>

Source§

fn filter(self, selection_mask: &M) -> PVector<T>

Source§

impl<M, T: NativePType> Filter<M> for &mut PVectorMut<T>
where for<'a> &'a mut BufferMut<T>: Filter<M, Output = ()>, for<'a> &'a mut MaskMut: Filter<M, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection_mask: &M)

Source§

impl<M, T: NativePType> Filter<M> for PVector<T>
where for<'a> &'a PVector<T>: Filter<M, Output = PVector<T>>, for<'a> &'a mut PVectorMut<T>: Filter<M, Output = ()>,

Source§

type Output = PVector<T>

Source§

fn filter(self, selection_mask: &M) -> Self

Source§

impl<M, T: BinaryViewType> Filter<M> for &BinaryViewVector<T>
where for<'a> &'a Mask: Filter<M, Output = Mask>, for<'a> &'a Buffer<BinaryView>: Filter<M, Output = Buffer<BinaryView>>,

Source§

type Output = BinaryViewVector<T>

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M, T: BinaryViewType> Filter<M> for &mut BinaryViewVectorMut<T>
where for<'a> &'a mut MaskMut: Filter<M, Output = ()>, for<'a> &'a mut BufferMut<BinaryView>: Filter<M, Output = ()>,

Source§

type Output = ()

Source§

fn filter(self, selection: &M) -> Self::Output

Source§

impl<M, T: BinaryViewType> Filter<M> for BinaryViewVector<T>
where for<'a> &'a BinaryViewVector<T>: Filter<M, Output = BinaryViewVector<T>>, for<'a> &'a mut BinaryViewVectorMut<T>: Filter<M, Output = ()>,

Source§

type Output = BinaryViewVector<T>

Source§

fn filter(self, selection: &M) -> Self

Source§

impl<T: Copy> Filter<Mask> for &[T]

Source§

type Output = Buffer<T>

Source§

fn filter(self, selection_mask: &Mask) -> Buffer<T>

Source§

impl<T: Copy> Filter<Mask> for &Buffer<T>

Source§

type Output = Buffer<T>

Source§

fn filter(self, selection_mask: &Mask) -> Buffer<T>

Source§

impl<T: Copy> Filter<Mask> for &mut [T]

Source§

type Output = &mut [T]

Source§

fn filter(self, selection: &Mask) -> Self::Output

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for &Mask

Source§

type Output = Mask

Source§

fn filter(self, selection: &BitView<'_, NB>) -> Self::Output

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for &Vector

Source§

type Output = Vector

Source§

fn filter(self, selection: &BitView<'_, NB>) -> Self::Output

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for &BitBuffer

Source§

type Output = BitBuffer

Source§

fn filter(self, selection: &BitView<'_, NB>) -> BitBuffer

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for &NullVector

Source§

type Output = NullVector

Source§

fn filter(self, selection: &BitView<'_, NB>) -> Self::Output

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for &mut VectorMut

Source§

type Output = ()

Source§

fn filter(self, selection: &BitView<'_, NB>) -> Self::Output

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for &mut BitBufferMut

Source§

type Output = ()

Source§

fn filter(self, selection: &BitView<'_, NB>)

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for &mut MaskMut

Source§

type Output = ()

Source§

fn filter(self, selection: &BitView<'_, NB>) -> Self::Output

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for &mut NullVectorMut

Source§

type Output = ()

Source§

fn filter(self, selection: &BitView<'_, NB>) -> Self::Output

Source§

impl<const NB: usize> Filter<BitView<'_, NB>> for NullVector

Source§

type Output = NullVector

Source§

fn filter(self, selection: &BitView<'_, NB>) -> Self

Source§

impl<const NB: usize, T: Copy> Filter<BitView<'_, NB>> for &[T]

Source§

type Output = Buffer<T>

Source§

fn filter(self, mask: &BitView<'_, NB>) -> Self::Output

Source§

impl<const NB: usize, T: Copy> Filter<BitView<'_, NB>> for &Buffer<T>

Source§

type Output = Buffer<T>

Source§

fn filter(self, selection: &BitView<'_, NB>) -> Self::Output

Implementors§