pub struct AscendingTimestampsGenerator { /* private fields */ }Expand description
Watermark generator for strictly ascending timestamps.
Assumes events arrive in timestamp order with no lateness. The watermark equals the current timestamp. Use this for sources that guarantee ordering.
§Example
use laminar_core::time::{AscendingTimestampsGenerator, WatermarkGenerator, Watermark};
let mut gen = AscendingTimestampsGenerator::new();
assert_eq!(gen.on_event(1000), Some(Watermark::new(1000)));
assert_eq!(gen.on_event(2000), Some(Watermark::new(2000)));Implementations§
Trait Implementations§
Source§impl Debug for AscendingTimestampsGenerator
impl Debug for AscendingTimestampsGenerator
Source§impl Default for AscendingTimestampsGenerator
impl Default for AscendingTimestampsGenerator
Source§fn default() -> AscendingTimestampsGenerator
fn default() -> AscendingTimestampsGenerator
Returns the “default value” for a type. Read more
Source§impl WatermarkGenerator for AscendingTimestampsGenerator
impl WatermarkGenerator for AscendingTimestampsGenerator
Source§fn on_event(&mut self, timestamp: i64) -> Option<Watermark>
fn on_event(&mut self, timestamp: i64) -> Option<Watermark>
Process an event timestamp and potentially emit a new watermark. Read more
Source§fn on_periodic(&mut self) -> Option<Watermark>
fn on_periodic(&mut self) -> Option<Watermark>
Called periodically to emit watermarks based on wall-clock time. Read more
Source§fn current_watermark(&self) -> i64
fn current_watermark(&self) -> i64
Returns the current watermark value without advancing it.
Auto Trait Implementations§
impl Freeze for AscendingTimestampsGenerator
impl RefUnwindSafe for AscendingTimestampsGenerator
impl Send for AscendingTimestampsGenerator
impl Sync for AscendingTimestampsGenerator
impl Unpin for AscendingTimestampsGenerator
impl UnsafeUnpin for AscendingTimestampsGenerator
impl UnwindSafe for AscendingTimestampsGenerator
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
§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.