12345678910111213141516171819202122232425262728293031323334353637383940 |
- // SPDX-License-Identifier: MIT
- pragma solidity ^0.8.0;
- import "../token/ERC20/extensions/draft-ERC20PermitUpgradeable.sol";
- import "../proxy/utils/Initializable.sol";
- contract ERC20PermitMockUpgradeable is Initializable, ERC20PermitUpgradeable {
- function __ERC20PermitMock_init(
- string memory name,
- string memory symbol,
- address initialAccount,
- uint256 initialBalance
- ) internal onlyInitializing {
- __ERC20_init_unchained(name, symbol);
- __EIP712_init_unchained(name, "1");
- __ERC20Permit_init_unchained(name);
- __ERC20PermitMock_init_unchained(name, symbol, initialAccount, initialBalance);
- }
- function __ERC20PermitMock_init_unchained(
- string memory,
- string memory,
- address initialAccount,
- uint256 initialBalance
- ) internal onlyInitializing {
- _mint(initialAccount, initialBalance);
- }
- function getChainId() external view returns (uint256) {
- return block.chainid;
- }
- /**
- * @dev This empty reserved space is put in place to allow future versions to add new
- * variables without shifting down storage in the inheritance chain.
- * See https://docs.openzeppelin.com/contracts/4.x/upgradeable#storage_gaps
- */
- uint256[50] private __gap;
- }
|