ERC20PresetMinterPauser
Last updated
Last updated
{ERC20} token, including: - ability for holders to burn (destroy) their tokens - a minter role that allows for token minting (creation) - a pauser role that allows to stop all token transfers This contract uses {AccessControl} to lock permissioned functions using the different roles - head to its documentation for details. The account that deploys the contract will be granted the minter and pauser roles, as well as the default admin role, which will let it grant both minter and pauser roles to other accounts. Deprecated in favor of https://wizard.openzeppelin.com/[Contracts Wizard].
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
See {IERC20-allowance}.
See {IERC20-approve}. NOTE: If amount
is the maximum uint256
, the allowance is not updated on transferFrom
. This is semantically equivalent to an infinite approval. Requirements: - spender
cannot be the zero address.
See {IERC20-balanceOf}.
Destroys amount
tokens from the caller. See {ERC20-_burn}.
Destroys amount
tokens from account
, deducting from the caller's allowance. See {ERC20-_burn} and {ERC20-allowance}. Requirements: - the caller must have allowance for accounts
's tokens of at least amount
.
Returns the number of decimals used to get its user representation. For example, if decimals
equals 2
, a balance of 505
tokens should be displayed to a user as 5.05
(505 / 10 ** 2
). Tokens usually opt for a value of 18, imitating the relationship between Ether and Wei. This is the value {ERC20} uses, unless this function is overridden; NOTE: This information is only used for display purposes: it in no way affects any of the arithmetic of the contract, including {IERC20-balanceOf} and {IERC20-transfer}.
Atomically decreases the allowance granted to spender
by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - spender
cannot be the zero address. - spender
must have allowance for the caller of at least subtractedValue
.
Returns the admin role that controls role
. See {grantRole} and {revokeRole}. To change a role's admin, use {_setRoleAdmin}.
Returns one of the accounts that have role
. index
must be a value between 0 and {getRoleMemberCount}, non-inclusive. Role bearers are not sorted in any particular way, and their ordering may change at any point. WARNING: When using {getRoleMember} and {getRoleMemberCount}, make sure you perform all queries on the same block. See the following https://forum.openzeppelin.com/t/iterating-over-elements-on-enumerableset-in-openzeppelin-contracts/2296[forum post] for more information.
Returns the number of accounts that have role
. Can be used together with {getRoleMember} to enumerate all bearers of a role.
Grants role
to account
. If account
had not been already granted role
, emits a {RoleGranted} event. Requirements: - the caller must have role
's admin role.
Returns true
if account
has been granted role
.
Atomically increases the allowance granted to spender
by the caller. This is an alternative to {approve} that can be used as a mitigation for problems described in {IERC20-approve}. Emits an {Approval} event indicating the updated allowance. Requirements: - spender
cannot be the zero address.
Creates amount
new tokens for to
. See {ERC20-_mint}. Requirements: - the caller must have the MINTER_ROLE
.
Returns the name of the token.
Pauses all token transfers. See {ERC20Pausable} and {Pausable-_pause}. Requirements: - the caller must have the PAUSER_ROLE
.
Returns true if the contract is paused, and false otherwise.
Revokes role
from the calling account. Roles are often managed via {grantRole} and {revokeRole}: this function's purpose is to provide a mechanism for accounts to lose their privileges if they are compromised (such as when a trusted device is misplaced). If the calling account had been revoked role
, emits a {RoleRevoked} event. Requirements: - the caller must be account
.
Revokes role
from account
. If account
had been granted role
, emits a {RoleRevoked} event. Requirements: - the caller must have role
's admin role.
See {IERC165-supportsInterface}.
Returns the symbol of the token, usually a shorter version of the name.
See {IERC20-totalSupply}.
See {IERC20-transfer}. Requirements: - to
cannot be the zero address. - the caller must have a balance of at least amount
.
See {IERC20-transferFrom}. Emits an {Approval} event indicating the updated allowance. This is not required by the EIP. See the note at the beginning of {ERC20}. NOTE: Does not update the allowance if the current allowance is the maximum uint256
. Requirements: - from
and to
cannot be the zero address. - from
must have a balance of at least amount
. - the caller must have allowance for from
's tokens of at least amount
.
Unpauses all token transfers. See {ERC20Pausable} and {Pausable-_unpause}. Requirements: - the caller must have the PAUSER_ROLE
.
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
Name | Type | Description |
---|---|---|
_0
bytes32
undefined
_0
bytes32
undefined
_0
bytes32
undefined
owner
address
undefined
spender
address
undefined
_0
uint256
undefined
spender
address
undefined
amount
uint256
undefined
_0
bool
undefined
account
address
undefined
_0
uint256
undefined
amount
uint256
undefined
account
address
undefined
amount
uint256
undefined
_0
uint8
undefined
spender
address
undefined
subtractedValue
uint256
undefined
_0
bool
undefined
role
bytes32
undefined
_0
bytes32
undefined
role
bytes32
undefined
index
uint256
undefined
_0
address
undefined
role
bytes32
undefined
_0
uint256
undefined
role
bytes32
undefined
account
address
undefined
role
bytes32
undefined
account
address
undefined
_0
bool
undefined
spender
address
undefined
addedValue
uint256
undefined
_0
bool
undefined
to
address
undefined
amount
uint256
undefined
_0
string
undefined
_0
bool
undefined
role
bytes32
undefined
account
address
undefined
role
bytes32
undefined
account
address
undefined
interfaceId
bytes4
undefined
_0
bool
undefined
_0
string
undefined
_0
uint256
undefined
to
address
undefined
amount
uint256
undefined
_0
bool
undefined
from
address
undefined
to
address
undefined
amount
uint256
undefined
_0
bool
undefined
owner indexed
address
undefined
spender indexed
address
undefined
value
uint256
undefined
account
address
undefined
role indexed
bytes32
undefined
previousAdminRole indexed
bytes32
undefined
newAdminRole indexed
bytes32
undefined
role indexed
bytes32
undefined
account indexed
address
undefined
sender indexed
address
undefined
role indexed
bytes32
undefined
account indexed
address
undefined
sender indexed
address
undefined
from indexed
address
undefined
to indexed
address
undefined
value
uint256
undefined
account
address
undefined