pub enum OnChainError {
StackOverflow,
StackUnderflow,
InvalidOpcode,
BadJumpDest,
PCOverflow,
EmptyGas,
InvalidRange,
NotStatic,
Revert,
}Expand description
Errors that can be written on chain.
Variants§
StackOverflow
Stack is overflowed (pushed more than 1024 items to the stack).
StackUnderflow
Stack is underflowed (poped an empty stack).
InvalidOpcode
The opcode is invalid and the PC is not able to convert it to an instruction.
BadJumpDest
PC jumped to an invalid jump destination.
PCOverflow
PC overflowed (tries to read the next opcode which is already the end of the code). In Yellow Paper, this is categorized the same as InvalidOpcode.
EmptyGas
Not enough gas to continue.
InvalidRange
For instruction that requires reading a range, it is invalid. This in the Yellow Paper is covered by EmptyGas.
NotStatic
In static context but does mutation.
Revert
Invoked by REVERT opcode.
Trait Implementations§
Source§impl Clone for OnChainError
impl Clone for OnChainError
Source§fn clone(&self) -> OnChainError
fn clone(&self) -> OnChainError
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for OnChainError
impl Debug for OnChainError
Source§impl From<OnChainError> for EvalError
impl From<OnChainError> for EvalError
Source§fn from(val: OnChainError) -> EvalError
fn from(val: OnChainError) -> EvalError
Converts to this type from the input type.
Source§impl From<OnChainError> for EvalOnChainError
impl From<OnChainError> for EvalOnChainError
Source§fn from(val: OnChainError) -> EvalOnChainError
fn from(val: OnChainError) -> EvalOnChainError
Converts to this type from the input type.
Source§impl From<OnChainError> for RuntimeError
impl From<OnChainError> for RuntimeError
Source§fn from(val: OnChainError) -> RuntimeError
fn from(val: OnChainError) -> RuntimeError
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for OnChainError
impl RefUnwindSafe for OnChainError
impl Send for OnChainError
impl Sync for OnChainError
impl Unpin for OnChainError
impl UnwindSafe for OnChainError
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