revokePersistent

签名

function revokePersistent(address) external; function revokePersistent(address[] calldata) external;

描述

makePersistent的对应函数,使给定的合约在分叉交换中不再持久化

例子

撤销合约的持久状态

contract SimpleStorageContract { string public value; function set(uint256 _value) public { value = _value; } } function testRevokePersistent() public { // select a specific fork cheats.selectFork(mainnetFork); // create a new contract that's stored in the `mainnetFork` storage SimpleStorageContract simple = new SimpleStorageContract(); // `simple` is not marked as persistent assert(!cheats.isPersistent(address(simple))); // make it persistent cheats.makePersistent(address(simple)); // ensure it is persistent assert(cheats.isPersistent(address(simple))); // revoke it cheats.revokePersistent(address(simple)); // contract no longer persistent assert(!cheats.isPersistent(address(simple))); }

另请参阅