Expand description
§revm-interpreter
REVM Interpreter.
Re-exports§
pub use gas::Gas;
pub use interpreter::num_words;
pub use interpreter::InputsImpl;
pub use interpreter::Interpreter;
pub use interpreter::InterpreterResult;
pub use interpreter::MemoryGetter;
pub use interpreter::Stack;
pub use interpreter::EMPTY_SHARED_MEMORY;
pub use interpreter::STACK_LIMIT;
pub use interpreter_action::CallInputs;
pub use interpreter_action::CallOutcome;
pub use interpreter_action::CallScheme;
pub use interpreter_action::CallValue;
pub use interpreter_action::CreateInputs;
pub use interpreter_action::CreateOutcome;
pub use interpreter_action::EOFCreateInputs;
pub use interpreter_action::EOFCreateKind;
pub use interpreter_action::FrameInput;
pub use interpreter_action::InterpreterAction;
pub use interpreter_types::InterpreterTypes;
pub use table::Instruction;
Modules§
- EVM gas calculation utilities.
- EVM opcode implementations.
Macros§
- Converts a
U256
value to aisize
, saturating toisize::MAX
if the value is too large. - Converts a
U256
value to au64
, saturating toMAX
if the value is too large. - Converts a
U256
value to ausize
, failing the instruction if the value is too large. - Converts a
U256
value to ausize
and returnsret
, failing the instruction if the value is too large. - Converts a
U256
value to ausize
, saturating toMAX
if the value is too large. - Check if the
SPEC
is enabled, and fail the instruction if it is not. - Records a
gas
cost and fails the instruction if it would exceed the available gas. - Same as
gas!
, but withgas
as an option. - Pushes a
B256
value onto the stack. Fails the instruction if the stack is full. - Error if the current call is executing EOF.
- Fails the instruction if the current call is static.
- Resizes the interpreterreter memory if necessary. Fails the instruction if the memory or gas limit is exceeded.
const
Option?
.
Structs§
- A dummy Host implementation.
- Represents the result of an
sstore
operation. - Result of a selfdestruct action.
- State load information that contains the data and if the account or storage is cold loaded.
Enums§
- Create scheme.
- Internal result that are not ex
Constants§
- EIP-170: Contract code size limit
- EIP-3860: Limit and meter initcode
Traits§
- EVM context host. TODO move to context-interface