pub struct ZigZagArray(/* private fields */);Implementations§
Source§impl ZigZagArray
impl ZigZagArray
Source§impl ZigZagArray
impl ZigZagArray
pub fn try_new(encoded: Array) -> VortexResult<Self>
pub fn encode(array: &Array) -> VortexResult<ZigZagArray>
pub fn encoded(&self) -> Array
Methods from Deref<Target = Array>§
Sourcepub fn encoding(&self) -> EncodingId
pub fn encoding(&self) -> EncodingId
Return the array’s encoding ID.
Sourcepub fn is_canonical(&self) -> bool
pub fn is_canonical(&self) -> bool
Whether the array is of a canonical encoding.
Sourcepub fn is_arrow(&self) -> bool
pub fn is_arrow(&self) -> bool
Whether the array is fully zero-copy to Arrow (including children). This means any nested types, like Structs, Lists, and Extensions are not present.
Sourcepub fn is_constant(&self) -> bool
pub fn is_constant(&self) -> bool
Return whether the array is constant.
Sourcepub fn as_constant(&self) -> Option<Scalar>
pub fn as_constant(&self) -> Option<Scalar>
Return scalar value of this array if the array is constant
pub fn child<'a>( &'a self, idx: usize, dtype: &'a DType, len: usize, ) -> Result<Array, VortexError>
Sourcepub fn children(&self) -> Vec<Array>
pub fn children(&self) -> Vec<Array>
Returns a Vec of Arrays with all the array’s child arrays.
Sourcepub fn named_children(&self) -> Vec<(String, Array)>
pub fn named_children(&self) -> Vec<(String, Array)>
Returns a Vec of Arrays with all the array’s child arrays.
pub fn depth_first_traversal(&self) -> ArrayChildrenIterator
Sourcepub fn cumulative_nbuffers(&self) -> usize
pub fn cumulative_nbuffers(&self) -> usize
Count the number of cumulative buffers encoded by self.
Sourcepub fn all_buffer_offsets(&self, alignment: usize) -> Vec<u64>
pub fn all_buffer_offsets(&self, alignment: usize) -> Vec<u64>
Return the buffer offsets and the total length of all buffers, assuming the given alignment. This includes all child buffers.
pub fn metadata_bytes(&self) -> Option<&[u8]>
pub fn nbuffers(&self) -> usize
pub fn byte_buffer(&self, index: usize) -> Option<&Buffer<u8>>
pub fn byte_buffers(&self) -> impl Iterator<Item = Buffer<u8>>
Sourcepub fn is_encoding(&self, id: EncodingId) -> bool
pub fn is_encoding(&self, id: EncodingId) -> bool
Checks whether array is of a given encoding.
pub fn try_downcast_ref<E>( &self, ) -> Result<(&<E as Encoding>::Array, &E), VortexError>
Sourcepub fn nbytes(&self) -> usize
pub fn nbytes(&self) -> usize
Total size of the array in bytes, including all children and buffers.
pub fn statistics(&self) -> &dyn Statistics
pub fn inherit_statistics(&self, parent: &dyn Statistics)
pub fn tree_display(&self) -> TreeDisplayWrapper<'_>
Sourcepub fn is_valid(&self, index: usize) -> Result<bool, VortexError>
pub fn is_valid(&self, index: usize) -> Result<bool, VortexError>
Return whether the element at the given index is valid (true) or null (false).
Sourcepub fn all_valid(&self) -> Result<bool, VortexError>
pub fn all_valid(&self) -> Result<bool, VortexError>
Return whether all elements in the array are valid.
Sourcepub fn null_count(&self) -> Result<usize, VortexError>
pub fn null_count(&self) -> Result<usize, VortexError>
Return the number of null elements in the array.
Sourcepub fn validity_mask(&self) -> Result<Mask, VortexError>
pub fn validity_mask(&self) -> Result<Mask, VortexError>
Return the canonical validity of the array as a Mask.
pub fn as_null_array(&self) -> Option<&dyn NullArrayTrait>
pub fn as_bool_array(&self) -> Option<&dyn BoolArrayTrait>
pub fn as_primitive_array( &self, ) -> Option<&dyn PrimitiveArrayTrait<Target = Array>>
pub fn as_utf8_array(&self) -> Option<&dyn Utf8ArrayTrait>
pub fn as_binary_array(&self) -> Option<&dyn BinaryArrayTrait>
pub fn as_struct_array(&self) -> Option<&dyn StructArrayTrait<Target = Array>>
pub fn as_list_array(&self) -> Option<&dyn ListArrayTrait>
pub fn as_extension_array( &self, ) -> Option<&dyn ExtensionArrayTrait<Target = Array>>
Trait Implementations§
Source§impl AsRef<Array> for ZigZagArray
impl AsRef<Array> for ZigZagArray
Source§impl CanonicalVTable<ZigZagArray> for ZigZagEncoding
impl CanonicalVTable<ZigZagArray> for ZigZagEncoding
fn into_canonical(&self, array: ZigZagArray) -> VortexResult<Canonical>
Source§impl Clone for ZigZagArray
impl Clone for ZigZagArray
Source§fn clone(&self) -> ZigZagArray
fn clone(&self) -> ZigZagArray
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for ZigZagArray
impl Debug for ZigZagArray
Source§impl Deref for ZigZagArray
impl Deref for ZigZagArray
Source§impl FilterFn<ZigZagArray> for ZigZagEncoding
impl FilterFn<ZigZagArray> for ZigZagEncoding
Source§fn filter(&self, array: &ZigZagArray, mask: &Mask) -> VortexResult<Array>
fn filter(&self, array: &ZigZagArray, mask: &Mask) -> VortexResult<Array>
Source§impl IntoArray for ZigZagArray
impl IntoArray for ZigZagArray
fn into_array(self) -> Array
Source§impl PrimitiveArrayTrait for ZigZagArray
impl PrimitiveArrayTrait for ZigZagArray
Source§impl ScalarAtFn<ZigZagArray> for ZigZagEncoding
impl ScalarAtFn<ZigZagArray> for ZigZagEncoding
fn scalar_at(&self, array: &ZigZagArray, index: usize) -> VortexResult<Scalar>
Source§impl SliceFn<ZigZagArray> for ZigZagEncoding
impl SliceFn<ZigZagArray> for ZigZagEncoding
Source§fn slice(
&self,
array: &ZigZagArray,
start: usize,
stop: usize,
) -> VortexResult<Array>
fn slice( &self, array: &ZigZagArray, start: usize, stop: usize, ) -> VortexResult<Array>
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 StatisticsVTable<ZigZagArray> for ZigZagEncoding
impl StatisticsVTable<ZigZagArray> for ZigZagEncoding
Source§fn compute_statistics(
&self,
array: &ZigZagArray,
stat: Stat,
) -> VortexResult<StatsSet>
fn compute_statistics( &self, array: &ZigZagArray, stat: Stat, ) -> VortexResult<StatsSet>
Source§impl TakeFn<ZigZagArray> for ZigZagEncoding
impl TakeFn<ZigZagArray> for ZigZagEncoding
Source§fn take(&self, array: &ZigZagArray, indices: &Array) -> VortexResult<Array>
fn take(&self, array: &ZigZagArray, indices: &Array) -> VortexResult<Array>
Source§unsafe fn take_unchecked(
&self,
array: &A,
indices: &Array,
) -> Result<Array, VortexError>
unsafe fn take_unchecked( &self, array: &A, indices: &Array, ) -> Result<Array, VortexError>
Source§impl<'a> TryFrom<&'a Array> for &'a ZigZagArray
impl<'a> TryFrom<&'a Array> for &'a ZigZagArray
Source§type Error = VortexError
type Error = VortexError
Source§fn try_from(data: &'a Array) -> VortexResult<Self>
fn try_from(data: &'a Array) -> VortexResult<Self>
Source§impl TryFrom<Array> for ZigZagArray
impl TryFrom<Array> for ZigZagArray
Source§type Error = VortexError
type Error = VortexError
Source§fn try_from(data: Array) -> VortexResult<Self>
fn try_from(data: Array) -> VortexResult<Self>
Source§impl ValidateVTable<ZigZagArray> for ZigZagEncoding
impl ValidateVTable<ZigZagArray> for ZigZagEncoding
Source§impl ValidityVTable<ZigZagArray> for ZigZagEncoding
impl ValidityVTable<ZigZagArray> for ZigZagEncoding
Source§fn is_valid(&self, array: &ZigZagArray, index: usize) -> VortexResult<bool>
fn is_valid(&self, array: &ZigZagArray, index: usize) -> VortexResult<bool>
index item is valid.Source§fn all_valid(&self, array: &ZigZagArray) -> VortexResult<bool>
fn all_valid(&self, array: &ZigZagArray) -> VortexResult<bool>
fn validity_mask(&self, array: &ZigZagArray) -> VortexResult<Mask>
Source§fn invalid_count(&self, array: &Array) -> Result<usize, VortexError>
fn invalid_count(&self, array: &Array) -> Result<usize, VortexError>
Source§impl VariantsVTable<ZigZagArray> for ZigZagEncoding
impl VariantsVTable<ZigZagArray> for ZigZagEncoding
fn as_primitive_array<'a>( &self, array: &'a ZigZagArray, ) -> Option<&'a dyn PrimitiveArrayTrait>
fn as_null_array<'a>(&self, _array: &'a Array) -> Option<&'a dyn NullArrayTrait>
fn as_bool_array<'a>(&self, _array: &'a Array) -> Option<&'a dyn BoolArrayTrait>
fn as_utf8_array<'a>(&self, _array: &'a Array) -> Option<&'a dyn Utf8ArrayTrait>
fn as_binary_array<'a>( &self, _array: &'a Array, ) -> Option<&'a dyn BinaryArrayTrait>
fn as_struct_array<'a>( &self, _array: &'a Array, ) -> Option<&'a dyn StructArrayTrait<Target = Array>>
fn as_list_array<'a>(&self, _array: &'a Array) -> Option<&'a dyn ListArrayTrait>
fn as_extension_array<'a>( &self, _array: &'a Array, ) -> Option<&'a dyn ExtensionArrayTrait<Target = Array>>
Source§impl VisitorVTable<ZigZagArray> for ZigZagEncoding
impl VisitorVTable<ZigZagArray> for ZigZagEncoding
fn accept( &self, array: &ZigZagArray, visitor: &mut dyn ArrayVisitor, ) -> VortexResult<()>
Auto Trait Implementations§
impl !Freeze for ZigZagArray
impl !RefUnwindSafe for ZigZagArray
impl Send for ZigZagArray
impl Sync for ZigZagArray
impl Unpin for ZigZagArray
impl !UnwindSafe for ZigZagArray
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<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> IntoArrayVariant for Twhere
T: IntoCanonical,
impl<T> IntoArrayVariant for Twhere
T: IntoCanonical,
fn into_null(self) -> Result<NullArray, VortexError>
fn into_bool(self) -> Result<BoolArray, VortexError>
fn into_primitive(self) -> Result<PrimitiveArray, VortexError>
fn into_struct(self) -> Result<StructArray, VortexError>
fn into_list(self) -> Result<ListArray, VortexError>
fn into_varbinview(self) -> Result<VarBinViewArray, VortexError>
fn into_extension(self) -> Result<ExtensionArray, VortexError>
Source§impl<A> IntoCanonical for Awhere
A: IntoArray,
impl<A> IntoCanonical for Awhere
A: IntoArray,
Source§fn into_canonical(self) -> Result<Canonical, VortexError>
fn into_canonical(self) -> Result<Canonical, VortexError>
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.