pub struct FSSTArray(/* private fields */);Implementations§
Source§impl FSSTArray
impl FSSTArray
Sourcepub fn try_new(
dtype: DType,
symbols: ArrayData,
symbol_lengths: ArrayData,
codes: ArrayData,
uncompressed_lengths: ArrayData,
) -> VortexResult<Self>
pub fn try_new( dtype: DType, symbols: ArrayData, symbol_lengths: ArrayData, codes: ArrayData, uncompressed_lengths: ArrayData, ) -> 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.
Sourcepub fn symbol_lengths(&self) -> ArrayData
pub fn symbol_lengths(&self) -> ArrayData
Access the symbol table array
Sourcepub fn codes_dtype(&self) -> DType
pub fn codes_dtype(&self) -> DType
Get the DType of the codes array
Sourcepub fn uncompressed_lengths(&self) -> ArrayData
pub fn uncompressed_lengths(&self) -> ArrayData
Get the uncompressed length for each element in the array.
Sourcepub fn uncompressed_lengths_dtype(&self) -> DType
pub fn uncompressed_lengths_dtype(&self) -> DType
Get the DType of the uncompressed lengths array
Trait Implementations§
Source§impl CompareFn<FSSTArray> for FSSTEncoding
impl CompareFn<FSSTArray> for FSSTEncoding
Source§impl FilterFn<FSSTArray> for FSSTEncoding
impl FilterFn<FSSTArray> for FSSTEncoding
Source§fn filter(&self, array: &FSSTArray, mask: FilterMask) -> VortexResult<ArrayData>
fn filter(&self, array: &FSSTArray, mask: FilterMask) -> VortexResult<ArrayData>
Filter an array by the provided predicate.
Source§impl IntoArrayData for FSSTArray
impl IntoArrayData for FSSTArray
fn into_array(self) -> ArrayData
Source§impl IntoCanonical for FSSTArray
impl IntoCanonical for FSSTArray
fn into_canonical(self) -> VortexResult<Canonical>
fn into_arrow(self) -> Result<Arc<dyn Array>, VortexError>where
Self: Sized,
Source§impl ScalarAtFn<FSSTArray> for FSSTEncoding
impl ScalarAtFn<FSSTArray> for FSSTEncoding
Source§impl SliceFn<FSSTArray> for FSSTEncoding
impl SliceFn<FSSTArray> for FSSTEncoding
Source§fn slice(
&self,
array: &FSSTArray,
start: usize,
stop: usize,
) -> VortexResult<ArrayData>
fn slice( &self, array: &FSSTArray, start: usize, stop: usize, ) -> VortexResult<ArrayData>
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<FSSTArray> for FSSTEncoding
impl StatisticsVTable<FSSTArray> for FSSTEncoding
Source§fn compute_statistics(
&self,
_array: &Array,
_stat: Stat,
) -> Result<StatsSet, VortexError>
fn compute_statistics( &self, _array: &Array, _stat: Stat, ) -> Result<StatsSet, VortexError>
Compute the requested statistic. Can return additional stats.
Source§impl TakeFn<FSSTArray> for FSSTEncoding
impl TakeFn<FSSTArray> for FSSTEncoding
Source§unsafe fn take_unchecked(
&self,
array: &Array,
indices: &ArrayData,
) -> Result<ArrayData, VortexError>
unsafe fn take_unchecked( &self, array: &Array, indices: &ArrayData, ) -> Result<ArrayData, VortexError>
Source§impl<'a> TryFrom<&'a ArrayData> for &'a FSSTArray
impl<'a> TryFrom<&'a ArrayData> for &'a FSSTArray
Source§type Error = VortexError
type Error = VortexError
The type returned in the event of a conversion error.
Source§fn try_from(data: &'a ArrayData) -> VortexResult<Self>
fn try_from(data: &'a ArrayData) -> VortexResult<Self>
Performs the conversion.
Source§impl TryFrom<ArrayData> for FSSTArray
impl TryFrom<ArrayData> for FSSTArray
Source§type Error = VortexError
type Error = VortexError
The type returned in the event of a conversion error.
Source§fn try_from(data: ArrayData) -> VortexResult<Self>
fn try_from(data: ArrayData) -> VortexResult<Self>
Performs the conversion.
Source§impl ValidityVTable<FSSTArray> for FSSTEncoding
impl ValidityVTable<FSSTArray> for FSSTEncoding
Source§impl VariantsVTable<FSSTArray> for FSSTEncoding
impl VariantsVTable<FSSTArray> for FSSTEncoding
fn as_utf8_array<'a>( &self, array: &'a FSSTArray, ) -> Option<&'a dyn Utf8ArrayTrait>
fn as_binary_array<'a>( &self, array: &'a FSSTArray, ) -> 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<FSSTArray> for FSSTEncoding
impl VisitorVTable<FSSTArray> for FSSTEncoding
fn accept( &self, array: &FSSTArray, visitor: &mut dyn ArrayVisitor, ) -> VortexResult<()>
impl ArrayTrait 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 T
impl<T> ArrayEncodingRef for T
fn encoding(&self) -> &'static dyn EncodingVTable
Source§impl<A> ArrayNBytes for A
impl<A> ArrayNBytes for A
Source§impl<T> ArrayStatistics for T
impl<T> ArrayStatistics for T
fn statistics(&self) -> &dyn Statistics
fn inherit_statistics(&self, parent: &dyn Statistics)
Source§impl<A> ArrayValidity for A
impl<A> ArrayValidity for A
Source§fn is_valid(&self, index: usize) -> bool
fn is_valid(&self, index: usize) -> bool
Return whether the element at the given index is valid (true) or null (false).
Source§fn logical_validity(&self) -> LogicalValidity
fn logical_validity(&self) -> LogicalValidity
Return the logical validity of the array.
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§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<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