diff --git a/src/Simulation/transition_decision.rs b/src/Simulation/transition_decision.rs index 4445cba1..b65f2439 100644 --- a/src/Simulation/transition_decision.rs +++ b/src/Simulation/transition_decision.rs @@ -45,11 +45,9 @@ impl TransitionDecision { /// Resolves a [`TransitionDecision`]: use the `decided` [`Transition`] and return the [`TransitionDecisionPoint`] of the destination [`State`]. pub fn resolve(&self, system: &TransitionSystemPtr) -> Option { - let mut source = self.source.to_owned(); - match self.decided.use_transition(&mut source) { - true => Some(TransitionDecisionPoint::from(system, &source)), - false => None, - } + self.decided + .use_transition_alt(&self.source) + .map(|source| TransitionDecisionPoint::from(system, &source)) } }