@@ -8,8 +8,6 @@ import "../openzeppelin-presets/token/ERC20/extensions/ERC20Permit.sol";
8
8
import "../extension/ContractMetadata.sol " ;
9
9
import "../extension/Multicall.sol " ;
10
10
import "../extension/Ownable.sol " ;
11
- import "../extension/interface/IMintableERC20.sol " ;
12
- import "../extension/interface/IBurnableERC20.sol " ;
13
11
14
12
/**
15
13
* The `ERC20Base` smart contract implements the ERC20 standard.
@@ -26,7 +24,7 @@ import "../extension/interface/IBurnableERC20.sol";
26
24
* presenting a message signed by the account.
27
25
*/
28
26
29
- contract ERC20Base is ContractMetadata , Multicall , Ownable , ERC20Permit , IMintableERC20 , IBurnableERC20 {
27
+ contract ERC20Base is ContractMetadata , Multicall , Ownable , ERC20Permit {
30
28
/*//////////////////////////////////////////////////////////////
31
29
Constructor
32
30
//////////////////////////////////////////////////////////////*/
@@ -64,22 +62,6 @@ contract ERC20Base is ContractMetadata, Multicall, Ownable, ERC20Permit, IMintab
64
62
_burn (msg .sender , _amount);
65
63
}
66
64
67
- /**
68
- * @notice Lets an owner burn a given amount of an account's tokens.
69
- * @dev `_account` should own the `_amount` of tokens.
70
- *
71
- * @param _account The account to burn tokens from.
72
- * @param _amount The number of tokens to burn.
73
- */
74
- function burnFrom (address _account , uint256 _amount ) external virtual override {
75
- require (_canBurn (), "Not authorized to burn. " );
76
- require (balanceOf (_account) >= _amount, "not enough balance " );
77
- uint256 decreasedAllowance = allowance (_account, msg .sender ) - _amount;
78
- _approve (_account, msg .sender , 0 );
79
- _approve (_account, msg .sender , decreasedAllowance);
80
- _burn (_account, _amount);
81
- }
82
-
83
65
/*//////////////////////////////////////////////////////////////
84
66
Internal (overrideable) functions
85
67
//////////////////////////////////////////////////////////////*/
@@ -94,11 +76,6 @@ contract ERC20Base is ContractMetadata, Multicall, Ownable, ERC20Permit, IMintab
94
76
return msg .sender == owner ();
95
77
}
96
78
97
- /// @dev Returns whether tokens can be burned in the given execution context.
98
- function _canBurn () internal view virtual returns (bool ) {
99
- return msg .sender == owner ();
100
- }
101
-
102
79
/// @dev Returns whether owner can be set in the given execution context.
103
80
function _canSetOwner () internal view virtual override returns (bool ) {
104
81
return msg .sender == owner ();
0 commit comments