RowMask

Struct RowMask 

Source
pub struct RowMask { /* private fields */ }
Expand description

Bitmap of selected rows within given [begin, end) row range

Implementations§

Source§

impl RowMask

Source

pub fn try_new(values: Bitmap, begin: usize, end: usize) -> VortexResult<Self>

Source

pub fn new_valid_between(begin: usize, end: usize) -> Self

Construct a RowMask which is valid in the given range.

Source

pub fn new_invalid_between(begin: usize, end: usize) -> Self

Construct a RowMask which is invalid everywhere in the given range.

Source

pub unsafe fn new_unchecked(values: Bitmap, begin: usize, end: usize) -> Self

Construct a RowMask from given bitmap and begin.

§Safety

The maximum set index of the values must be no greater than end - begin.

Source

pub fn from_mask_array( array: &Array, begin: usize, end: usize, ) -> VortexResult<Self>

Construct a RowMask from a Boolean typed array.

True-valued positions are kept by the returned mask.

Source

pub fn from_index_array( array: &Array, begin: usize, end: usize, ) -> VortexResult<Self>

Construct a RowMask from an integral array.

The array values are intepreted as indices and those indices are kept by the returned mask.

Source

pub fn is_empty(&self) -> bool

Source

pub fn begin(&self) -> usize

Source

pub fn end(&self) -> usize

Source

pub fn len(&self) -> usize

Source

pub fn slice(&self, begin: usize, end: usize) -> Self

Limit mask to [begin..end) range

Source

pub fn and_inplace(&mut self, other: &RowMask) -> VortexResult<()>

Unset, in place, any bits that are unset in other.

Source

pub fn filter_array( &self, array: impl AsRef<Array>, ) -> VortexResult<Option<Array>>

Filter array with this RowMask.

This function assumes that Array is no longer than the mask length and that the mask starts on same offset as the array, i.e. the beginning of the array corresponds to the beginning of the mask with begin = 0

Source

pub fn to_indices_array(&self) -> VortexResult<Array>

Source

pub fn to_mask_array(&self) -> VortexResult<Array>

Source

pub fn shift(self, offset: usize) -> VortexResult<RowMask>

Trait Implementations§

Source§

impl Clone for RowMask

Source§

fn clone(&self) -> RowMask

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RowMask

Source§

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

Formats the value using the given formatter. Read more
Source§

impl Default for RowMask

Source§

fn default() -> RowMask

Returns the “default value” for a type. Read more
Source§

impl Display for RowMask

Source§

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

Formats the value using the given formatter. Read more
Source§

impl PartialEq for RowMask

Source§

fn eq(&self, other: &RowMask) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Eq for RowMask

Source§

impl StructuralPartialEq for RowMask

Auto Trait Implementations§

Blanket Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
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> IntoEither for T

Source§

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 more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

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
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
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.
Source§

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

Source§

impl<T> ErasedDestructor for T
where T: 'static,