kmp-domain 0.18.0

Domain model of the Kernel Memory Protocol: aggregates, value objects, repositories and projections, with no IO
Documentation
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub enum TraceSearchStop {
    TargetsReached,
    FrontierExhausted,
    NodeBudget,
    EdgeBudget,
    StateBudget,
    DepthBudget,
    SourceOutsideSelection,
}

impl TraceSearchStop {
    pub fn as_str(self) -> &'static str {
        match self {
            Self::TargetsReached => "targets_reached",
            Self::FrontierExhausted => "frontier_exhausted",
            Self::NodeBudget => "node_budget",
            Self::EdgeBudget => "edge_budget",
            Self::StateBudget => "state_budget",
            Self::DepthBudget => "depth_budget",
            Self::SourceOutsideSelection => "source_outside_selection",
        }
    }
}