MutableSolutionIterator
A SolutionIterator that can hijack a state transition, i.e. substitute the State the machine actually moves into for the one it would otherwise have computed.
This exists for tooling built on top of :solve-classic -- step-by-step debuggers, tracers, or a REPL that wants to pause resolution -- that need to redirect the FSM (e.g. forcing early termination, or replaying a previously recorded state) without reimplementing resolution themselves.
Properties
Functions
Called instead of onStateTransition before a transition from source to destination (the index-th overall) is committed; returns the State that should actually become the new current state (typically destination itself, unless the caller wants to hijack the transition).
Invoked after every transition from source to destination (the index-th transition overall).