Enum ethcore::trace::TraceError
source · [−]pub enum TraceError {
Show 15 variants
OutOfGas,
BadJumpDestination,
BadInstruction,
StackUnderflow,
OutOfStack,
SubStackUnderflow,
OutOfSubStack,
InvalidSubEntry,
BuiltIn,
Internal,
MutableCallInStaticContext,
InvalidCode,
Wasm,
OutOfBounds,
Reverted,
}
Expand description
Trace evm errors.
Variants
OutOfGas
OutOfGas
is returned when transaction execution runs out of gas.
BadJumpDestination
BadJumpDestination
is returned when execution tried to move
to position that wasn’t marked with JUMPDEST instruction
BadInstruction
BadInstructions
is returned when given instruction is not supported
StackUnderflow
StackUnderflow
when there is not enough stack elements to execute instruction
OutOfStack
When execution would exceed defined Stack Limit
SubStackUnderflow
When there is not enough subroutine stack elements to return from
OutOfSubStack
When execution would exceed defined subroutine Stack Limit
InvalidSubEntry
When the code walks into a subroutine, that is not allowed
BuiltIn
When builtin contract failed on input data
Internal
Returned on evm internal error. Should never be ignored during development. Likely to cause consensus issues.
MutableCallInStaticContext
When execution tries to modify the state in static context
InvalidCode
When invalid code was attempted to deploy
Wasm
Wasm error
OutOfBounds
Contract tried to access past the return data buffer.
Reverted
Execution has been reverted with REVERT instruction.
Trait Implementations
sourceimpl Decodable for Error
impl Decodable for Error
sourcefn decode(rlp: &Rlp<'_>) -> Result<Self, DecoderError>
fn decode(rlp: &Rlp<'_>) -> Result<Self, DecoderError>
Decode a value from RLP bytes
sourceimpl MallocSizeOf for Error
impl MallocSizeOf for Error
sourcefn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Measure the heap usage of all descendant heap-allocated structures, but
not the space taken up by the value itself.
If T::size_of
is a constant, consider implementing constant_size
as well. Read more
sourcefn constant_size() -> Option<usize>
fn constant_size() -> Option<usize>
Used to optimize MallocSizeOf
implementation for collections
like Vec
and HashMap
to avoid iterating over them unnecessarily.
The Self: Sized
bound is for object safety. Read more
impl StructuralPartialEq for Error
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
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> MallocSizeOfExt for T where
T: MallocSizeOf,
impl<T> MallocSizeOfExt for T where
T: MallocSizeOf,
sourcefn malloc_size_of(&self) -> usize
fn malloc_size_of(&self) -> usize
Method to launch a heapsize measurement with a fresh state. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more