ghost-dao-contracts/src/FatsoERC20.sol
Uncle Fatso 8ac8b67767
get rid of annoying foundry warnings
Signed-off-by: Uncle Fatso <uncle.fatso@ghostchain.io>
2026-03-09 00:37:41 +03:00

39 lines
1.2 KiB
Solidity

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
import {ERC20Permit} from "@openzeppelin-contracts/token/ERC20/extensions/ERC20Permit.sol";
import {ERC20} from "@openzeppelin-contracts/token/ERC20/ERC20.sol";
import {IFTSO} from "./interfaces/IFTSO.sol";
import {IGhostAuthority} from "./interfaces/IGhostAuthority.sol";
import {GhostAccessControlled} from "./types/GhostAccessControlled.sol";
contract Fatso is ERC20Permit, IFTSO, GhostAccessControlled {
constructor(address _authority, string memory name, string memory symbol)
ERC20(name, symbol)
ERC20Permit(name)
GhostAccessControlled(IGhostAuthority(_authority))
{}
function decimals() public pure override returns (uint8) {
return 9;
}
function mint(address account, uint256 amount) external override onlyVault {
_mint(account, amount);
}
function burn(uint256 amount) external override {
_burn(msg.sender, amount);
}
function burnFrom(address account, uint256 amount) external override {
_burnFrom(account, amount);
}
function _burnFrom(address account, uint256 amount) internal {
_spendAllowance(account, _msgSender(), amount);
_burn(account, amount);
}
}