Enum ethcore::evm::evm::Error
[−]
[src]
pub enum Error { OutOfGas, BadJumpDestination { destination: usize, }, BadInstruction { instruction: u8, }, StackUnderflow { instruction: &'static str, wanted: usize, on_stack: usize, }, OutOfStack { instruction: &'static str, wanted: usize, limit: usize, }, Internal, }
Evm errors.
Variants
OutOfGas
OutOfGas
is returned when transaction execution runs out of gas.
The state should be reverted to the state from before the
transaction execution. But it does not mean that transaction
was invalid. Balance still should be transfered and nonce
should be increased.
BadJumpDestination
BadJumpDestination
is returned when execution tried to move
to position that wasn't marked with JUMPDEST instruction
Fields
destination: usize | Position the code tried to jump to. |
BadInstruction
BadInstructions
is returned when given instruction is not supported
Fields
instruction: u8 | Unrecognized opcode |
StackUnderflow
StackUnderflow
when there is not enough stack elements to execute instruction
Fields
instruction: &'static str | Invoked instruction |
wanted: usize | How many stack elements was requested by instruction |
on_stack: usize | How many elements were on stack |
OutOfStack
When execution would exceed defined Stack Limit
Fields
instruction: &'static str | Invoked instruction |
wanted: usize | How many stack elements instruction wanted to push |
limit: usize | What was the stack limit |
Internal
Returned on evm internal error. Should never be ignored during development. Likely to cause consensus issues.
Trait Implementations
impl Debug for Error
[src]
impl Clone for Error
[src]
fn clone(&self) -> Error
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0
Performs copy-assignment from source
. Read more
impl Copy for Error
[src]
impl PartialEq for Error
[src]
fn eq(&self, __arg_0: &Error) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, __arg_0: &Error) -> bool
This method tests for !=
.