use super::config::AbstractProcessConfiguration;
pub trait AbstractProcessMutablePersistentState<Conf : AbstractProcessConfiguration> {
fn get_initial_state(
context_and_param : &Conf::ContextAndParameterization,
initial_node : &Conf::DomainSpecificNode
) -> Self;
fn update_on_node_reached(
&mut self,
_context_and_param : &Conf::ContextAndParameterization,
_node : &Conf::DomainSpecificNode
) {}
fn update_on_next_steps_collected_reached(
&mut self,
_context_and_param : &Conf::ContextAndParameterization,
_node : &Conf::DomainSpecificNode,
_steps : &[Conf::DomainSpecificStep]
) {}
fn update_on_filtered(
&mut self,
_context_and_param : &Conf::ContextAndParameterization,
_parent_node : &Conf::DomainSpecificNode,
_filtration_result : &Conf::FiltrationResult
) {}
fn warrants_termination_of_the_process(
&self,
_context_and_param : &Conf::ContextAndParameterization
) -> bool {
false
}
}