pub struct ProcessingTimeGenerator { /* private fields */ }Expand description
Processing-time watermark generator.
Ignores event timestamps entirely and advances the watermark based on
wall-clock time. Use with PROCTIME() sources where events are processed
in arrival order without event-time semantics.
on_eventreturnsNone(event timestamps are ignored)on_periodicreturnsSome(Watermark::new(now_millis()))
§Example
use laminar_core::time::{ProcessingTimeGenerator, WatermarkGenerator};
let mut gen = ProcessingTimeGenerator::new();
// on_event ignores the timestamp
assert_eq!(gen.on_event(1000), None);
// on_periodic returns wall-clock time
let wm = gen.on_periodic();
assert!(wm.is_some());Implementations§
Trait Implementations§
Source§impl Default for ProcessingTimeGenerator
impl Default for ProcessingTimeGenerator
Source§impl WatermarkGenerator for ProcessingTimeGenerator
impl WatermarkGenerator for ProcessingTimeGenerator
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 ProcessingTimeGenerator
impl RefUnwindSafe for ProcessingTimeGenerator
impl Send for ProcessingTimeGenerator
impl Sync for ProcessingTimeGenerator
impl Unpin for ProcessingTimeGenerator
impl UnsafeUnpin for ProcessingTimeGenerator
impl UnwindSafe for ProcessingTimeGenerator
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.