Skip to main content

StopEvaluator

Struct StopEvaluator 

Source
pub struct StopEvaluator { /* private fields */ }
Expand description

Runtime evaluator that checks a StopCondition against accumulated counters.

Create one before the processing loop and call update after each chunk. When it returns true, profiling should stop.

Implementations§

Source§

impl StopEvaluator

Source

pub fn new(condition: StopCondition) -> Self

Source

pub fn with_estimated_total(self, rows: u64) -> Self

Provide an estimated total row count (enables ConfidenceThreshold).

Source

pub fn update( &mut self, chunk_rows: u64, chunk_bytes: u64, memory_fraction: f64, ) -> bool

Update counters and evaluate the stop condition.

Returns true when profiling should stop.

  • chunk_rows: number of rows in the chunk just processed
  • chunk_bytes: number of bytes consumed by this chunk
  • memory_fraction: current memory usage as a fraction of the limit (0.0..1.0)
Source

pub fn should_stop(&self) -> bool

Returns true if a stop condition has already been triggered.

Source

pub fn truncation_reason(&self) -> Option<TruncationReason>

The reason profiling stopped, mapped to TruncationReason.

Source

pub fn rows_processed(&self) -> u64

Total rows processed so far.

Source

pub fn bytes_consumed(&self) -> u64

Total bytes consumed so far.

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V