Git Source

Inherits: AppAdministratorOrOwnerOnlyDiamondVersion, HandlerUtils, HandlerAccountApproveDenyOracle, HandlerTokenMaxSupplyVolatility, HandlerTokenMaxTradingVolume, HandlerTokenMinTxSize

Functions

checkNonTaggedRules

This function uses the protocol’s ruleProcessorto perform the actual rule checks.

function checkNonTaggedRules(address _from, address _to, address _sender, uint256 _amount, ActionTypes action)
    external
    onlyOwner;

Parameters

NameTypeDescription
_fromaddressaddress of the from account
_toaddressaddress of the to account
_senderaddressaddress of the caller
_amountuint256number of tokens transferred
actionActionTypesif selling or buying (of ActionTypes type)

_checkTokenMinTxSizeRule

tokenMaxTradingVolume Burn tokenMinTxSize Burn tokenMaxTradingVolume Mint tokenMinTxSize Mint tokenMaxTradingVolume P2P_TRANSFER tokenMinTxSize P2P_TRANSFER non custodial buy tokenMaxTradingVolume BUY tokenMaxTradingVolume uses single rule id for all actions so check if Buy has rule id set ELSE check if sell has ruleId set else if conditional used for tokenMaxTrading as there is only one ruleId used for this rule tokenMinTxSize BUY custodial buy tokenMinTxSize BUY non custodial sell tokenMaxTradingVolume SELL tokenMaxTradingVolume uses single rule id for all actions so check if Sell has rule id set ELSE check if sell has ruleId set else if conditional used for tokenMaxTrading as there is only one ruleId used for this rule tokenMinTxSize BUY custodial sell tokenMaxTradingVolume SELL tokenMinTxSize SELL

Internal function to check the Token Min Transaction Size rule

function _checkTokenMinTxSizeRule(uint256 _amount, ActionTypes action, address handlerBase) internal view;

Parameters

NameTypeDescription
_amountuint256number of tokens transferred
actionActionTypesif selling or buying (of ActionTypes type)
handlerBaseaddressaddress of the handler proxy

_checkAccountApproveDenyOraclesRule

Internal function to check the Account Approve Deny Oracle Rules

function _checkAccountApproveDenyOraclesRule(
    address _from,
    address _to,
    address _sender,
    ActionTypes action,
    address handlerBase
) internal view;

Parameters

NameTypeDescription
_fromaddressaddress of the from account
_toaddressaddress of the to account
_senderaddressaddress of the caller
actionActionTypesif selling or buying (of ActionTypes type)
handlerBaseaddressaddress of the handler proxy

_checkTokenMaxTradingVolumeRule

The action type determines if the _to or _from is checked by the oracle _from address is checked for Burn _to address is checked for Mint _from and _to address are checked for BUY, SELL, and P2P_TRANSFER non custodial buy custodial buy non custodial sell custodial sell

Internal function to check the Token Max Trading Volume rule

function _checkTokenMaxTradingVolumeRule(uint256 _amount, address handlerBase) internal;

Parameters

NameTypeDescription
_amountuint256number of tokens transferred
handlerBaseaddressaddress of the handler proxy

_checkTokenMaxSupplyVolatilityRule

Internal function to check the Token Max Supply Volatility rule

function _checkTokenMaxSupplyVolatilityRule(address _to, uint256 _amount, address handlerBase) internal;

Parameters

NameTypeDescription
_toaddressaddress of the to account
_amountuint256number of tokens transferred
handlerBaseaddressaddress of the handler proxy