123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 |
- // SPDX-License-Identifier: MIT
- pragma solidity ^0.8.0;
- import "../utils/ContextUpgradeable.sol";
- import "../token/ERC777/ERC777Upgradeable.sol";
- import "../proxy/utils/Initializable.sol";
- contract ERC777MockUpgradeable is Initializable, ContextUpgradeable, ERC777Upgradeable {
- event BeforeTokenTransfer();
- function __ERC777Mock_init(
- address initialHolder,
- uint256 initialBalance,
- string memory name,
- string memory symbol,
- address[] memory defaultOperators
- ) internal onlyInitializing {
- __ERC777_init_unchained(name, symbol, defaultOperators);
- __ERC777Mock_init_unchained(initialHolder, initialBalance, name, symbol, defaultOperators);
- }
- function __ERC777Mock_init_unchained(
- address initialHolder,
- uint256 initialBalance,
- string memory,
- string memory,
- address[] memory
- ) internal onlyInitializing {
- _mint(initialHolder, initialBalance, "", "");
- }
- function mintInternal(
- address to,
- uint256 amount,
- bytes memory userData,
- bytes memory operatorData
- ) public {
- _mint(to, amount, userData, operatorData);
- }
- function mintInternalExtended(
- address to,
- uint256 amount,
- bytes memory userData,
- bytes memory operatorData,
- bool requireReceptionAck
- ) public {
- _mint(to, amount, userData, operatorData, requireReceptionAck);
- }
- function approveInternal(
- address holder,
- address spender,
- uint256 value
- ) public {
- _approve(holder, spender, value);
- }
- function _beforeTokenTransfer(
- address,
- address,
- address,
- uint256
- ) internal override {
- emit BeforeTokenTransfer();
- }
- /**
- * 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;
- }
|