pub struct StructEncoding;
Expand description
The array encoding
Implementations§
Trait Implementations§
Source§impl CanonicalVTable<StructArray> for StructEncoding
impl CanonicalVTable<StructArray> for StructEncoding
Source§fn into_canonical(&self, array: StructArray) -> VortexResult<Canonical>
fn into_canonical(&self, array: StructArray) -> VortexResult<Canonical>
StructEncoding is the canonical form for a DType::Struct array, so return self.
Source§impl ComputeVTable for StructEncoding
impl ComputeVTable for StructEncoding
Source§fn filter_fn(&self) -> Option<&dyn FilterFn<Array>>
fn filter_fn(&self) -> Option<&dyn FilterFn<Array>>
Filter an array with a given mask. Read more
Source§fn scalar_at_fn(&self) -> Option<&dyn ScalarAtFn<Array>>
fn scalar_at_fn(&self) -> Option<&dyn ScalarAtFn<Array>>
Single item indexing on Vortex arrays. Read more
Source§fn slice_fn(&self) -> Option<&dyn SliceFn<Array>>
fn slice_fn(&self) -> Option<&dyn SliceFn<Array>>
Perform zero-copy slicing of an array. Read more
Source§fn take_fn(&self) -> Option<&dyn TakeFn<Array>>
fn take_fn(&self) -> Option<&dyn TakeFn<Array>>
Take a set of indices from an array. This often forces allocations and decoding of
the receiver. Read more
Source§fn to_arrow_fn(&self) -> Option<&dyn ToArrowFn<Array>>
fn to_arrow_fn(&self) -> Option<&dyn ToArrowFn<Array>>
Convert the array to an Arrow array of the given type. Read more
Source§fn binary_boolean_fn(&self) -> Option<&dyn BinaryBooleanFn<Array>>
fn binary_boolean_fn(&self) -> Option<&dyn BinaryBooleanFn<Array>>
Implementation of binary boolean logic operations. Read more
Source§fn binary_numeric_fn(&self) -> Option<&dyn BinaryNumericFn<Array>>
fn binary_numeric_fn(&self) -> Option<&dyn BinaryNumericFn<Array>>
Implementation of binary numeric operations. Read more
Source§fn cast_fn(&self) -> Option<&dyn CastFn<Array>>
fn cast_fn(&self) -> Option<&dyn CastFn<Array>>
Implemented for arrays that can be casted to different types. Read more
Source§fn compare_fn(&self) -> Option<&dyn CompareFn<Array>>
fn compare_fn(&self) -> Option<&dyn CompareFn<Array>>
Binary operator implementation for arrays against other arrays. Read more
Source§fn fill_forward_fn(&self) -> Option<&dyn FillForwardFn<Array>>
fn fill_forward_fn(&self) -> Option<&dyn FillForwardFn<Array>>
Array function that returns new arrays a non-null value is repeated across runs of nulls. Read more
Source§fn fill_null_fn(&self) -> Option<&dyn FillNullFn<Array>>
fn fill_null_fn(&self) -> Option<&dyn FillNullFn<Array>>
Fill null values with given desired value. Resulting array is NonNullable Read more
Source§fn invert_fn(&self) -> Option<&dyn InvertFn<Array>>
fn invert_fn(&self) -> Option<&dyn InvertFn<Array>>
Invert a boolean array. Converts true -> false, false -> true, null -> null. Read more
Source§fn like_fn(&self) -> Option<&dyn LikeFn<Array>>
fn like_fn(&self) -> Option<&dyn LikeFn<Array>>
Perform a SQL LIKE operation on two arrays. Read more
Source§fn search_sorted_fn(&self) -> Option<&dyn SearchSortedFn<Array>>
fn search_sorted_fn(&self) -> Option<&dyn SearchSortedFn<Array>>
Perform a search over an ordered array. Read more
Source§fn search_sorted_usize_fn(&self) -> Option<&dyn SearchSortedUsizeFn<Array>>
fn search_sorted_usize_fn(&self) -> Option<&dyn SearchSortedUsizeFn<Array>>
Perform a search over an ordered array. Read more
Source§impl Debug for StructEncoding
impl Debug for StructEncoding
Source§impl Encoding for StructEncoding
impl Encoding for StructEncoding
const ID: EncodingId
type Array = StructArray
type Metadata = RkyvMetadata<StructMetadata>
Source§impl EncodingVTable for StructEncoding
impl EncodingVTable for StructEncoding
Source§impl FilterFn<StructArray> for StructEncoding
impl FilterFn<StructArray> for StructEncoding
Source§fn filter(&self, array: &StructArray, mask: &Mask) -> VortexResult<Array>
fn filter(&self, array: &StructArray, mask: &Mask) -> VortexResult<Array>
Filter an array by the provided predicate. Read more
Source§impl ScalarAtFn<StructArray> for StructEncoding
impl ScalarAtFn<StructArray> for StructEncoding
fn scalar_at(&self, array: &StructArray, index: usize) -> VortexResult<Scalar>
Source§impl SliceFn<StructArray> for StructEncoding
impl SliceFn<StructArray> for StructEncoding
Source§fn slice(
&self,
array: &StructArray,
start: usize,
stop: usize,
) -> VortexResult<Array>
fn slice( &self, array: &StructArray, start: usize, stop: usize, ) -> VortexResult<Array>
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<StructArray> for StructEncoding
impl StatisticsVTable<StructArray> for StructEncoding
Source§fn compute_statistics(
&self,
array: &StructArray,
stat: Stat,
) -> VortexResult<StatsSet>
fn compute_statistics( &self, array: &StructArray, stat: Stat, ) -> VortexResult<StatsSet>
Compute the requested statistic. Can return additional stats.
Source§impl TakeFn<StructArray> for StructEncoding
impl TakeFn<StructArray> for StructEncoding
Source§fn take(&self, array: &StructArray, indices: &Array) -> VortexResult<Array>
fn take(&self, array: &StructArray, indices: &Array) -> VortexResult<Array>
Source§unsafe fn take_unchecked(
&self,
array: &A,
indices: &Array,
) -> VortexResult<Array>
unsafe fn take_unchecked( &self, array: &A, indices: &Array, ) -> VortexResult<Array>
Source§impl ToArrowFn<StructArray> for StructEncoding
impl ToArrowFn<StructArray> for StructEncoding
Source§fn to_arrow(
&self,
array: &StructArray,
data_type: &DataType,
) -> VortexResult<Option<ArrayRef>>
fn to_arrow( &self, array: &StructArray, 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>>
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 ValidateVTable<StructArray> for StructEncoding
impl ValidateVTable<StructArray> for StructEncoding
Source§impl ValidityVTable<StructArray> for StructEncoding
impl ValidityVTable<StructArray> for StructEncoding
Source§fn is_valid(&self, array: &StructArray, index: usize) -> VortexResult<bool>
fn is_valid(&self, array: &StructArray, index: usize) -> VortexResult<bool>
Returns whether the
index
item is valid.Source§fn all_valid(&self, array: &StructArray) -> VortexResult<bool>
fn all_valid(&self, array: &StructArray) -> VortexResult<bool>
Returns whether the array is all valid. Read more
fn validity_mask(&self, array: &StructArray) -> VortexResult<Mask>
Source§fn invalid_count(&self, array: &Array) -> VortexResult<usize>
fn invalid_count(&self, array: &Array) -> VortexResult<usize>
Returns the number of invalid elements in the array.
Source§impl VariantsVTable<StructArray> for StructEncoding
impl VariantsVTable<StructArray> for StructEncoding
fn as_struct_array<'a>( &self, array: &'a StructArray, ) -> Option<&'a dyn StructArrayTrait>
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_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_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<StructArray> for StructEncoding
impl VisitorVTable<StructArray> for StructEncoding
fn accept( &self, array: &StructArray, visitor: &mut dyn ArrayVisitor, ) -> VortexResult<()>
Auto Trait Implementations§
impl Freeze for StructEncoding
impl RefUnwindSafe for StructEncoding
impl Send for StructEncoding
impl Sync for StructEncoding
impl Unpin for StructEncoding
impl UnwindSafe for StructEncoding
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
Mutably borrows from an owned value. Read more
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>
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 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>
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 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>
Returns the layout of the type.
Source§impl<E> MetadataVTable<Array> for Ewhere
E: Encoding,
impl<E> MetadataVTable<Array> for Ewhere
E: Encoding,
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
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out
indicating that a T
is niched.