[−][src]Enum haybale::Error
Error types used throughout this crate.
The Display
impl for Error
will provide information about the error
itself. For more detailed information about the error, including the program
context in which it occurred, see
State.full_error_message_with_context()
.
Variants
While performing an operation, we discovered the current path is unsat.
This error type is used internally, but (by default) isn't exposed to consumers of ExecutionManager
;
see Config.squash_unsats
.
LoopBoundExceeded(usize)
The current path has exceeded the configured loop_bound
(see Config
).
(The usize
here indicates the value of the configured loop_bound
.)
The current path has attempted to dereference a null pointer (or
more precisely, a pointer for which NULL
is a possible value)
FunctionNotFound(String)
Processing a call of a function with the given name, but failed to find an LLVM definition, a function hook, or a built-in handler for it
SolverError(String)
The solver returned this processing error while evaluating a query.
Often, this is a timeout; see Config.solver_query_timeout
UnsupportedInstruction(String)
Encountered an LLVM instruction which is not currently supported
MalformedInstruction(String)
Encountered an LLVM instruction which was malformed, or at least didn't conform to our expected invariants
Reached an LLVM Unreachable
instruction
FailedToResolveFunctionPointer(u64)
Failed to interpret some symbolic value (BV
) as a function pointer,
because it has a possible solution (the u64
here) which points to
something that's not a function
HookReturnValueMismatch(String)
The hook for some function returned a value which didn't match the
function return type: for instance, a value of the wrong size.
The String
here just describes the error
OtherError(String)
Some kind of error which doesn't fall into one of the above categories.
The String
here describes the error
Trait Implementations
impl Clone for Error
[src]
impl Debug for Error
[src]
impl Display for Error
[src]
impl Eq for Error
[src]
impl From<Error> for String
[src]
impl PartialEq<Error> for Error
[src]
impl StructuralEq for Error
[src]
impl StructuralPartialEq for Error
[src]
Auto Trait Implementations
impl RefUnwindSafe for Error
impl Send for Error
impl Sync for Error
impl Unpin for Error
impl UnwindSafe for Error
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToString for T where
T: Display + ?Sized,
[src]
T: Display + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,