pub struct VarBinViewArray(/* private fields */);
Implementations§
Source§impl VarBinViewArray
impl VarBinViewArray
pub fn try_new( views: Buffer<BinaryView>, buffers: Vec<ByteBuffer>, dtype: DType, validity: Validity, ) -> VortexResult<Self>
Sourcepub fn views(&self) -> Buffer<BinaryView>
pub fn views(&self) -> Buffer<BinaryView>
Access to the primitive views buffer.
Variable-sized binary view buffer contain a “view” child array, with 16-byte entries that
contain either a pointer into one of the array’s owned buffer
s OR an inlined copy of
the string (if the string has 12 bytes or fewer).
Sourcepub fn bytes_at(&self, index: usize) -> ByteBuffer
pub fn bytes_at(&self, index: usize) -> ByteBuffer
Access value bytes at a given index
Will return a bytebuffer pointing to the underlying data without performing a copy
Sourcepub fn buffer(&self, idx: usize) -> ByteBuffer
pub fn buffer(&self, idx: usize) -> ByteBuffer
Access one of the backing data buffers.
§Panics
This method panics if the provided index is out of bounds for the set of buffers provided at construction time.
Sourcepub fn buffers(&self) -> impl Iterator<Item = ByteBuffer> + '_
pub fn buffers(&self) -> impl Iterator<Item = ByteBuffer> + '_
Iterate over the underlying raw data buffers, not including the views buffer.
Sourcepub fn from_iter<T: AsRef<[u8]>, I: IntoIterator<Item = Option<T>>>(
iter: I,
dtype: DType,
) -> Self
pub fn from_iter<T: AsRef<[u8]>, I: IntoIterator<Item = Option<T>>>( iter: I, dtype: DType, ) -> Self
Accumulate an iterable set of values into our type here.
pub fn from_iter_str<T: AsRef<str>, I: IntoIterator<Item = T>>(iter: I) -> Self
pub fn from_iter_nullable_str<T: AsRef<str>, I: IntoIterator<Item = Option<T>>>( iter: I, ) -> Self
pub fn from_iter_bin<T: AsRef<[u8]>, I: IntoIterator<Item = T>>(iter: I) -> Self
pub fn from_iter_nullable_bin<T: AsRef<[u8]>, I: IntoIterator<Item = Option<T>>>( iter: I, ) -> Self
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, ) -> VortexResult<Self>
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<&ByteBuffer>
pub fn byte_buffers(&self) -> impl Iterator<Item = ByteBuffer> + '_
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: Encoding>(&self) -> VortexResult<(&E::Array, &E)>
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) -> VortexResult<bool>
pub fn is_valid(&self, index: usize) -> VortexResult<bool>
Return whether the element at the given index is valid (true) or null (false).
Sourcepub fn null_count(&self) -> VortexResult<usize>
pub fn null_count(&self) -> VortexResult<usize>
Return the number of null elements in the array.
Sourcepub fn logical_validity(&self) -> VortexResult<Mask>
pub fn logical_validity(&self) -> VortexResult<Mask>
Return the logical validity of the array if nullable, and None if non-nullable.
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>
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>
pub fn as_list_array(&self) -> Option<&dyn ListArrayTrait>
pub fn as_extension_array(&self) -> Option<&dyn ExtensionArrayTrait>
Trait Implementations§
Source§impl ArrayAccessor<[u8]> for VarBinViewArray
impl ArrayAccessor<[u8]> for VarBinViewArray
Source§fn with_iterator<F: for<'a> FnOnce(&mut dyn Iterator<Item = Option<&'a [u8]>>) -> R, R>(
&self,
f: F,
) -> VortexResult<R>
fn with_iterator<F: for<'a> FnOnce(&mut dyn Iterator<Item = Option<&'a [u8]>>) -> R, R>( &self, f: F, ) -> VortexResult<R>
Source§impl AsRef<Array> for VarBinViewArray
impl AsRef<Array> for VarBinViewArray
Source§impl CanonicalVTable<VarBinViewArray> for VarBinViewEncoding
impl CanonicalVTable<VarBinViewArray> for VarBinViewEncoding
fn into_canonical(&self, array: VarBinViewArray) -> VortexResult<Canonical>
Source§impl Clone for VarBinViewArray
impl Clone for VarBinViewArray
Source§fn clone(&self) -> VarBinViewArray
fn clone(&self) -> VarBinViewArray
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for VarBinViewArray
impl Debug for VarBinViewArray
Source§impl Deref for VarBinViewArray
impl Deref for VarBinViewArray
Source§impl<'a> FromIterator<Option<&'a [u8]>> for VarBinViewArray
impl<'a> FromIterator<Option<&'a [u8]>> for VarBinViewArray
Source§impl<'a> FromIterator<Option<&'a str>> for VarBinViewArray
impl<'a> FromIterator<Option<&'a str>> for VarBinViewArray
Source§impl FromIterator<Option<String>> for VarBinViewArray
impl FromIterator<Option<String>> for VarBinViewArray
Source§impl FromIterator<Option<Vec<u8>>> for VarBinViewArray
impl FromIterator<Option<Vec<u8>>> for VarBinViewArray
Source§impl IntoArray for VarBinViewArray
impl IntoArray for VarBinViewArray
fn into_array(self) -> Array
Source§impl ScalarAtFn<VarBinViewArray> for VarBinViewEncoding
impl ScalarAtFn<VarBinViewArray> for VarBinViewEncoding
fn scalar_at( &self, array: &VarBinViewArray, index: usize, ) -> VortexResult<Scalar>
Source§impl SliceFn<VarBinViewArray> for VarBinViewEncoding
impl SliceFn<VarBinViewArray> for VarBinViewEncoding
Source§fn slice(
&self,
array: &VarBinViewArray,
start: usize,
stop: usize,
) -> VortexResult<Array>
fn slice( &self, array: &VarBinViewArray, 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<VarBinViewArray> for VarBinViewEncoding
impl StatisticsVTable<VarBinViewArray> for VarBinViewEncoding
Source§fn compute_statistics(
&self,
array: &VarBinViewArray,
stat: Stat,
) -> VortexResult<StatsSet>
fn compute_statistics( &self, array: &VarBinViewArray, stat: Stat, ) -> VortexResult<StatsSet>
Source§impl TakeFn<VarBinViewArray> for VarBinViewEncoding
Take involves creating a new array that references the old array, just with the given set of views.
impl TakeFn<VarBinViewArray> for VarBinViewEncoding
Take involves creating a new array that references the old array, just with the given set of views.
Source§fn take(&self, array: &VarBinViewArray, indices: &Array) -> VortexResult<Array>
fn take(&self, array: &VarBinViewArray, indices: &Array) -> VortexResult<Array>
Source§unsafe fn take_unchecked(
&self,
array: &VarBinViewArray,
indices: &Array,
) -> VortexResult<Array>
unsafe fn take_unchecked( &self, array: &VarBinViewArray, indices: &Array, ) -> VortexResult<Array>
Source§impl ToArrowFn<VarBinViewArray> for VarBinViewEncoding
impl ToArrowFn<VarBinViewArray> for VarBinViewEncoding
Source§fn to_arrow(
&self,
array: &VarBinViewArray,
data_type: &DataType,
) -> VortexResult<Option<ArrayRef>>
fn to_arrow( &self, array: &VarBinViewArray, data_type: &DataType, ) -> VortexResult<Option<ArrayRef>>
Source§fn preferred_arrow_data_type(
&self,
_array: &A,
) -> VortexResult<Option<DataType>>
fn preferred_arrow_data_type( &self, _array: &A, ) -> VortexResult<Option<DataType>>
DataType
of the encoding, or None of the canonical
DataType
for the array’s Vortex vortex_dtype::DType
should be used.Source§impl<'a> TryFrom<&'a Array> for &'a VarBinViewArray
impl<'a> TryFrom<&'a Array> for &'a VarBinViewArray
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 VarBinViewArray
impl TryFrom<Array> for VarBinViewArray
Source§type Error = VortexError
type Error = VortexError
Source§fn try_from(data: Array) -> VortexResult<Self>
fn try_from(data: Array) -> VortexResult<Self>
Source§impl ValidityVTable<VarBinViewArray> for VarBinViewEncoding
impl ValidityVTable<VarBinViewArray> for VarBinViewEncoding
Source§fn is_valid(&self, array: &VarBinViewArray, index: usize) -> VortexResult<bool>
fn is_valid(&self, array: &VarBinViewArray, index: usize) -> VortexResult<bool>
index
item is valid.fn logical_validity(&self, array: &VarBinViewArray) -> VortexResult<Mask>
Source§fn null_count(&self, array: &Array) -> VortexResult<usize>
fn null_count(&self, array: &Array) -> VortexResult<usize>
Source§impl VariantsVTable<VarBinViewArray> for VarBinViewEncoding
impl VariantsVTable<VarBinViewArray> for VarBinViewEncoding
fn as_utf8_array<'a>( &self, array: &'a VarBinViewArray, ) -> Option<&'a dyn Utf8ArrayTrait>
fn as_binary_array<'a>( &self, array: &'a VarBinViewArray, ) -> Option<&'a dyn BinaryArrayTrait>
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_primitive_array<'a>( &self, _array: &'a Array, ) -> Option<&'a dyn PrimitiveArrayTrait>
fn as_struct_array<'a>( &self, _array: &'a Array, ) -> Option<&'a dyn StructArrayTrait>
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>
Source§impl VisitorVTable<VarBinViewArray> for VarBinViewEncoding
impl VisitorVTable<VarBinViewArray> for VarBinViewEncoding
fn accept( &self, array: &VarBinViewArray, visitor: &mut dyn ArrayVisitor, ) -> VortexResult<()>
impl BinaryArrayTrait for VarBinViewArray
impl Utf8ArrayTrait for VarBinViewArray
Auto Trait Implementations§
impl !Freeze for VarBinViewArray
impl !RefUnwindSafe for VarBinViewArray
impl Send for VarBinViewArray
impl Sync for VarBinViewArray
impl Unpin for VarBinViewArray
impl !UnwindSafe for VarBinViewArray
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.