Struct vortex_fsst::FSSTArray
source · pub struct FSSTArray { /* private fields */ }Implementations§
source§impl FSSTArray
impl FSSTArray
sourcepub fn try_new(dtype: DType, symbols: Array, codes: Array) -> VortexResult<Self>
pub fn try_new(dtype: DType, symbols: Array, codes: Array) -> VortexResult<Self>
Build an FSST array from a set of symbols and codes.
Symbols are 8-bytes and can represent short strings, each of which is assigned a code.
The codes array is a Binary array where each binary datum is a sequence of 8-bit codes.
Each code corresponds either to a symbol, or to the “escape code”,
which tells the decoder to emit the following byte without doing a table lookup.
Trait Implementations§
source§impl AcceptArrayVisitor for FSSTArray
impl AcceptArrayVisitor for FSSTArray
fn accept(&self, _visitor: &mut dyn ArrayVisitor) -> VortexResult<()>
source§impl ArrayCompute for FSSTArray
impl ArrayCompute for FSSTArray
source§fn take(&self) -> Option<&dyn TakeFn>
fn take(&self) -> Option<&dyn TakeFn>
Take a set of indices from an array. This often forces allocations and decoding of
the receiver. Read more
source§fn scalar_at(&self) -> Option<&dyn ScalarAtFn>
fn scalar_at(&self) -> Option<&dyn ScalarAtFn>
Single item indexing on Vortex arrays. Read more
source§fn filter(&self) -> Option<&dyn FilterFn>
fn filter(&self) -> Option<&dyn FilterFn>
Filtering function on arrays of predicates. Read more
source§fn cast(&self) -> Option<&dyn CastFn>
fn cast(&self) -> Option<&dyn CastFn>
Implemented for arrays that can be casted to different types. Read more
source§fn compare(&self) -> Option<&dyn CompareFn>
fn compare(&self) -> Option<&dyn CompareFn>
Binary operator implementation for arrays against other arrays. Read more
source§fn fill_forward(&self) -> Option<&dyn FillForwardFn>
fn fill_forward(&self) -> Option<&dyn FillForwardFn>
Array function that returns new arrays a non-null value is repeated across runs of nulls. Read more
source§fn filter_indices(&self) -> Option<&dyn FilterIndicesFn>
fn filter_indices(&self) -> Option<&dyn FilterIndicesFn>
Filter indices based on a disjunctive normal form relational expression.
TODO(aduffy): remove this function and push implementation into vortex-datafusion.
source§fn subtract_scalar(&self) -> Option<&dyn SubtractScalarFn>
fn subtract_scalar(&self) -> Option<&dyn SubtractScalarFn>
Broadcast subtraction of scalar from Vortex array. Read more
source§fn search_sorted(&self) -> Option<&dyn SearchSortedFn>
fn search_sorted(&self) -> Option<&dyn SearchSortedFn>
Perform a search over an ordered array. Read more
source§impl ArrayStatisticsCompute for FSSTArray
impl ArrayStatisticsCompute for FSSTArray
source§fn compute_statistics(&self, _stat: Stat) -> Result<StatsSet, VortexError>
fn compute_statistics(&self, _stat: Stat) -> Result<StatsSet, VortexError>
Compute the requested statistic. Can return additional stats.
source§impl ArrayValidity for FSSTArray
impl ArrayValidity for FSSTArray
fn is_valid(&self, index: usize) -> bool
fn logical_validity(&self) -> LogicalValidity
source§impl ArrayVariants for FSSTArray
impl ArrayVariants for FSSTArray
fn as_binary_array(&self) -> Option<&dyn BinaryArrayTrait>
fn as_utf8_array(&self) -> Option<&dyn Utf8ArrayTrait>
fn as_null_array(&self) -> Option<&dyn NullArrayTrait>
fn as_null_array_unchecked(&self) -> &dyn NullArrayTrait
fn as_bool_array(&self) -> Option<&dyn BoolArrayTrait>
fn as_bool_array_unchecked(&self) -> &dyn BoolArrayTrait
fn as_primitive_array(&self) -> Option<&dyn PrimitiveArrayTrait>
fn as_primitive_array_unchecked(&self) -> &dyn PrimitiveArrayTrait
fn as_utf8_array_unchecked(&self) -> &dyn Utf8ArrayTrait
fn as_binary_array_unchecked(&self) -> &dyn BinaryArrayTrait
fn as_struct_array(&self) -> Option<&dyn StructArrayTrait>
fn as_struct_array_unchecked(&self) -> &dyn StructArrayTrait
fn as_list_array(&self) -> Option<&dyn ListArrayTrait>
fn as_list_array_unchecked(&self) -> &dyn ListArrayTrait
fn as_extension_array(&self) -> Option<&dyn ExtensionArrayTrait>
fn as_extension_array_unchecked(&self) -> &dyn ExtensionArrayTrait
source§impl From<TypedArray<FSST>> for FSSTArray
impl From<TypedArray<FSST>> for FSSTArray
source§fn from(typed: TypedArray<FSST>) -> Self
fn from(typed: TypedArray<FSST>) -> Self
Converts to this type from the input type.
source§impl GetArrayMetadata for FSSTArray
impl GetArrayMetadata for FSSTArray
fn metadata(&self) -> Arc<dyn ArrayMetadata>
source§impl IntoCanonical for FSSTArray
impl IntoCanonical for FSSTArray
fn into_canonical(self) -> VortexResult<Canonical>
source§impl ScalarAtFn for FSSTArray
impl ScalarAtFn for FSSTArray
impl BinaryArrayTrait for FSSTArray
impl Utf8ArrayTrait for FSSTArray
Auto Trait Implementations§
impl !Freeze for FSSTArray
impl !RefUnwindSafe for FSSTArray
impl Send for FSSTArray
impl Sync for FSSTArray
impl Unpin for FSSTArray
impl !UnwindSafe for FSSTArray
Blanket Implementations§
source§impl<T> ArrayEncodingRef for Twhere
T: AsArray,
impl<T> ArrayEncodingRef for Twhere
T: AsArray,
fn encoding(&self) -> &'static dyn ArrayEncoding
source§impl<T> ArrayStatistics for Twhere
T: AsArray,
impl<T> ArrayStatistics for Twhere
T: AsArray,
fn statistics(&self) -> &dyn Statistics
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)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_varbin(self) -> Result<VarBinArray, VortexError>
fn into_extension(self) -> Result<ExtensionArray, 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>
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 more