INFT

Git Source

Inherits: IERC721Metadata

Author: mortimr @ Kiln

NFT contract using utils.sol storage format.

Functions

totalSupply

Retrieve the total count of validator created with this contract.

function totalSupply() external view returns (uint256);

Returns

NameTypeDescription
<none>uint256The total count of NFT validators of this contract

Events

SetName

Emitted when name is changed.

event SetName(string name);

SetSymbol

Emitted when symbol is changed.

event SetSymbol(string symbol);

Errors

TokenAlreadyMinted

Thrown when the token is already minted when it shouldn't.

error TokenAlreadyMinted(uint256 tokenId);

IllegalMintToZero

Thrown when a mint operation to address zero is attempted.

error IllegalMintToZero();

IllegalTransferToZero

Thrown when a transfer operation to address zero is attempted.

error IllegalTransferToZero();

ApprovalToOwner

Thrown when approval to self is made.

error ApprovalToOwner(address owner);

InvalidTokenId

Thrown when provided token id is invalid.

error InvalidTokenId(uint256 tokenId);

NonERC721ReceiverTransfer

Thrown when the receiving contract is not able to receive the token.

error NonERC721ReceiverTransfer(address from, address to, uint256 tokenId, bytes data);

IllegalTransferWhileFrozen

Throw when an nft transfer was attempted while the nft is frozen. NFTs get frozen for ever once the exit request is made. NFTs get frozen for 6 hours when a withdrawal is made.

error IllegalTransferWhileFrozen(uint256 tokenId, uint256 currentTimestamp, uint256 freezeTimestamp);