#[non_exhaustive]pub enum ExecError {
Show 14 variants
Incomplete,
FieldNotFound(String),
IndexInvalid(u64, String),
IndexRequired(String),
SignednessNotEstabilished(String),
PropertyNotLexable(String, String),
PropertyNotParseable(String, String),
InherentPanic,
InherentPanicDependent,
NonMonotoneProperty,
VerifiedInherentAssumed,
GuiError(String),
NoResult,
OtherError(String),
}
Expand description
Execution error that occured during machine-check execution.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Incomplete
The verification result could not be obtained as the abstraction is too coarse.
Currently, this should never happen, as only three-valued abstraction is supported.
FieldNotFound(String)
The specified property field was not found in the system.
IndexInvalid(u64, String)
The used index was invalid.
This can happen either due to the field not being indexable or the index being too high.
IndexRequired(String)
The use of an index is required to use the field in an operation.
This happens because an array type was used where a bit-vector type was expected.
SignednessNotEstabilished(String)
The signedness of the field was required for a comparison, but not estabilished.
Currently, if needed, the signedness must be forced by as_unsigned
or as_signed
,
as field signedness currently does not yet propagate to property verification.
PropertyNotLexable(String, String)
The specified property is invalid and could not be lexed into tokens.
PropertyNotParseable(String, String)
The specified property is invalid and could not be parsed.
InherentPanic
Verification of a standard property was requested, but the inherent property does not hold.
InherentPanicDependent
Verification of a standard property was requested, but the inherent property is dependent on parameters.
NonMonotoneProperty
Verification of a mu-calculus property encountered a non-monotone change.
This is prohibited as it can lead to infinite verification loops.
VerifiedInherentAssumed
It was requested to verify an inherent property while assuming that it holds.
GuiError(String)
The Graphical User Interface emitted an error.
NoResult
No verification was requested, so there is no verification result.
OtherError(String)
Other error.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ExecError
impl<'de> Deserialize<'de> for ExecError
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ExecError, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ExecError, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Error for ExecError
impl Error for ExecError
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
Source§impl Serialize for ExecError
impl Serialize for ExecError
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Auto Trait Implementations§
impl Freeze for ExecError
impl RefUnwindSafe for ExecError
impl Send for ExecError
impl Sync for ExecError
impl Unpin for ExecError
impl UnwindSafe for ExecError
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more