///|
/// Event emitted when a derived recompute starts.
pub(all) struct DerivedEnteringEvent {
cell_id : CellId
started_revision : Revision
}
///|
/// Event emitted when a derived recompute completes successfully.
pub(all) struct DerivedCompletedEvent {
cell_id : CellId
elapsed_ns : Int64
started_revision : Revision
verified_at : Revision
changed_at : Revision
backdated : Bool
}
///|
/// Event emitted when a derived recompute raises a catchable error.
pub(all) struct DerivedAbortedEvent {
cell_id : CellId
elapsed_ns : Int64
started_revision : Revision
error : Error
}
///|
/// Derived recompute lifecycle event delivered by `Runtime::on_derived_event`.
pub(all) enum DerivedEvent {
EnteringCompute(DerivedEnteringEvent)
Completed(DerivedCompletedEvent)
Aborted(DerivedAbortedEvent)
}