Crate revm_bytecode

Source
Expand description

Crate that contains bytecode types and opcode constants.

EOF bytecode contains its verification logic and only valid EOF bytecode can be created.

Legacy bytecode will always contain a jump table.

While EIP-7702 bytecode must contains a Address.

Re-exports§

pub use bytecode::Bytecode;
pub use eof::verification::validate_eof;
pub use eof::verification::validate_eof_code;
pub use eof::verification::validate_eof_codes;
pub use eof::verification::validate_eof_inner;
pub use eof::verification::validate_raw_eof;
pub use eof::verification::validate_raw_eof_inner;
pub use eof::verification::CodeType;
pub use eof::verification::EofValidationError;
pub use eof::Eof;
pub use eof::EOF_MAGIC;
pub use eof::EOF_MAGIC_BYTES;
pub use eof::EOF_MAGIC_HASH;
pub use iterator::BytecodeIterator;
pub use iterator::BytecodeIteratorExt;
pub use legacy::JumpTable;
pub use legacy::LegacyAnalyzedBytecode;
pub use legacy::LegacyRawBytecode;
pub use opcode::OpCode;
pub use bitvec;

Modules§

bytecode
Module that contains the bytecode enum with all variants supported by Ethereum mainnet.
eip7702
EIP-7702 bytecode.
eof
EOF bytecode.
iterator
Iterator for the bytecode.
legacy
Legacy bytecode.
opcode
EVM opcode definitions and utilities. It contains opcode information and utilities to work with opcodes.
utils
Various utilities for the bytecode

Enums§

BytecodeDecodeError
EOF decode errors