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);