pub enum ExpansionError {
Decode {
offset: usize,
reason: String,
},
Unsupported(String),
Counterexample {
wasm_op_label: String,
description: String,
},
SolverUnknown(String),
Internal(String),
}Expand description
Expansion validation failure reasons. Everything is loud: an instruction or shape outside the modeled subset is an error, never a silent accept.
Variants§
Decode
The byte sequence contains an instruction (or branch shape) outside the decoder’s subset. Includes backward branches — loops (the i64 div/rem cores) are held out, not silently skipped.
Unsupported(String)
The (WasmOp, pseudo ArmOp) pair is not in the covered surface.
Counterexample
The sequence is semantically wrong — a concrete counterexample input distinguishes the WASM reference from the emitted sequence.
SolverUnknown(String)
Solver returned unknown (conflict budget exceeded).
Internal(String)
Internal invariant violation (e.g. malformed IT block).
Trait Implementations§
Source§impl Debug for ExpansionError
impl Debug for ExpansionError
Source§impl Display for ExpansionError
impl Display for ExpansionError
Source§impl Error for ExpansionError
impl Error for ExpansionError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Auto Trait Implementations§
impl Freeze for ExpansionError
impl RefUnwindSafe for ExpansionError
impl Send for ExpansionError
impl Sync for ExpansionError
impl Unpin for ExpansionError
impl UnsafeUnpin for ExpansionError
impl UnwindSafe for ExpansionError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more