pub enum Error {
UnimplementedTrap(u16),
Halted,
Timeout(usize),
Trace(String),
}Expand description
Top-level error returned by crate::runner::FixtureRunner and
the supporting traps. Variants:
-
Error::UnimplementedTrap— the dispatcher reached an A-line trap word with no matching handler. The trap word is included for diagnosis. Adding a(is_tool, trap_num) =>arm in the appropriatesrc/trap/*.rsfile is how you fix this. -
Error::Halted— the guest application calledExitToShell(or otherwise reached a halt state). Not a failure per se; callers that loop onrun_stepsusestill_running == falsefrom the tuple instead of catching this. -
Error::Timeout— execution exceeded a caller-supplied instruction budget without halting. The carriedusizeis the instruction-count cap that was hit. -
Error::Trace— recording-side error from the cross-runtime parity trace sink (filesystem write, JSON serialisation, etc). Surfaces only when a trace sink is installed viaset_trace_sink.
Variants§
UnimplementedTrap(u16)
The dispatcher reached an A-line trap word with no matching handler. The trap word is included for diagnosis.
Halted
The guest application reached a halt state (typically via
ExitToShell).
Timeout(usize)
Execution exceeded the caller-supplied instruction budget without halting. The carried value is the instruction count at the timeout.
Trace(String)
Cross-runtime parity trace sink returned an error (filesystem write, JSON serialisation, etc).
Trait Implementations§
Source§impl Error for Error
impl Error for Error
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()