ERC721 ​
Fluid Vault Factory ERC721 base contract. Implements the ERC721 standard, based on Solmate. In addition, implements ERC721 Enumerable. Modern, minimalist, and gas efficient ERC-721 with Enumerable implementation.
Transfer ​
event Transfer(address from, address to, uint256 id)
Approval ​
event Approval(address owner, address spender, uint256 id)
ApprovalForAll ​
event ApprovalForAll(address owner, address operator, bool approved)
name ​
string name
symbol ​
string symbol
tokenURI ​
function tokenURI(uint256 id) public view virtual returns (string)
_tokenConfig ​
mapping(uint256 => uint256) _tokenConfig
_ownerConfig ​
mapping(address => mapping(uint256 => uint256)) _ownerConfig
ownerOf ​
function ownerOf(uint256 id_) public view virtual returns (address owner_)
returns owner_
of NFT with id_
balanceOf ​
function balanceOf(address owner_) public view virtual returns (uint256)
returns total count of NFTs owned by owner_
totalSupply ​
uint256 totalSupply
total amount of tokens stored by the contract.
getApproved ​
mapping(uint256 => address) getApproved
trackes if a NFT id is approved for a certain address.
isApprovedForAll ​
mapping(address => mapping(address => bool)) isApprovedForAll
trackes if all the NFTs of an owner are approved for a certain other address.
constructor ​
constructor(string _name, string _symbol) internal
approve ​
function approve(address spender_, uint256 id_) public virtual
approves an NFT with id_
to be spent (transferred) by spender_
setApprovalForAll ​
function setApprovalForAll(address operator_, bool approved_) public virtual
approves all NFTs owned by msg.sender to be spent (transferred) by operator_
transferFrom ​
function transferFrom(address from_, address to_, uint256 id_) public virtual
transfers an NFT with id_
from_
address to_
address without safe check
safeTransferFrom ​
function safeTransferFrom(address from_, address to_, uint256 id_) public virtual
transfers an NFT with id_
from_
address to_
address
safeTransferFrom ​
function safeTransferFrom(address from_, address to_, uint256 id_, bytes data_) public virtual
transfers an NFT with id_
from_
address to_
address, passing data_
to onERC721Received
callback
tokenByIndex ​
function tokenByIndex(uint256 index_) external view returns (uint256)
Returns a token ID at a given index_
of all the tokens stored by the contract. Use along with {totalSupply} to enumerate all tokens.
tokenOfOwnerByIndex ​
function tokenOfOwnerByIndex(address owner_, uint256 index_) external view returns (uint256)
Returns a token ID owned by owner_
at a given index_
of its token list. Use along with {balanceOf} to enumerate all of owner_
's tokens.
supportsInterface ​
function supportsInterface(bytes4 interfaceId_) public view virtual returns (bool)
_transfer ​
function _transfer(address from_, address to_, uint256 id_, uint256 vaultId_) internal
_mint ​
function _mint(address to_, uint256 vaultId_) internal virtual returns (uint256 id_)
ERC721TokenReceiver ​
onERC721Received ​
function onERC721Received(address, address, uint256, bytes) external virtual returns (bytes4)