Git Source

Inherits: RuleAdministratorOnly, ActionTypesArray, ITokenHandlerEvents, IAssetHandlerErrors

Author: @ShaneDuncan602 @oscarsernarosero @TJ-Everett

Setters and getters for the rule in the handler. Meant to be inherited by a handler facet to easily support the rule.

Functions

setTokenMaxDailyTradesId

Rule Setters and Getters

that setting a rule will automatically activate it.

Set the TokenMaxDailyTrades. Restricted to rule administrators only.

function setTokenMaxDailyTradesId(ActionTypes[] calldata _actions, uint32 _ruleId)
    external
    ruleAdministratorOnly(lib.handlerBaseStorage().appManager);

Parameters

NameTypeDescription
_actionsActionTypes[]the action types
_ruleIduint32Rule Id to set

setTokenMaxDailyTradesIdFull

that setting a rule will automatically activate it.

This function does not check that the array length is greater than zero to allow for clearing out of the action types data

Set the setTokenMaxDailyTrades Rule suite. Restricted to rule administrators only.

function setTokenMaxDailyTradesIdFull(ActionTypes[] calldata _actions, uint32[] calldata _ruleIds)
    external
    ruleAdministratorOnly(lib.handlerBaseStorage().appManager);

Parameters

NameTypeDescription
_actionsActionTypes[]actions to have the rule applied to
_ruleIdsuint32[]Rule Id corresponding to the actions

clearTokenMaxDailyTrades

Clear the rule data structure

function clearTokenMaxDailyTrades() internal;

resetTokenMaxDailyTrades

reset the ruleChangeDate within the rule data struct. This will signal the rule check to clear the accumulator data prior to checking the rule.

function resetTokenMaxDailyTrades() internal;

setTokenMaxDailyTradesIdUpdate

that setting a rule will automatically activate it.

Set the TokenMaxDailyTrades.

function setTokenMaxDailyTradesIdUpdate(ActionTypes _action, uint32 _ruleId) internal;

Parameters

NameTypeDescription
_actionActionTypesthe action type to set the rule
_ruleIduint32Rule Id to set

activateTokenMaxDailyTrades

enable/disable rule. Disabling a rule will save gas on transfer transactions.

function activateTokenMaxDailyTrades(ActionTypes[] calldata _actions, bool _on)
    external
    ruleAdministratorOnly(lib.handlerBaseStorage().appManager);

Parameters

NameTypeDescription
_actionsActionTypes[]the action types
_onboolboolean representing if a rule must be checked or not.

getTokenMaxDailyTradesId

Retrieve the token max daily trades rule id

function getTokenMaxDailyTradesId(ActionTypes _action) external view returns (uint32);

Parameters

NameTypeDescription
_actionActionTypesthe action type

Returns

NameTypeDescription
<none>uint32tokenMaxDailyTradesRuleId

isTokenMaxDailyTradesActive

Tells you if the tokenMaxDailyTradesRule is active or not.

function isTokenMaxDailyTradesActive(ActionTypes _action) external view returns (bool);

Parameters

NameTypeDescription
_actionActionTypesthe action type

Returns

NameTypeDescription
<none>boolboolean representing if the rule is active