pub enum AggResult {
Null,
F64(f64),
Decimal {
mantissa: i128,
scale: u8,
},
}Expand description
One aggregate’s result, in the type that keeps it exact.
Every column type but decimal reduces to an f64, which is what it
already was. A decimal column stays a decimal all the way to the output
array: sum, min, max, first and last over exact values are
themselves exact, and turning them into a double on the way out would
undo the whole point of the column.
Variants§
Null
SQL NULL — an empty bucket, or a result that overflowed.
F64(f64)
A floating-point result.
Decimal
An exact decimal result: mantissa × 10⁻ˢᶜᵃˡᵉ.
Implementations§
Trait Implementations§
impl Copy for AggResult
impl StructuralPartialEq for AggResult
Auto Trait Implementations§
impl Freeze for AggResult
impl RefUnwindSafe for AggResult
impl Send for AggResult
impl Sync for AggResult
impl Unpin for AggResult
impl UnsafeUnpin for AggResult
impl UnwindSafe for AggResult
Blanket Implementations§
impl<T> Allocation for T
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
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