ERC20
Functions
constructor
constructor(string name_, string symbol_) public
public
*Developer note: Sets the values for {name} and {symbol}, initializes {decimals} with a default value of 18.
To select a different value for {decimals}, use {_setupDecimals}.
All three of these values are immutable: they can only be set once during construction.*
name_
string
symbol_
string
name
function name() public view virtual returns (string)
view public
Developer note: Returns the name of the token.
Returns:
[0]
string
symbol
function symbol() public view virtual returns (string)
view public
Developer note: Returns the symbol of the token, usually a shorter version of the name.
Returns:
[0]
string
decimals
function decimals() public view virtual returns (uint8)
view public
*Developer note: 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 {_setupDecimals} is called.
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}.*
Returns:
[0]
uint8
totalSupply
function totalSupply() public view virtual returns (uint256)
view public
Developer note: See {IERC20-totalSupply}.
Returns:
[0]
uint256
balanceOf
function balanceOf(address account) public view virtual returns (uint256)
view public
Developer note: See {IERC20-balanceOf}.
account
address
Returns:
[0]
uint256
transfer
function transfer(address recipient, uint256 amount) public virtual returns (bool)
public
*Developer note: See {IERC20-transfer}.
Requirements:
`recipient` cannot be the zero address.
the caller must have a balance of at least `amount`.*
recipient
address
amount
uint256
Returns:
[0]
bool
allowance
function allowance(address owner, address spender) public view virtual returns (uint256)
view public
Developer note: See {IERC20-allowance}.
owner
address
spender
address
Returns:
[0]
uint256
approve
function approve(address spender, uint256 amount) public virtual returns (bool)
public
*Developer note: See {IERC20-approve}.
Requirements:
`spender` cannot be the zero address.*
spender
address
amount
uint256
Returns:
[0]
bool
transferFrom
function transferFrom(address sender, address recipient, uint256 amount) public virtual returns (bool)
public
*Developer note: 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}.
Requirements:
`sender` and `recipient` cannot be the zero address.
`sender` must have a balance of at least `amount`.
the caller must have allowance for ``sender``'s tokens of at least `amount`.*
sender
address
recipient
address
amount
uint256
Returns:
[0]
bool
increaseAllowance
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool)
public
*Developer note: 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.*
spender
address
addedValue
uint256
Returns:
[0]
bool
decreaseAllowance
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool)
public
*Developer note: 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`.*
spender
address
subtractedValue
uint256
Returns:
[0]
bool