ProtocolToken

Git Source

Inherits: ERC20, ERC20Permit, ERC20Votes, ERC20Pausable, Authorizable, IProtocolToken

This contract represents the protocol ERC20Votes token to be used for governance purposes

Functions

constructor

constructor(
  string memory _name,
  string memory _symbol
) ERC20(_name, _symbol) ERC20Permit(_name) Authorizable(msg.sender);

Parameters

NameTypeDescription
_namestringString with the name of the token
_symbolstringString with the symbol of the token

mint

Mint an amount of tokens to an account

Only authorized addresses can mint tokens

function mint(address _dst, uint256 _wad) external isAuthorized;

Parameters

NameTypeDescription
_dstaddress
_waduint256

burn

Burn an amount of tokens from the sender

function burn(uint256 _wad) external;

Parameters

NameTypeDescription
_waduint256

unpause

Unpause the token transfers, minting and burning

Only authorized addresses can unpause the token

function unpause() external isAuthorized;

_update

function _update(address _from, address _to, uint256 _value) internal override(ERC20, ERC20Votes, ERC20Pausable);

nonces

function nonces(address _owner) public view override(ERC20Permit, IERC20Permit, Nonces) returns (uint256 _nonce);

clock

Set the clock to block timestamp, as opposed to the default block number.

function clock() public view override returns (uint48 _timestamp);

CLOCK_MODE

function CLOCK_MODE() public view virtual override returns (string memory _mode);