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 of owner through transferFrom.

State-Changing Functions

approve

function approve(address spender, uint256 amount) external returns (bool);
  • Sets amount as the allowance of spender 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 to recipient.

  • 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 from sender to recipient 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 from msg.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 in IERC20-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 in IERC20-approve.

  • Emits an Approval event indicating the updated allowance.

Last updated