Skip to main content

stdStorageSafe

Git Source

State Variables​

vm​

Vm private constant vm = Vm(address(uint160(uint256(keccak256("hevm cheat code")))));

UINT256_MAX​

uint256 constant UINT256_MAX = 115792089237316195423570985008687907853269984665640564039457584007913129639935;

Functions​

sigs​

function sigs(string memory sigStr) internal pure returns (bytes4);

getCallParams​

function getCallParams(StdStorage storage self) internal view returns (bytes memory);

callTarget​

function callTarget(StdStorage storage self) internal view returns (bool, bytes32);

checkSlotMutatesCall​

function checkSlotMutatesCall(StdStorage storage self, bytes32 slot) internal returns (bool);

findOffset​

function findOffset(StdStorage storage self, bytes32 slot, bool left) internal returns (bool, uint256);

findOffsets​

function findOffsets(StdStorage storage self, bytes32 slot) internal returns (bool, uint256, uint256);

find​

function find(StdStorage storage self) internal returns (FindData storage);

find​

find an arbitrary storage slot given a function sig, input data, address of the contract and a value to check against

function find(StdStorage storage self, bool _clear) internal returns (FindData storage);

target​

function target(StdStorage storage self, address _target) internal returns (StdStorage storage);

sig​

function sig(StdStorage storage self, bytes4 _sig) internal returns (StdStorage storage);

sig​

function sig(StdStorage storage self, string memory _sig) internal returns (StdStorage storage);

with_calldata​

function with_calldata(StdStorage storage self, bytes memory _calldata) internal returns (StdStorage storage);

with_key​

function with_key(StdStorage storage self, address who) internal returns (StdStorage storage);

with_key​

function with_key(StdStorage storage self, uint256 amt) internal returns (StdStorage storage);

with_key​

function with_key(StdStorage storage self, bytes32 key) internal returns (StdStorage storage);

enable_packed_slots​

function enable_packed_slots(StdStorage storage self) internal returns (StdStorage storage);

depth​

function depth(StdStorage storage self, uint256 _depth) internal returns (StdStorage storage);

read​

function read(StdStorage storage self) private returns (bytes memory);

read_bytes32​

function read_bytes32(StdStorage storage self) internal returns (bytes32);

read_bool​

function read_bool(StdStorage storage self) internal returns (bool);

read_address​

function read_address(StdStorage storage self) internal returns (address);

read_uint​

function read_uint(StdStorage storage self) internal returns (uint256);

read_int​

function read_int(StdStorage storage self) internal returns (int256);

parent​

function parent(StdStorage storage self) internal returns (uint256, bytes32);

root​

function root(StdStorage storage self) internal returns (uint256);

bytesToBytes32​

function bytesToBytes32(bytes memory b, uint256 offset) private pure returns (bytes32);

flatten​

function flatten(bytes32[] memory b) private pure returns (bytes memory);

clear​

function clear(StdStorage storage self) internal;

getMaskByOffsets​

function getMaskByOffsets(uint256 offsetLeft, uint256 offsetRight) internal pure returns (uint256 mask);

getUpdatedSlotValue​

function getUpdatedSlotValue(bytes32 curValue, uint256 varValue, uint256 offsetLeft, uint256 offsetRight)
internal
pure
returns (bytes32 newValue);

Events​

SlotFound​

event SlotFound(address who, bytes4 fsig, bytes32 keysHash, uint256 slot);

WARNING_UninitedSlot​

event WARNING_UninitedSlot(address who, uint256 slot);