Struct VarBinViewArray

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

Implementations§

Source§

impl VarBinViewArray

Source

pub fn try_new( views: Buffer<BinaryView>, buffers: Vec<ByteBuffer>, dtype: DType, validity: Validity, ) -> VortexResult<Self>

Source

pub fn nbuffers(&self) -> usize

Number of raw string data buffers held by this array.

Source

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 buffers OR an inlined copy of the string (if the string has 12 bytes or fewer).

Source

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

Source

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.

Source

pub fn buffers(&self) -> &[ByteBuffer]

Iterate over the underlying raw data buffers, not including the views buffer.

Source

pub fn validity(&self) -> &Validity

Validity of the array

Source

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.

Source

pub fn from_iter_str<T: AsRef<str>, I: IntoIterator<Item = T>>(iter: I) -> Self

Source

pub fn from_iter_nullable_str<T: AsRef<str>, I: IntoIterator<Item = Option<T>>>( iter: I, ) -> Self

Source

pub fn from_iter_bin<T: AsRef<[u8]>, I: IntoIterator<Item = T>>(iter: I) -> Self

Source

pub fn from_iter_nullable_bin<T: AsRef<[u8]>, I: IntoIterator<Item = Option<T>>>( iter: I, ) -> Self

Trait Implementations§

Source§

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>

Iterate over each element of the array, in-order. Read more
Source§

impl ArrayCanonicalImpl for VarBinViewArray

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 ArrayImpl for VarBinViewArray

Source§

impl ArrayStatisticsImpl for VarBinViewArray

Source§

impl ArrayValidityImpl for VarBinViewArray

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 VarBinViewArray

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_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_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 for VarBinViewArray

Source§

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

Source§

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

Source§

fn _metadata(&self) -> EmptyMetadata

Source§

fn _nbuffers(&self) -> usize

Source§

fn _nchildren(&self) -> usize

Source§

impl CastFn<&VarBinViewArray> for VarBinViewEncoding

Source§

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

Source§

impl Clone for VarBinViewArray

Source§

fn clone(&self) -> VarBinViewArray

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 VarBinViewArray

Source§

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

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

impl<'a> FromIterator<Option<&'a [u8]>> for VarBinViewArray

Source§

fn from_iter<T: IntoIterator<Item = Option<&'a [u8]>>>(iter: T) -> Self

Creates a value from an iterator. Read more
Source§

impl<'a> FromIterator<Option<&'a str>> for VarBinViewArray

Source§

fn from_iter<T: IntoIterator<Item = Option<&'a str>>>(iter: T) -> Self

Creates a value from an iterator. Read more
Source§

impl FromIterator<Option<String>> for VarBinViewArray

Source§

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

Creates a value from an iterator. Read more
Source§

impl FromIterator<Option<Vec<u8>>> for VarBinViewArray

Source§

fn from_iter<T: IntoIterator<Item = Option<Vec<u8>>>>(iter: T) -> Self

Creates a value from an iterator. Read more
Source§

impl IsConstantFn<&VarBinViewArray> for VarBinViewEncoding

Source§

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

Preconditions Read more
Source§

impl MaskFn<&VarBinViewArray> for VarBinViewEncoding

Source§

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

Replace masked values with null in array.
Source§

impl MinMaxFn<&VarBinViewArray> for VarBinViewEncoding

Source§

impl ScalarAtFn<&VarBinViewArray> for VarBinViewEncoding

Source§

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

Source§

impl SerdeVTable<&VarBinViewArray> for VarBinViewEncoding

Source§

fn decode( &self, parts: &ArrayParts, ctx: &ArrayContext, dtype: DType, len: usize, ) -> VortexResult<ArrayRef>

Decode an ArrayParts into an ArrayRef of this encoding.
Source§

impl SliceFn<&VarBinViewArray> for VarBinViewEncoding

Source§

fn slice( &self, array: &VarBinViewArray, 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 StatisticsVTable<&VarBinViewArray> for VarBinViewEncoding

Source§

fn compute_statistics( &self, array: &VarBinViewArray, stat: Stat, ) -> VortexResult<StatsSet>

Compute the requested statistic. Can return additional stats.
Source§

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: &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: &VarBinViewArray, 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<&VarBinViewArray> for VarBinViewEncoding

Source§

fn to_arrow( &self, array: &VarBinViewArray, 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<Arc<dyn Array>> for VarBinViewArray

Source§

type Error = VortexError

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

fn try_from(value: ArrayRef) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl UncompressedSizeFn<&VarBinViewArray> for VarBinViewEncoding

Source§

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

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

impl BinaryArrayTrait for VarBinViewArray

Source§

impl Utf8ArrayTrait for VarBinViewArray

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 + Send + Sync>

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 statistics(&self) -> StatsSetRef<'_>

Returns the statistics of the array.
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§

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 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, dst: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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§

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