CalcObserver

Trait CalcObserver 

Source
pub trait CalcObserver: Send + Sync {
    // Required methods
    fn on_eval_start(&self, vertex_id: VertexId);
    fn on_eval_complete(&self, vertex_id: VertexId, duration: Duration);
    fn on_cycle_detected(&self, cycle: &[VertexId]);
    fn on_dirty_propagation(&self, vertex_id: VertexId, affected_count: usize);
}
Expand description

🔮 Scalability Hook: Performance monitoring trait for calculation observability

Required Methods§

Source

fn on_eval_start(&self, vertex_id: VertexId)

Source

fn on_eval_complete(&self, vertex_id: VertexId, duration: Duration)

Source

fn on_cycle_detected(&self, cycle: &[VertexId])

Source

fn on_dirty_propagation(&self, vertex_id: VertexId, affected_count: usize)

Implementations on Foreign Types§

Source§

impl CalcObserver for ()

Default no-op observer

Source§

fn on_eval_start(&self, _vertex_id: VertexId)

Source§

fn on_eval_complete(&self, _vertex_id: VertexId, _duration: Duration)

Source§

fn on_cycle_detected(&self, _cycle: &[VertexId])

Source§

fn on_dirty_propagation(&self, _vertex_id: VertexId, _affected_count: usize)

Implementors§