Private Pools and Whitelisting
Last updated
interface IWhiteList {
// @notice returns true if the address is allowed
function isAllowed(address) external view returns (bool);
}Porta.setWhitelist(id, contract_address);pragma solidity =0.8.7;
import "@openzeppelin/contracts/access/Ownable.sol";
interface IWhiteList {
// @notice returns true if the address is allowed
function isAllowed(address) external view returns (bool);
}
contract Whitelist is IWhitelist, Ownable {
event Listed(address indexed account, bool isWhitelisted);
mapping(address => bool) private whitelist;
function isAllowed(
address _address
) external view virtual override returns (bool) {
return whitelist[_address];
}
function setAddress(address _address, bool allow) external virtual onlyOwner {
require(whitelist[_address] != allow);
whitelist[_address] = allow;
emit Listed(_address, allow);
}
}