1#![cfg_attr(not(test), warn(unused_crate_dependencies))]
5#![cfg_attr(not(feature = "std"), no_std)]
6
7#[cfg(not(feature = "std"))]
8extern crate alloc as std;
9
10#[macro_use]
11mod macros;
12
13pub mod gas;
15pub mod instruction_context;
17mod instruction_result;
19pub mod instructions;
21pub mod interpreter;
23pub mod interpreter_action;
25pub mod interpreter_types;
27
28pub use context_interface::{
30 context::{SStoreResult, SelfDestructResult, StateLoad},
31 CreateScheme,
32};
33pub use context_interface::{host, Host};
34pub use gas::{Gas, InitialAndFloorGas};
35pub use instruction_context::InstructionContext;
36pub use instruction_result::*;
37pub use instructions::{instruction_table, Instruction, InstructionTable};
38pub use interpreter::{
39 num_words, InputsImpl, Interpreter, InterpreterResult, SharedMemory, Stack, STACK_LIMIT,
40};
41pub use interpreter_action::{
42 CallInput, CallInputs, CallOutcome, CallScheme, CallValue, CreateInputs, CreateOutcome,
43 FrameInput, InterpreterAction,
44};
45pub use interpreter_types::InterpreterTypes;
46pub use primitives::{eip7907::MAX_CODE_SIZE, eip7907::MAX_INITCODE_SIZE};