pub struct SparseArray { /* private fields */ }
Implementations§
Source§impl SparseArray
impl SparseArray
pub fn try_new( indices: ArrayRef, values: ArrayRef, len: usize, fill_value: Scalar, ) -> VortexResult<Self>
pub fn try_new_from_patches( patches: Patches, fill_value: Scalar, ) -> VortexResult<Self>
pub fn patches(&self) -> &Patches
pub fn resolved_patches(&self) -> VortexResult<Patches>
pub fn fill_scalar(&self) -> &Scalar
Trait Implementations§
Source§impl ArrayCanonicalImpl for SparseArray
impl ArrayCanonicalImpl for SparseArray
Source§fn _to_canonical(&self) -> VortexResult<Canonical>
fn _to_canonical(&self) -> VortexResult<Canonical>
Source§fn _append_to_builder(
&self,
builder: &mut dyn ArrayBuilder,
) -> Result<(), VortexError>
fn _append_to_builder( &self, builder: &mut dyn ArrayBuilder, ) -> Result<(), VortexError>
Source§impl ArrayComputeImpl for SparseArray
impl ArrayComputeImpl for SparseArray
Source§impl ArrayImpl for SparseArray
impl ArrayImpl for SparseArray
Source§impl ArrayStatisticsImpl for SparseArray
impl ArrayStatisticsImpl for SparseArray
fn _stats_ref(&self) -> StatsSetRef<'_>
Source§impl ArrayValidityImpl for SparseArray
impl ArrayValidityImpl for SparseArray
Source§fn _is_valid(&self, index: usize) -> VortexResult<bool>
fn _is_valid(&self, index: usize) -> VortexResult<bool>
index
item is valid. Read moreSource§fn _all_valid(&self) -> VortexResult<bool>
fn _all_valid(&self) -> VortexResult<bool>
Source§fn _all_invalid(&self) -> VortexResult<bool>
fn _all_invalid(&self) -> VortexResult<bool>
Source§fn _validity_mask(&self) -> VortexResult<Mask>
fn _validity_mask(&self) -> VortexResult<Mask>
Source§fn _valid_count(&self) -> Result<usize, VortexError>
fn _valid_count(&self) -> Result<usize, VortexError>
Source§fn _invalid_count(&self) -> Result<usize, VortexError>
fn _invalid_count(&self) -> Result<usize, VortexError>
Source§impl ArrayVariantsImpl for SparseArray
Sparse arrays support all DTypes
impl ArrayVariantsImpl for SparseArray
Sparse arrays support all DTypes
Source§fn _as_null_typed(&self) -> Option<&dyn NullArrayTrait>
fn _as_null_typed(&self) -> Option<&dyn NullArrayTrait>
Source§fn _as_bool_typed(&self) -> Option<&dyn BoolArrayTrait>
fn _as_bool_typed(&self) -> Option<&dyn BoolArrayTrait>
Source§fn _as_primitive_typed(&self) -> Option<&dyn PrimitiveArrayTrait>
fn _as_primitive_typed(&self) -> Option<&dyn PrimitiveArrayTrait>
Source§fn _as_utf8_typed(&self) -> Option<&dyn Utf8ArrayTrait>
fn _as_utf8_typed(&self) -> Option<&dyn Utf8ArrayTrait>
Source§fn _as_binary_typed(&self) -> Option<&dyn BinaryArrayTrait>
fn _as_binary_typed(&self) -> Option<&dyn BinaryArrayTrait>
Source§fn _as_struct_typed(&self) -> Option<&dyn StructArrayTrait>
fn _as_struct_typed(&self) -> Option<&dyn StructArrayTrait>
Source§fn _as_list_typed(&self) -> Option<&dyn ListArrayTrait>
fn _as_list_typed(&self) -> Option<&dyn ListArrayTrait>
Source§fn _as_extension_typed(&self) -> Option<&dyn ExtensionArrayTrait>
fn _as_extension_typed(&self) -> Option<&dyn ExtensionArrayTrait>
Source§impl ArrayVisitorImpl<RkyvMetadata<SparseMetadata>> for SparseArray
impl ArrayVisitorImpl<RkyvMetadata<SparseMetadata>> for SparseArray
fn _visit_buffers(&self, visitor: &mut dyn ArrayBufferVisitor)
fn _visit_children(&self, visitor: &mut dyn ArrayChildVisitor)
fn _metadata(&self) -> RkyvMetadata<SparseMetadata>
fn _nbuffers(&self) -> usize
fn _nchildren(&self) -> usize
Source§impl BinaryNumericFn<&SparseArray> for SparseEncoding
impl BinaryNumericFn<&SparseArray> for SparseEncoding
fn binary_numeric( &self, array: &SparseArray, rhs: &dyn Array, op: BinaryNumericOperator, ) -> VortexResult<Option<ArrayRef>>
Source§impl Clone for SparseArray
impl Clone for SparseArray
Source§fn clone(&self) -> SparseArray
fn clone(&self) -> SparseArray
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for SparseArray
impl Debug for SparseArray
Source§impl ExtensionArrayTrait for SparseArray
impl ExtensionArrayTrait for SparseArray
Source§impl InvertFn<&SparseArray> for SparseEncoding
impl InvertFn<&SparseArray> for SparseEncoding
Source§fn invert(&self, array: &SparseArray) -> VortexResult<ArrayRef>
fn invert(&self, array: &SparseArray) -> VortexResult<ArrayRef>
Source§impl PrimitiveArrayTrait for SparseArray
impl PrimitiveArrayTrait for SparseArray
Source§impl ScalarAtFn<&SparseArray> for SparseEncoding
impl ScalarAtFn<&SparseArray> for SparseEncoding
fn scalar_at(&self, array: &SparseArray, index: usize) -> VortexResult<Scalar>
Source§impl SearchSortedFn<&SparseArray> for SparseEncoding
impl SearchSortedFn<&SparseArray> for SparseEncoding
fn search_sorted( &self, array: &SparseArray, value: &Scalar, side: SearchSortedSide, ) -> VortexResult<SearchResult>
Source§fn search_sorted_many(
&self,
array: A,
values: &[Scalar],
side: SearchSortedSide,
) -> Result<Vec<SearchResult>, VortexError>
fn search_sorted_many( &self, array: A, values: &[Scalar], side: SearchSortedSide, ) -> Result<Vec<SearchResult>, VortexError>
Source§impl SearchSortedUsizeFn<&SparseArray> for SparseEncoding
impl SearchSortedUsizeFn<&SparseArray> for SparseEncoding
fn search_sorted_usize( &self, array: &SparseArray, value: usize, side: SearchSortedSide, ) -> VortexResult<SearchResult>
fn search_sorted_usize_many( &self, array: A, values: &[usize], side: SearchSortedSide, ) -> Result<Vec<SearchResult>, VortexError>
Source§impl SliceFn<&SparseArray> for SparseEncoding
impl SliceFn<&SparseArray> for SparseEncoding
Source§fn slice(
&self,
array: &SparseArray,
start: usize,
stop: usize,
) -> VortexResult<ArrayRef>
fn slice( &self, array: &SparseArray, start: usize, stop: usize, ) -> VortexResult<ArrayRef>
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 StructArrayTrait for SparseArray
impl StructArrayTrait for SparseArray
Source§fn maybe_null_field_by_idx(&self, idx: usize) -> VortexResult<ArrayRef>
fn maybe_null_field_by_idx(&self, idx: usize) -> VortexResult<ArrayRef>
fn project(&self, projection: &[FieldName]) -> VortexResult<ArrayRef>
fn names(&self) -> &Arc<[Arc<str>]>
fn dtypes(&self) -> Vec<DType>
fn nfields(&self) -> usize
Source§fn maybe_null_field_by_name(
&self,
name: &str,
) -> Result<Arc<dyn Array>, VortexError>
fn maybe_null_field_by_name( &self, name: &str, ) -> Result<Arc<dyn Array>, VortexError>
Source§impl TakeFn<&SparseArray> for SparseEncoding
impl TakeFn<&SparseArray> for SparseEncoding
Source§fn take(
&self,
array: &SparseArray,
take_indices: &dyn Array,
) -> VortexResult<ArrayRef>
fn take( &self, array: &SparseArray, take_indices: &dyn Array, ) -> VortexResult<ArrayRef>
Source§fn take_into(
&self,
array: A,
indices: &dyn Array,
builder: &mut dyn ArrayBuilder,
) -> Result<(), VortexError>
fn take_into( &self, array: A, indices: &dyn Array, builder: &mut dyn ArrayBuilder, ) -> Result<(), VortexError>
Self::take
but materializes the result into the provided
builder.impl BinaryArrayTrait for SparseArray
impl BoolArrayTrait for SparseArray
impl ListArrayTrait for SparseArray
impl NullArrayTrait for SparseArray
impl Utf8ArrayTrait for SparseArray
Auto Trait Implementations§
impl Freeze for SparseArray
impl !RefUnwindSafe for SparseArray
impl Send for SparseArray
impl Sync for SparseArray
impl Unpin for SparseArray
impl !UnwindSafe for SparseArray
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Source§impl<A> Array for Awhere
A: ArrayImpl + 'static,
impl<A> Array for Awhere
A: ArrayImpl + 'static,
Source§fn is_valid(&self, index: usize) -> Result<bool, VortexError>
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>
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>
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>
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>
fn valid_count(&self) -> Result<usize, VortexError>
Returns the number of valid elements in the array.
Source§fn invalid_count(&self) -> Result<usize, VortexError>
fn invalid_count(&self) -> Result<usize, VortexError>
Returns the number of invalid elements in the array.
Source§fn validity_mask(&self) -> Result<Mask, VortexError>
fn validity_mask(&self) -> Result<Mask, VortexError>
Returns the canonical validity mask for the array.
Source§fn to_canonical(&self) -> Result<Canonical, VortexError>
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>
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)
fn as_any(&self) -> &(dyn Any + 'static)
Any
trait object.Source§fn vtable(&self) -> ArcRef<dyn EncodingVTable>
fn vtable(&self) -> ArcRef<dyn EncodingVTable>
Source§fn find_kernel(&self, compute_fn: &dyn ComputeFn) -> Option<ArcRef<dyn Kernel>>
fn find_kernel(&self, compute_fn: &dyn ComputeFn) -> Option<ArcRef<dyn Kernel>>
Source§fn statistics(&self) -> StatsSetRef<'_>
fn statistics(&self) -> StatsSetRef<'_>
Source§fn with_children(
&self,
children: &[Arc<dyn Array>],
) -> Result<Arc<dyn Array>, VortexError>
fn with_children( &self, children: &[Arc<dyn Array>], ) -> Result<Arc<dyn Array>, VortexError>
Source§fn is_encoding(&self, encoding: ArcRef<str>) -> bool
fn is_encoding(&self, encoding: ArcRef<str>) -> bool
Source§fn is_canonical(&self) -> bool
fn is_canonical(&self) -> bool
Source§impl<A> ArrayIteratorArrayExt for A
impl<A> ArrayIteratorArrayExt for A
Source§fn to_array_iterator(&self) -> impl ArrayIterator + 'static
fn to_array_iterator(&self) -> impl ArrayIterator + 'static
ArrayIterator
over the array.Source§impl<A> ArrayStatistics for Awhere
A: Array + 'static,
impl<A> ArrayStatistics for Awhere
A: Array + 'static,
Source§fn is_constant(&self) -> bool
fn is_constant(&self) -> bool
Source§fn as_constant(&self) -> Option<Scalar>
fn as_constant(&self) -> Option<Scalar>
Self::is_constant
is true, return the actual constant value as a Scalar
.Source§impl<A> ArrayStreamArrayExt for A
impl<A> ArrayStreamArrayExt for A
Source§fn to_array_stream(&self) -> impl ArrayStream + 'static
fn to_array_stream(&self) -> impl ArrayStream + 'static
ArrayStream
over the array.Source§impl<A> ArrayVariants for Awhere
A: ArrayImpl,
impl<A> ArrayVariants for Awhere
A: ArrayImpl,
Source§fn as_null_typed(&self) -> Option<&dyn NullArrayTrait>
fn as_null_typed(&self) -> Option<&dyn NullArrayTrait>
Downcasts the array for null-specific behavior.
Source§fn as_bool_typed(&self) -> Option<&dyn BoolArrayTrait>
fn as_bool_typed(&self) -> Option<&dyn BoolArrayTrait>
Downcasts the array for bool-specific behavior.
Source§fn as_primitive_typed(&self) -> Option<&dyn PrimitiveArrayTrait>
fn as_primitive_typed(&self) -> Option<&dyn PrimitiveArrayTrait>
Downcasts the array for primitive-specific behavior.
Source§fn as_utf8_typed(&self) -> Option<&dyn Utf8ArrayTrait>
fn as_utf8_typed(&self) -> Option<&dyn Utf8ArrayTrait>
Downcasts the array for utf8-specific behavior.
Source§fn as_binary_typed(&self) -> Option<&dyn BinaryArrayTrait>
fn as_binary_typed(&self) -> Option<&dyn BinaryArrayTrait>
Downcasts the array for binary-specific behavior.
Source§fn as_struct_typed(&self) -> Option<&dyn StructArrayTrait>
fn as_struct_typed(&self) -> Option<&dyn StructArrayTrait>
Downcasts the array for struct-specific behavior.
Source§fn as_list_typed(&self) -> Option<&dyn ListArrayTrait>
fn as_list_typed(&self) -> Option<&dyn ListArrayTrait>
Downcasts the array for list-specific behavior.
Source§fn as_extension_typed(&self) -> Option<&dyn ExtensionArrayTrait>
fn as_extension_typed(&self) -> Option<&dyn ExtensionArrayTrait>
Downcasts the array for extension-specific behavior.
Source§impl<A> ArrayVisitor for Awhere
A: ArrayImpl,
impl<A> ArrayVisitor for Awhere
A: ArrayImpl,
Source§impl<A> ArrayVisitorExt for A
impl<A> ArrayVisitorExt for A
Source§fn nbuffers_recursive(&self) -> usize
fn nbuffers_recursive(&self) -> usize
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out
indicating that a T
is niched.