v4-core
v4-core copied to clipboard
Optimise settle function
Component
Pool Actions (swap, modifyPosition, donate, take, settle, mint)
Describe the suggested feature and problem it solves.
PoolManager.sol Settle() methods L371 get an new value and stored it. L372 read it. But we can use a temp variable to save one storage read.
Describe the desired implementation.
function settle(Currency currency) external payable override noDelegateCall onlyByLocker returns (uint256 paid) {
uint256 reservesBefore = reservesOf[currency];
uint256 reservesNow = currency.balanceOfSelf();
reservesOf[currency] = reservesNow;
paid = reservesNow - reservesBefore;
// subtraction must be safe
_accountDelta(currency, -(paid.toInt128()));
}
Describe alternatives.
No response
Additional context.
No response