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;
14pub mod host;
15pub mod instruction_context;
16mod instruction_result;
17pub mod instructions;
18pub mod interpreter;
19pub mod interpreter_action;
20pub mod interpreter_types;
21
22pub use context_interface::{
24 context::{SStoreResult, SelfDestructResult, StateLoad},
25 CreateScheme,
26};
27pub use gas::{Gas, InitialAndFloorGas};
28pub use host::Host;
29pub use instruction_context::InstructionContext;
30pub use instruction_result::*;
31pub use instructions::{instruction_table, Instruction, InstructionTable};
32pub use interpreter::{
33 num_words, InputsImpl, Interpreter, InterpreterResult, SharedMemory, Stack, STACK_LIMIT,
34};
35pub use interpreter_action::{
36 CallInput, CallInputs, CallOutcome, CallScheme, CallValue, CreateInputs, CreateOutcome,
37 EOFCreateInputs, EOFCreateKind, FrameInput, InterpreterAction,
38};
39pub use interpreter_types::InterpreterTypes;
40pub use primitives::{constants::MAX_INITCODE_SIZE, eip170::MAX_CODE_SIZE};