pub trait FoundryContextExt: ContextTr<Block: FoundryBlock + Clone, Tx: FoundryTransaction + Clone, Cfg = CfgEnv<Self::Spec>, Journal: JournalExt> {
type Spec: Into<SpecId> + Copy + Debug;
// Required methods
fn block_mut(&mut self) -> &mut Self::Block;
fn tx_mut(&mut self) -> &mut Self::Tx;
fn cfg_mut(&mut self) -> &mut Self::Cfg;
fn db_journal_inner_mut(&mut self) -> (&mut Self::Db, &mut JournaledState);
// Provided methods
fn set_block(&mut self, block: Self::Block) { ... }
fn set_tx(&mut self, tx: Self::Tx) { ... }
fn set_cfg(&mut self, cfg: Self::Cfg) { ... }
fn set_journal_inner(&mut self, journal_inner: JournaledState) { ... }
fn set_evm(&mut self, evm_env: EvmEnv<Self::Spec, Self::Block>) { ... }
fn tx_clone(&self) -> Self::Tx { ... }
fn evm_clone(&self) -> EvmEnv<Self::Spec, Self::Block> { ... }
}Expand description
Extension trait providing mutable field access to block, tx, and cfg environments.
[ContextTr] only exposes immutable references for block, tx, and cfg.
Cheatcodes like vm.warp(), vm.roll(), vm.chainId() need to mutate these fields.
Required Associated Types§
Required Methods§
Sourcefn db_journal_inner_mut(&mut self) -> (&mut Self::Db, &mut JournaledState)
fn db_journal_inner_mut(&mut self) -> (&mut Self::Db, &mut JournaledState)
Mutable reference to the db and the journal inner.
Provided Methods§
Sourcefn set_journal_inner(&mut self, journal_inner: JournaledState)
fn set_journal_inner(&mut self, journal_inner: JournaledState)
Sets journal inner.