Struct BoolArray

Source
pub struct BoolArray { /* private fields */ }

Implementations§

Source§

impl BoolArray

Source

pub fn from_indices<I: IntoIterator<Item = usize>>( length: usize, indices: I, ) -> Self

Create a new BoolArray from a set of indices and a length. All indices must be less than the length.

Source

pub fn new(buffer: BooleanBuffer, validity: Validity) -> Self

Creates a new BoolArray from a BooleanBuffer and Validity, without checking any invariants.

Source

pub fn boolean_buffer(&self) -> &BooleanBuffer

Returns the underlying BooleanBuffer of the array.

Source

pub fn validity(&self) -> &Validity

Returns the underlying Validity of the array.

Source

pub fn into_boolean_builder(self) -> (BooleanBufferBuilder, usize)

Get a mutable version of this array.

If the caller holds the only reference to the underlying buffer the underlying buffer is returned otherwise a copy is created.

The second value of the tuple is a bit_offset of first value in first byte of the returned builder

Source§

impl BoolArray

Source

pub fn patch(self, patches: &Patches) -> VortexResult<Self>

Trait Implementations§

Source§

impl ArrayCanonicalImpl for BoolArray

Source§

fn _to_canonical(&self) -> VortexResult<Canonical>

Returns the canonical representation of the array. Read more
Source§

fn _append_to_builder(&self, builder: &mut dyn ArrayBuilder) -> VortexResult<()>

Writes the array into the canonical builder. Read more
Source§

impl ArrayComputeImpl for BoolArray

Source§

const FILTER: Option<KernelRef>

Source§

fn _find_kernel(&self, _compute_fn: &dyn ComputeFn) -> Option<KernelRef>

Fallback implementation to lookup compute kernels at runtime.
Source§

impl ArrayImpl for BoolArray

Source§

type Encoding = BoolEncoding

Source§

fn _len(&self) -> usize

Source§

fn _dtype(&self) -> &DType

Source§

fn _vtable(&self) -> VTableRef

Source§

fn _with_children(&self, children: &[ArrayRef]) -> VortexResult<Self>

Replace the children of this array with the given arrays. Read more
Source§

impl ArrayStatisticsImpl for BoolArray

Source§

impl ArrayValidityImpl for BoolArray

Source§

fn _is_valid(&self, index: usize) -> VortexResult<bool>

Returns whether the index item is valid. Read more
Source§

fn _all_valid(&self) -> VortexResult<bool>

Returns whether the array is all valid.
Source§

fn _all_invalid(&self) -> VortexResult<bool>

Returns whether the array is all invalid.
Source§

fn _validity_mask(&self) -> VortexResult<Mask>

Returns the canonical validity mask for the array. Read more
Source§

fn _valid_count(&self) -> VortexResult<usize>

Returns the number of valid elements in the array. Read more
Source§

fn _invalid_count(&self) -> VortexResult<usize>

Returns the number of invalid elements in the array. Read more
Source§

impl ArrayVariantsImpl for BoolArray

Source§

fn _as_bool_typed(&self) -> Option<&dyn BoolArrayTrait>

Downcasts the array for bool-specific behavior.
Source§

fn _as_null_typed(&self) -> Option<&dyn NullArrayTrait>

Downcasts the array for null-specific behavior.
Source§

fn _as_primitive_typed(&self) -> Option<&dyn PrimitiveArrayTrait>

Downcasts the array for primitive-specific behavior.
Source§

fn _as_utf8_typed(&self) -> Option<&dyn Utf8ArrayTrait>

Downcasts the array for utf8-specific behavior.
Source§

fn _as_binary_typed(&self) -> Option<&dyn BinaryArrayTrait>

Downcasts the array for binary-specific behavior.
Source§

fn _as_struct_typed(&self) -> Option<&dyn StructArrayTrait>

Downcasts the array for struct-specific behavior.
Source§

fn _as_list_typed(&self) -> Option<&dyn ListArrayTrait>

Downcasts the array for list-specific behavior.
Source§

fn _as_extension_typed(&self) -> Option<&dyn ExtensionArrayTrait>

Downcasts the array for extension-specific behavior.
Source§

impl ArrayVisitorImpl<RkyvMetadata<BoolMetadata>> for BoolArray

Source§

fn _visit_buffers(&self, visitor: &mut dyn ArrayBufferVisitor)

Source§

fn _visit_children(&self, visitor: &mut dyn ArrayChildVisitor)

Source§

fn _metadata(&self) -> RkyvMetadata<BoolMetadata>

Source§

fn _nbuffers(&self) -> usize

Source§

fn _nchildren(&self) -> usize

Source§

impl CastFn<&BoolArray> for BoolEncoding

Source§

fn cast(&self, array: &BoolArray, dtype: &DType) -> VortexResult<ArrayRef>

Source§

impl Clone for BoolArray

Source§

fn clone(&self) -> BoolArray

Returns a copy 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 BoolArray

Source§

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

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

impl FillForwardFn<&BoolArray> for BoolEncoding

Source§

impl FillNullFn<&BoolArray> for BoolEncoding

Source§

fn fill_null( &self, array: &BoolArray, fill_value: Scalar, ) -> VortexResult<ArrayRef>

Source§

impl From<BooleanBuffer> for BoolArray

Source§

fn from(value: BooleanBuffer) -> Self

Converts to this type from the input type.
Source§

impl FromIterator<Option<bool>> for BoolArray

Source§

fn from_iter<I: IntoIterator<Item = Option<bool>>>(iter: I) -> Self

Creates a value from an iterator. Read more
Source§

impl FromIterator<bool> for BoolArray

Source§

fn from_iter<T: IntoIterator<Item = bool>>(iter: T) -> Self

Creates a value from an iterator. Read more
Source§

impl InvertFn<&BoolArray> for BoolEncoding

Source§

fn invert(&self, array: &BoolArray) -> VortexResult<ArrayRef>

Logically invert a boolean array. Converts true -> false, false -> true, null -> null.
Source§

impl IsConstantFn<&BoolArray> for BoolEncoding

Source§

fn is_constant( &self, array: &BoolArray, _opts: &IsConstantOpts, ) -> VortexResult<Option<bool>>

Preconditions Read more
Source§

impl IsSortedFn<&BoolArray> for BoolEncoding

Source§

impl MaskFn<&BoolArray> for BoolEncoding

Source§

fn mask(&self, array: &BoolArray, mask: Mask) -> VortexResult<ArrayRef>

Replace masked values with null in array.
Source§

impl MinMaxFn<&BoolArray> for BoolEncoding

Source§

impl ScalarAtFn<&BoolArray> for BoolEncoding

Source§

fn scalar_at(&self, array: &BoolArray, index: usize) -> VortexResult<Scalar>

Source§

impl SliceFn<&BoolArray> for BoolEncoding

Source§

fn slice( &self, array: &BoolArray, start: usize, stop: usize, ) -> VortexResult<ArrayRef>

Return a zero-copy slice of an array, between start (inclusive) and end (exclusive). If start >= stop, returns an empty array of the same type as self. Assumes that start or stop are out of bounds, may panic otherwise.
Source§

impl SumFn<&BoolArray> for BoolEncoding

Source§

fn sum(&self, array: &BoolArray) -> VortexResult<Scalar>

Preconditions Read more
Source§

impl TakeFn<&BoolArray> for BoolEncoding

Source§

fn take(&self, array: &BoolArray, indices: &dyn Array) -> VortexResult<ArrayRef>

Create a new array by taking the values from the array at the given indices. Read more
Source§

fn take_into( &self, array: &BoolArray, indices: &dyn Array, builder: &mut dyn ArrayBuilder, ) -> VortexResult<()>

Has the same semantics as Self::take but materializes the result into the provided builder.
Source§

impl ToArrowFn<&BoolArray> for BoolEncoding

Source§

fn to_arrow( &self, array: &BoolArray, data_type: &DataType, ) -> VortexResult<Option<ArrayRef>>

Convert the array to an Arrow array of the given type. Read more
Source§

fn preferred_arrow_data_type(&self, _array: A) -> VortexResult<Option<DataType>>

Return the preferred Arrow DataType of the encoding, or None of the canonical DataType for the array’s Vortex vortex_dtype::DType should be used.
Source§

impl TryFrom<&BoolArray> for Mask

Source§

type Error = VortexError

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

fn try_from(array: &BoolArray) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl UncompressedSizeFn<&BoolArray> for BoolEncoding

Source§

fn uncompressed_size(&self, array: &BoolArray) -> VortexResult<usize>

Compute the approximated uncompressed size of the array, in bytes.
Source§

impl BoolArrayTrait for BoolArray

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> ArchivePointee for T

Source§

type ArchivedMetadata = ()

The archived version of the pointer metadata for this type.
Source§

fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata

Converts some archived metadata to the pointer metadata for itself.
Source§

impl<A> Array for A
where A: ArrayImpl + 'static,

Source§

fn is_valid(&self, index: usize) -> Result<bool, VortexError>

Returns whether the item at index is valid.

Source§

fn is_invalid(&self, index: usize) -> Result<bool, VortexError>

Returns whether the item at index is invalid.

Source§

fn all_valid(&self) -> Result<bool, VortexError>

Returns whether all items in the array are valid.

This is usually cheaper than computing a precise valid_count.

Source§

fn all_invalid(&self) -> Result<bool, VortexError>

Returns whether the array is all invalid.

This is usually cheaper than computing a precise invalid_count.

Source§

fn valid_count(&self) -> Result<usize, VortexError>

Returns the number of valid elements in the array.

Source§

fn invalid_count(&self) -> Result<usize, VortexError>

Returns the number of invalid elements in the array.

Source§

fn validity_mask(&self) -> Result<Mask, VortexError>

Returns the canonical validity mask for the array.

Source§

fn to_canonical(&self) -> Result<Canonical, VortexError>

Returns the canonical representation of the array.

Source§

fn append_to_builder( &self, builder: &mut dyn ArrayBuilder, ) -> Result<(), VortexError>

Writes the array into the canonical builder.

The DType of the builder must match that of the array.

Source§

fn as_any(&self) -> &(dyn Any + 'static)

Returns the array as a reference to a generic Any trait object.
Source§

fn as_any_arc(self: Arc<A>) -> Arc<dyn Any + Sync + Send>

Returns the array as an Arc reference to a generic Any trait object.
Source§

fn to_array(&self) -> Arc<dyn Array>

Returns the array as an ArrayRef.
Source§

fn into_array(self) -> Arc<dyn Array>

Converts the array into an ArrayRef.
Source§

fn len(&self) -> usize

Returns the length of the array.
Source§

fn dtype(&self) -> &DType

Returns the logical Vortex DType of the array.
Source§

fn encoding(&self) -> ArcRef<str>

Returns the encoding of the array.
Source§

fn vtable(&self) -> ArcRef<dyn EncodingVTable>

Returns the encoding VTable.
Source§

fn find_kernel(&self, compute_fn: &dyn ComputeFn) -> Option<ArcRef<dyn Kernel>>

Attempts to find a kernel for the given compute invocation.
Source§

fn statistics(&self) -> StatsSetRef<'_>

Returns the statistics of the array.
Source§

fn with_children( &self, children: &[Arc<dyn Array>], ) -> Result<Arc<dyn Array>, VortexError>

Replaces the children of the array with the given array references.
Source§

fn is_empty(&self) -> bool

Returns whether the array is empty (has zero rows).
Source§

fn is_encoding(&self, encoding: EncodingId) -> bool

Returns whether the array is of the given encoding.
Source§

fn is_arrow(&self) -> bool

Returns whether this array is an arrow encoding.
Source§

fn is_canonical(&self) -> bool

Whether the array is of a canonical encoding.
Source§

impl<A> ArrayExt for A
where A: Array + ?Sized,

Source§

fn as_<A: Array + 'static>(&self) -> &A

Returns the array downcast to the given A.
Source§

fn as_opt<A: Array + 'static>(&self) -> Option<&A>

Returns the array downcast to the given A.
Source§

fn is<A: Array + 'static>(&self) -> bool

Is self an array with encoding A.
Source§

impl<A> ArrayIteratorArrayExt for A
where A: Array + ?Sized,

Source§

fn to_array_iterator(&self) -> impl ArrayIterator + 'static

Create an ArrayIterator over the array.
Source§

impl<A> ArrayStatistics for A
where A: Array + 'static,

Source§

fn is_constant(&self) -> bool

Make a best effort attempt to try and figure out if the array is constant, without canonicalizing it.
Source§

fn as_constant(&self) -> Option<Scalar>

If Self::is_constant is true, return the actual constant value as a Scalar.
Source§

impl<A> ArrayStreamArrayExt for A
where A: Array + ?Sized,

Source§

fn to_array_stream(&self) -> impl ArrayStream + 'static

Create an ArrayStream over the array.
Source§

impl<A> ArrayVariants for A
where A: ArrayImpl,

Source§

fn as_null_typed(&self) -> Option<&dyn NullArrayTrait>

Downcasts the array for null-specific behavior.

Source§

fn as_bool_typed(&self) -> Option<&dyn BoolArrayTrait>

Downcasts the array for bool-specific behavior.

Source§

fn as_primitive_typed(&self) -> Option<&dyn PrimitiveArrayTrait>

Downcasts the array for primitive-specific behavior.

Source§

fn as_utf8_typed(&self) -> Option<&dyn Utf8ArrayTrait>

Downcasts the array for utf8-specific behavior.

Source§

fn as_binary_typed(&self) -> Option<&dyn BinaryArrayTrait>

Downcasts the array for binary-specific behavior.

Source§

fn as_struct_typed(&self) -> Option<&dyn StructArrayTrait>

Downcasts the array for struct-specific behavior.

Source§

fn as_list_typed(&self) -> Option<&dyn ListArrayTrait>

Downcasts the array for list-specific behavior.

Source§

fn as_extension_typed(&self) -> Option<&dyn ExtensionArrayTrait>

Downcasts the array for extension-specific behavior.

Source§

impl<A> ArrayVisitor for A
where A: ArrayImpl,

Source§

fn children(&self) -> Vec<Arc<dyn Array>>

Returns the children of the array.
Source§

fn nchildren(&self) -> usize

Returns the number of children of the array.
Source§

fn children_names(&self) -> Vec<String>

Returns the names of the children of the array.
Source§

fn named_children(&self) -> Vec<(String, Arc<dyn Array>)>

Returns the array’s children with their names.
Source§

fn buffers(&self) -> Vec<Buffer<u8>>

Returns the buffers of the array.
Source§

fn nbuffers(&self) -> usize

Returns the number of buffers of the array.
Source§

fn metadata(&self) -> Option<Vec<u8>>

Returns the serialized metadata of the array.
Source§

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

Formats a human-readable metadata description.
Source§

impl<A> ArrayVisitorExt for A
where A: Array + ?Sized,

Source§

fn nbuffers_recursive(&self) -> usize

Count the number of buffers encoded by self and all child arrays.
Source§

fn depth_first_traversal(&self) -> impl Iterator<Item = ArrayRef>

Depth-first traversal of the array and its children.
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<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> LayoutRaw for T

Source§

fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>

Returns the layout of the type.
Source§

impl<T> NBytes for T
where T: Array + ?Sized,

Source§

fn nbytes(&self) -> usize

Total size of the array in bytes, including all children and buffers.
Source§

impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
where T: SharedNiching<N1, N2>, N1: Niching<T>, N2: Niching<T>,

Source§

unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool

Returns whether the given value has been niched. Read more
Source§

fn resolve_niched(out: Place<NichedOption<T, N1>>)

Writes data to out indicating that a T is niched.
Source§

impl<T> Pointee for T

Source§

type Metadata = ()

The metadata type for pointers and references to this type.
Source§

impl<A> ToCanonical for A
where A: Array + ?Sized,

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, 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<A> TryFromArrayRef for A
where A: Array + Clone + 'static,

Source§

fn try_from_array(array: Arc<dyn Array>) -> Result<A, Arc<dyn Array>>

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> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T