Skip to main content

IERC20MetadataUpgradeable

Interface for the optional metadata functions from the ERC20 standard. Available since v4.1.

Methods​

allowance​

function allowance(address owner, address spender) external view returns (uint256)

Returns the remaining number of tokens that spender will be allowed to spend on behalf of owner through {transferFrom}. This is zero by default. This value changes when {approve} or {transferFrom} are called.

Parameters​

NameTypeDescription
owneraddressundefined
spenderaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

approve​

function approve(address spender, uint256 amount) external nonpayable returns (bool)

Sets amount as the allowance of spender over the caller's tokens. Returns a boolean value indicating whether the operation succeeded. IMPORTANT: Beware that changing an allowance with this method brings the risk that someone may use both the old and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards: https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729 Emits an {Approval} event.

Parameters​

NameTypeDescription
spenderaddressundefined
amountuint256undefined

Returns​

NameTypeDescription
_0boolundefined

balanceOf​

function balanceOf(address account) external view returns (uint256)

Returns the amount of tokens owned by account.

Parameters​

NameTypeDescription
accountaddressundefined

Returns​

NameTypeDescription
_0uint256undefined

decimals​

function decimals() external view returns (uint8)

Returns the decimals places of the token.

Returns​

NameTypeDescription
_0uint8undefined

name​

function name() external view returns (string)

Returns the name of the token.

Returns​

NameTypeDescription
_0stringundefined

symbol​

function symbol() external view returns (string)

Returns the symbol of the token.

Returns​

NameTypeDescription
_0stringundefined

totalSupply​

function totalSupply() external view returns (uint256)

Returns the amount of tokens in existence.

Returns​

NameTypeDescription
_0uint256undefined

transfer​

function transfer(address to, uint256 amount) external nonpayable returns (bool)

Moves amount tokens from the caller's account to to. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.

Parameters​

NameTypeDescription
toaddressundefined
amountuint256undefined

Returns​

NameTypeDescription
_0boolundefined

transferFrom​

function transferFrom(address from, address to, uint256 amount) external nonpayable returns (bool)

Moves amount tokens from from to to using the allowance mechanism. amount is then deducted from the caller's allowance. Returns a boolean value indicating whether the operation succeeded. Emits a {Transfer} event.

Parameters​

NameTypeDescription
fromaddressundefined
toaddressundefined
amountuint256undefined

Returns​

NameTypeDescription
_0boolundefined

Events​

Approval​

event Approval(address indexed owner, address indexed spender, uint256 value)

Parameters​

NameTypeDescription
owner indexedaddressundefined
spender indexedaddressundefined
valueuint256undefined

Transfer​

event Transfer(address indexed from, address indexed to, uint256 value)

Parameters​

NameTypeDescription
from indexedaddressundefined
to indexedaddressundefined
valueuint256undefined