Documentation Index
Fetch the complete documentation index at: https://thrackle.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Git Source
Inherits:
Initializable, ERC721EnumerableUpgradeable, ProtocolTokenCommonU, ReentrancyGuard
Author:
@ShaneDuncan602, @oscarsernarosero, @TJ-Everett
This is the base contract for all protocol ERC721Upgradeable Minimals.
State Variables
handlerAddress
address private handlerAddress;
handler
IProtocolTokenHandler private handler;
__gap
memory placeholders to allow variable addition without affecting client upgradeability
Functions
__ProtocolERC721_init
Initializer sets the the App Manager
function __ProtocolERC721_init(address _appManagerAddress) internal onlyInitializing;
Parameters
| Name | Type | Description |
|---|
_appManagerAddress | address | Address of App Manager |
__ProtocolERC721_init_unchained
function __ProtocolERC721_init_unchained(address _appManagerAddress) internal onlyInitializing;
_beforeTokenTransfer
Function called before any token transfers to confirm transfer is within rules of the protocol
function _beforeTokenTransfer(address from, address to, uint256 tokenId, uint256 batchSize)
internal
virtual
override
nonReentrant;
Parameters
| Name | Type | Description |
|---|
from | address | sender address |
to | address | recipient address |
tokenId | uint256 | Id of token to be transferred |
batchSize | uint256 | the amount of NFTs to mint in batch. If a value greater than 1 is given, tokenId will represent the first id to start the batch. |
getHandlerAddress
Rule Processor Module Check
This function returns the handler address
function getHandlerAddress() external view returns (address);
Returns
| Name | Type | Description |
|---|
<none> | address | handlerAddress |
connectHandlerToToken
This function does not check for zero address. Zero address is a valid address for this function’s purpose.
Function to connect Token to previously deployed Handler contract
function connectHandlerToToken(address _deployedHandlerAddress) external appAdministratorOnly(appManagerAddress);
Parameters
| Name | Type | Description |
|---|
_deployedHandlerAddress | address | address of the currently deployed Handler Address |