Struct evm_adapters::sputnik::cheatcodes::memory_stackstate_owned::MemoryStackStateOwned [−][src]
pub struct MemoryStackStateOwned<'config, B> {Show 14 fields
pub backend: B,
pub substate: MemoryStackSubstate<'config>,
pub trace_enabled: bool,
pub call_index: usize,
pub trace_index: usize,
pub traces: Vec<CallTraceArena>,
pub expected_revert: Option<Vec<u8>>,
pub next_msg_sender: Option<H160>,
pub msg_sender: Option<(H160, H160, usize)>,
pub accesses: Option<RecordAccess>,
pub all_logs: Vec<String>,
pub expected_emits: Vec<ExpectedEmit>,
pub debug_enabled: bool,
pub debug_steps: Vec<DebugArena>,
}
Expand description
This struct implementation is copied from upstream and modified to own the Backend type.
We had to copy it so that we can modify the Stack’s internal backend, because
the upstream MemoryStackState only has an immutable reference to Backend
which
does not allow us to do so.
Fields
backend: B
substate: MemoryStackSubstate<'config>
trace_enabled: bool
call_index: usize
trace_index: usize
traces: Vec<CallTraceArena>
expected_revert: Option<Vec<u8>>
next_msg_sender: Option<H160>
msg_sender: Option<(H160, H160, usize)>
accesses: Option<RecordAccess>
all_logs: Vec<String>
expected_emits: Vec<ExpectedEmit>
debug_enabled: bool
debug_steps: Vec<DebugArena>
Implementations
pub fn new(
metadata: StackSubstateMetadata<'config>,
backend: B,
trace_enabled: bool,
debug_enabled: bool
) -> Self
Trait Implementations
Environmental block hash.
Environmental block number.
Environmental coinbase.
Environmental block timestamp.
Environmental block difficulty.
Environmental block gas limit.
Environmental block base fee.
impl<'a, 'b, B: Backend, P: PrecompileSet> SputnikExecutor<MemoryStackStateOwned<'a, CheatcodeBackend<B>>> for CheatcodeStackExecutor<'a, 'b, B, P>
impl<'a, 'b, B: Backend, P: PrecompileSet> SputnikExecutor<MemoryStackStateOwned<'a, CheatcodeBackend<B>>> for CheatcodeStackExecutor<'a, 'b, B, P>
fn transact_call(
&mut self,
caller: H160,
address: H160,
value: U256,
data: Vec<u8>,
gas_limit: u64,
access_list: Vec<(H160, Vec<H256>)>
) -> (ExitReason, Vec<u8>)
fn transact_create(
&mut self,
caller: H160,
value: U256,
init_code: Vec<u8>,
gas_limit: u64,
access_list: Vec<(H160, Vec<H256>)>
) -> ExitReason
Clears all logs in the current EVM instance, so that subsequent calls to
logs
do not print duplicate logs on shared EVM instances. Read more
Returns a vector of raw logs that occurred during the previous VM execution Read more
Gets a trace
Auto Trait Implementations
impl<'config, B> !RefUnwindSafe for MemoryStackStateOwned<'config, B>
impl<'config, B> Send for MemoryStackStateOwned<'config, B> where
B: Send,
impl<'config, B> !Sync for MemoryStackStateOwned<'config, B>
impl<'config, B> Unpin for MemoryStackStateOwned<'config, B> where
B: Unpin,
impl<'config, B> UnwindSafe for MemoryStackStateOwned<'config, B> where
B: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more