Overview
TheInitiaERC20 contract is an implementation of the ERC20 token standard with
additional functionalities such as access control, registry integration, and
support for Cosmos blockchain interactions. This contract inherits from multiple
contracts including IERC20, Ownable, ERC20Registry, ERC165, and
ERC20ACL.
Inheritance
IERC20: Interface for ERC20 standard functions.Ownable: Provides ownership control.ERC20Registry: Handles ERC20 registry functionalities.ERC165: Supports interface identification.ERC20ACL: Provides access control mechanisms.
Events
-
Transfer: Emitted when tokens are transferred from one address to another. -
address indexed from: The address sending the tokens. -
address indexed to: The address receiving the tokens. -
uint256 value: The amount of tokens transferred. -
Approval: Emitted when an address approves another address to spend tokens on its behalf. -
address indexed owner: The address granting the approval. -
address indexed spender: The address receiving the approval. -
uint256 value: The amount of tokens approved.
State Variables
mapping(address => uint256) public balanceOf: Tracks the balance of each address.mapping(address => mapping(address => uint256)) public allowance: Tracks the allowance each address has given to another address.string public name: The name of the token.string public symbol: The symbol of the token.uint8 public decimals: The number of decimals the token uses.uint256 public totalSupply: The total supply of the token.