JBFundAccessLimits
Inherits: JBControlled, IJBFundAccessLimits
Stores and manages terminal fund access limits for each project.
See the JBFundAccessLimitGroup struct to learn about payout limits and surplus allowances.
State Variables
_packedPayoutLimitsDataOf
An array of packed payout limits for a given project, ruleset, terminal, and token.
bits 0-223: The maximum amount (in a specific currency) of the terminal's tokens that the project can pay
out during the ruleset.
bits 224-255: The currency that the payout limit is denominated in. If this currency is different from the
terminal's token, the payout limit will vary depending on their exchange rate.
mapping(
uint256 projectId => mapping(uint256 rulesetId => mapping(address terminal => mapping(address token => uint256[])))
) internal _packedPayoutLimitsDataOf;
_packedSurplusAllowancesDataOf
An array of packed surplus allowances for a given project, ruleset, terminal, and token.
bits 0-223: The maximum amount (in a specific currency) of the terminal's tokens that the project can
access from its surplus during the ruleset.
bits 224-255: The currency that the surplus allowance is denominated in. If this currency is different from
the terminal's token, the surplus allowance will vary depending on their exchange rate.
mapping(
uint256 projectId => mapping(uint256 rulesetId => mapping(address terminal => mapping(address token => uint256[])))
) internal _packedSurplusAllowancesDataOf;
Functions
constructor
constructor(IJBDirectory directory) JBControlled(directory);
Parameters
| Name | Type | Description |
|---|---|---|
directory | IJBDirectory | A contract storing the terminals and the controller used by each project. |