pub struct registerMappingSstoreHookReturn {}Expand description
Registers a callback after exact mapping-element SSTOREs rooted at rootSlot in target’s effective storage account.
The callback signature is function(address account, bytes32 computedSlot, bytes32 rootSlot, bytes32[] keys, bytes32 oldValue, bytes32 newValue) external; keys are raw words in
root-to-leaf order. Only complete 64-byte Keccak chains observed after the latest mapping
hook registration for target in the current top-level execution match; provenance is
cleared between top-level executions. Resolution follows the complete chain to its terminal
root and ignores registered intermediate hashes. Offsets, incomplete or unknown chains,
hashes computed before registration or in an earlier top-level execution, and source layouts
do not match. The contract that calls this cheatcode receives the callback. Registration
persists across reverts and replaces the same target/root callback; callback state rolls back
with its enclosing context, callback reverts propagate, and hooks are suppressed throughout
callback subtrees. The callback must authenticate msg.sender == address(vm) to prevent
external spoofing. Raw and mapping SSTORE hooks conflict per target, while multiple mapping
roots may be registered.
Container type for the return parameters of the registerMappingSstoreHook(address,bytes32,bytes4) function.
Implementations§
Source§impl registerMappingSstoreHookReturn
impl registerMappingSstoreHookReturn
fn _tokenize( &self, ) -> <registerMappingSstoreHookCall as SolCall>::ReturnToken<'_>
Trait Implementations§
Source§impl Clone for registerMappingSstoreHookReturn
impl Clone for registerMappingSstoreHookReturn
Source§fn clone(&self) -> registerMappingSstoreHookReturn
fn clone(&self) -> registerMappingSstoreHookReturn
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for registerMappingSstoreHookReturn
impl RefUnwindSafe for registerMappingSstoreHookReturn
impl Send for registerMappingSstoreHookReturn
impl Sync for registerMappingSstoreHookReturn
impl Unpin for registerMappingSstoreHookReturn
impl UnsafeUnpin for registerMappingSstoreHookReturn
impl UnwindSafe for registerMappingSstoreHookReturn
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...) attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 0 bytes