pub struct StatsSet { /* private fields */ }
Implementations§
Source§impl StatsSet
impl StatsSet
Sourcepub fn new_unchecked(values: Vec<(Stat, Precision<ScalarValue>)>) -> Self
pub fn new_unchecked(values: Vec<(Stat, Precision<ScalarValue>)>) -> Self
Create new StatSet without validating uniqueness of all the entries
§Safety
This method will not panic or trigger UB, but may lead to duplicate stats being stored.
Sourcepub fn of(stat: Stat, value: Precision<ScalarValue>) -> Self
pub fn of(stat: Stat, value: Precision<ScalarValue>) -> Self
Create StatsSet from single stat and value
Sourcepub fn as_mut_typed_ref<'a, 'b>(
&'a mut self,
dtype: &'b DType,
) -> MutTypedStatsSetRef<'a, 'b>
pub fn as_mut_typed_ref<'a, 'b>( &'a mut self, dtype: &'b DType, ) -> MutTypedStatsSetRef<'a, 'b>
Wrap stats set with a dtype for mutable typed scalar access
Sourcepub fn as_typed_ref<'a, 'b>(
&'a self,
dtype: &'b DType,
) -> TypedStatsSetRef<'a, 'b>
pub fn as_typed_ref<'a, 'b>( &'a self, dtype: &'b DType, ) -> TypedStatsSetRef<'a, 'b>
Wrap stats set with a dtype for typed scalar access
Source§impl StatsSet
impl StatsSet
Sourcepub fn set(&mut self, stat: Stat, value: Precision<ScalarValue>)
pub fn set(&mut self, stat: Stat, value: Precision<ScalarValue>)
Set the stat stat
to value
.
Sourcepub fn retain_only(&mut self, stats: &[Stat])
pub fn retain_only(&mut self, stats: &[Stat])
Only keep given stats
Sourcepub fn keep_inexact_stats(self, inexact_keep: &[Stat]) -> Self
pub fn keep_inexact_stats(self, inexact_keep: &[Stat]) -> Self
Keep given stats as inexact values
Source§impl StatsSet
Merge helpers
impl StatsSet
Merge helpers
Sourcepub fn merge_ordered(self, other: &Self, dtype: &DType) -> Self
pub fn merge_ordered(self, other: &Self, dtype: &DType) -> Self
Merge stats set other
into self
, with the semantic assumption that other
contains stats from a disjoint array that is appended to the array represented by self
.
Sourcepub fn merge_unordered(self, other: &Self, dtype: &DType) -> Self
pub fn merge_unordered(self, other: &Self, dtype: &DType) -> Self
Merge stats set other
into self
, from a disjoint array, with no ordering assumptions.
Stats that are not commutative (e.g., is_sorted) are dropped from the result.
Sourcepub fn combine_sets(&mut self, other: &Self, dtype: &DType) -> VortexResult<()>
pub fn combine_sets(&mut self, other: &Self, dtype: &DType) -> VortexResult<()>
Given two sets of stats (of differing precision) for the same array, combine them
Trait Implementations§
Source§impl Extend<(Stat, Precision<ScalarValue>)> for StatsSet
impl Extend<(Stat, Precision<ScalarValue>)> for StatsSet
Source§fn extend<T: IntoIterator<Item = (Stat, Precision<ScalarValue>)>>(
&mut self,
iter: T,
)
fn extend<T: IntoIterator<Item = (Stat, Precision<ScalarValue>)>>( &mut self, iter: T, )
Source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)Source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)Source§impl From<ArrayStats> for StatsSet
impl From<ArrayStats> for StatsSet
Source§fn from(value: ArrayStats) -> Self
fn from(value: ArrayStats) -> Self
Source§impl From<StatsSet> for ArrayStats
impl From<StatsSet> for ArrayStats
Source§impl FromIterator<(Stat, Precision<ScalarValue>)> for StatsSet
impl FromIterator<(Stat, Precision<ScalarValue>)> for StatsSet
Source§fn from_iter<T: IntoIterator<Item = (Stat, Precision<ScalarValue>)>>(
iter: T,
) -> Self
fn from_iter<T: IntoIterator<Item = (Stat, Precision<ScalarValue>)>>( iter: T, ) -> Self
Source§impl IntoIterator for StatsSet
impl IntoIterator for StatsSet
Source§impl ReadFlatBuffer for StatsSet
impl ReadFlatBuffer for StatsSet
Source§type Source<'a> = ArrayStats<'a>
type Source<'a> = ArrayStats<'a>
Source§type Error = VortexError
type Error = VortexError
Source§impl WriteFlatBuffer for StatsSet
impl WriteFlatBuffer for StatsSet
Source§fn write_flatbuffer<'fb>(
&self,
fbb: &mut FlatBufferBuilder<'fb>,
) -> WIPOffset<Self::Target<'fb>>
fn write_flatbuffer<'fb>( &self, fbb: &mut FlatBufferBuilder<'fb>, ) -> WIPOffset<Self::Target<'fb>>
All statistics written must be exact
Source§type Target<'t> = ArrayStats<'t>
type Target<'t> = ArrayStats<'t>
Auto Trait Implementations§
impl Freeze for StatsSet
impl RefUnwindSafe for StatsSet
impl Send for StatsSet
impl Sync for StatsSet
impl Unpin for StatsSet
impl UnwindSafe for StatsSet
Blanket Implementations§
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> 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 more