pub struct LastValueAggregator { /* private fields */ }Expand description
LAST_VALUE aggregator - returns the last value seen in a window.
Tracks the value with the latest timestamp in the window. For deterministic results, uses event timestamp, not arrival order. When timestamps are equal, the later arrival wins.
§Example
use laminar_core::operator::window::LastValueAggregator;
// Track last (closing) price by timestamp
let last_price = LastValueAggregator::new(0, 1); // price col 0, timestamp col 1Implementations§
Trait Implementations§
Source§impl Aggregator for LastValueAggregator
impl Aggregator for LastValueAggregator
Source§type Acc = LastValueAccumulator
type Acc = LastValueAccumulator
The accumulator type used by this aggregator.
Source§fn create_accumulator(&self) -> LastValueAccumulator
fn create_accumulator(&self) -> LastValueAccumulator
Creates a new empty accumulator.
Source§fn extract(&self, event: &Event) -> Option<(i64, i64)>
fn extract(&self, event: &Event) -> Option<(i64, i64)>
Extracts a value from an event to be aggregated. Read more
Source§fn output_data_type(&self) -> DataType
fn output_data_type(&self) -> DataType
Returns the Arrow [
DataType] for this aggregator’s output. Read moreSource§fn output_nullable(&self) -> bool
fn output_nullable(&self) -> bool
Returns whether the output is nullable (e.g., empty windows produce null). Read more
Source§fn extract_batch(
&self,
event: &Event,
) -> SmallVec<[<Self::Acc as Accumulator>::Input; 4]>
fn extract_batch( &self, event: &Event, ) -> SmallVec<[<Self::Acc as Accumulator>::Input; 4]>
Extracts all values from a multi-row batch event. Read more
Source§impl Clone for LastValueAggregator
impl Clone for LastValueAggregator
Source§fn clone(&self) -> LastValueAggregator
fn clone(&self) -> LastValueAggregator
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for LastValueAggregator
impl RefUnwindSafe for LastValueAggregator
impl Send for LastValueAggregator
impl Sync for LastValueAggregator
impl Unpin for LastValueAggregator
impl UnsafeUnpin for LastValueAggregator
impl UnwindSafe for LastValueAggregator
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§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.