RateLimited
Functions
constructor
function constructor(
uint256 _maxRateLimitPerSecond,
uint256 _rateLimitPerSecond,
uint256 _bufferCap,
bool _doPartialAction
) internal
Parameters
_maxRateLimitPerSecond
uint256
_rateLimitPerSecond
uint256
_bufferCap
uint256
_doPartialAction
bool
setRateLimitPerSecond
function setRateLimitPerSecond(
uint256 newRateLimitPerSecond
) external
set the rate limit per second
Parameters
newRateLimitPerSecond
uint256
setBufferCap
function setBufferCap(
uint256 newBufferCap
) external
set the buffer cap
Parameters
newBufferCap
uint256
buffer
function buffer() public returns (uint256)
the amount of action used before hitting limit
replenishes at rateLimitPerSecond per second up to bufferCap
_depleteBuffer
function _depleteBuffer(
uint256 amount
) internal returns (uint256)
the method that enforces the rate limit. Decreases buffer by "amount". If buffer is <= amount either 1. Does a partial mint by the amount remaining in the buffer or 2. Reverts Depending on whether doPartialAction is true or false
Parameters
amount
uint256
_setRateLimitPerSecond
function _setRateLimitPerSecond(
uint256 newRateLimitPerSecond
) internal
Parameters
newRateLimitPerSecond
uint256
_setBufferCap
function _setBufferCap(
uint256 newBufferCap
) internal
Parameters
newBufferCap
uint256
_resetBuffer
function _resetBuffer() internal
_updateBufferStored
function _updateBufferStored() internal
Events
BufferUsed
event BufferUsed(
uint256 amountUsed,
uint256 bufferRemaining
)
Parameters
amountUsed
uint256
bufferRemaining
uint256
### BufferCapUpdate
event BufferCapUpdate(
uint256 oldBufferCap,
uint256 newBufferCap
)
Parameters
oldBufferCap
uint256
newBufferCap
uint256
### RateLimitPerSecondUpdate
event RateLimitPerSecondUpdate(
uint256 oldRateLimitPerSecond,
uint256 newRateLimitPerSecond
)
Parameters
oldRateLimitPerSecond
uint256
newRateLimitPerSecond
uint256
Last updated