pub struct RunReport {
pub rounds_run: usize,
pub nodes_processed: usize,
pub nodes_failed: usize,
pub reached_fixpoint: bool,
pub cancelled: bool,
pub violations: Vec<Violation>,
}Expand description
Summary of a single Engine::run.
Interpretation: reached_fixpoint means every node settled. If neither
reached_fixpoint nor cancelled is set, the run consumed all its rounds
with work left over — typically nodes still Unparsed
because the schedule has no pass for their round. Query
ParseTree::pending to find them.
Fields§
§rounds_run: usizeNumber of rounds that processed at least one node.
nodes_processed: usizeNumber of node/pass attempts executed.
nodes_failed: usizeNumber of attempts whose outcome was a failure (including contract-violating expansions).
reached_fixpoint: booltrue if the run ended because no node had work left.
cancelled: booltrue if the run ended because the CancelToken fired.
violations: Vec<Violation>Contract breaches the engine rejected during the run — a pass
produced a child region it wasn’t allowed to produce (outside its
parent, wrong revision, not smaller while enforce_shrink is set).
Empty for well-behaved passes.