pub struct SourceProvidedGenerator { /* private fields */ }Expand description
Watermark generator for sources with embedded watermarks.
Some sources (like Kafka with EOS) may provide watermarks directly. This generator tracks both event timestamps and explicit watermarks.
Implementations§
Source§impl SourceProvidedGenerator
impl SourceProvidedGenerator
Sourcepub fn new(fallback_lateness: i64, prefer_source: bool) -> Self
pub fn new(fallback_lateness: i64, prefer_source: bool) -> Self
Creates a new source-provided generator.
§Arguments
fallback_lateness- Lateness for fallback bounded generatorprefer_source- If true, source watermarks take precedence
Sourcepub fn on_source_watermark(&mut self, watermark: i64) -> Option<Watermark>
pub fn on_source_watermark(&mut self, watermark: i64) -> Option<Watermark>
Updates the watermark from the source.
Call this when the source provides an explicit watermark.
Trait Implementations§
Source§impl WatermarkGenerator for SourceProvidedGenerator
impl WatermarkGenerator for SourceProvidedGenerator
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 SourceProvidedGenerator
impl RefUnwindSafe for SourceProvidedGenerator
impl Send for SourceProvidedGenerator
impl Sync for SourceProvidedGenerator
impl Unpin for SourceProvidedGenerator
impl UnwindSafe for SourceProvidedGenerator
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§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> 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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§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.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.