Hord Token
Represents HORD token contract.
Code
HordToken.sol
Address
HordToken
is deployed at 0x43A96962254855F16b925556f9e97BE436A43448
on the Ethereum mainnet.
Overview
Implementation of the IERC20
interface.
This implementation is agnostic to the way tokens are created. This means that a supply mechanism has to be added in a derived contract using _mint
. For a generic mechanism see ERC20PresetMinterPauser
.
TIP: https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How to implement supply mechanisms].
We have followed general OpenZeppelin guidelines: functions revert instead of returning false
on failure. This behavior is nonetheless conventional and does not conflict with the expectations of ERC20
applications.
Additionally, an Approval
event is emitted on calls to transferFrom
. This allows applications to reconstruct the allowance for all accounts just by listening to said events. Other implementations of the EIP may not emit these events, as it isn't required by the specification.
Finally, the non-standard decreaseAllowance
and increaseAllowance
functions have been added to mitigate the well-known issues around setting allowances. See IERC20-approve
.
Events
Approval
event Approval(address indexed owner, address indexed spender, uint256 value);
Emitted each time an approval occurs via _approve
Transfer
event Transfer(address indexed from, address indexed to, uint256 value);
Emitted each time a transfer occurs via _transfer or _burn.
Read-Only Functions
name
function name() external pure returns (string memory);
Returns the name of the token. [
Hord Token
]
symbol
function symbol() external pure returns (string memory);
Returns the symbol of the token, usually a shorter version of the name. [
HORD
]
decimals
function decimals() external pure returns (uint8);
Returns the number of decimals used to get its user representation. [
18
]
totalSupply
function totalSupply() external view returns (uint);
Returns the total amount of HORD tokens.
balanceOf
function balanceOf(address account) external view returns (uint);
Returns the amount of tokens owned by an
account
address.
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 ofowner
throughtransferFrom
.
State-Changing Functions
approve
function approve(address spender, uint256 amount) external returns (bool);
Sets
amount
as the allowance ofspender
over the caller's tokens.Returns a boolean value indicating whether the operation succeeded.
Emits an
Approval
event.
transfer
function transfer(address recipient, uint256 amount) external returns (bool);
Moves
amount
tokens from the caller's account torecipient
.Returns a boolean value indicating whether the operation succeeded.
Emits a
Transfer
event.
transferFrom
function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
Moves
amount
tokens fromsender
torecipient
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.
burn
function burn(uint amount) public virtual;
Destroys
amount
tokens frommsg.sender
, reducing the total supply.Emits a
Transfer
event.
increaseAllowance
function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool)
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 inIERC20-approve
.Emits an
Approval
event indicating the updated allowance.
decreaseAllowance
function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool)
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 inIERC20-approve
.Emits an
Approval
event indicating the updated allowance.
Last updated
Was this helpful?