git.delta.rocks / unique-network / refs/heads / master

difftreelog

source

js-packages/scripts/benchmarks/utils/openZeppelin/ERC20/ZeppelinContract.sol1.7 KiBsourcehistory
1// SPDX-License-Identifier: MIT2pragma solidity ^0.8.9;34import "./@openzeppelin/contracts/token/ERC20/ERC20.sol";5import "./@openzeppelin/contracts/token/ERC20/extensions/ERC20Burnable.sol";6import "./@openzeppelin/contracts/security/Pausable.sol";7import "./@openzeppelin/contracts/access/Ownable.sol";8import "./@openzeppelin/contracts/token/ERC20/extensions/draft-ERC20Permit.sol";9import "./@openzeppelin/contracts/token/ERC20/extensions/ERC20Votes.sol";10import "./@openzeppelin/contracts/token/ERC20/extensions/ERC20FlashMint.sol";1112contract ZeppelinContract is ERC20, ERC20Burnable, Pausable, Ownable, ERC20Permit, ERC20Votes, ERC20FlashMint {13    constructor()14        ERC20("ZeppelinContract", "UNQ")15        ERC20Permit("ZeppelinContract")16    {}1718    function pause() public onlyOwner {19        _pause();20    }2122    function unpause() public onlyOwner {23        _unpause();24    }2526    function mint(address to, uint256 amount) public onlyOwner {27        _mint(to, amount);28    }2930    function _beforeTokenTransfer(address from, address to, uint256 amount)31        internal32        whenNotPaused33        override34    {35        super._beforeTokenTransfer(from, to, amount);36    }3738    // The following functions are overrides required by Solidity.3940    function _afterTokenTransfer(address from, address to, uint256 amount)41        internal42        override(ERC20, ERC20Votes)43    {44        super._afterTokenTransfer(from, to, amount);45    }4647    function _mint(address to, uint256 amount)48        internal49        override(ERC20, ERC20Votes)50    {51        super._mint(to, amount);52    }5354    function _burn(address account, uint256 amount)55        internal56        override(ERC20, ERC20Votes)57    {58        super._burn(account, amount);59    }60}