From d1409bdc268353f0779a8fc3e98ea4a5f4e33904 Mon Sep 17 00:00:00 2001 From: Michalis Kargakis Date: Mon, 10 Jun 2024 12:13:13 +0200 Subject: [PATCH] perf(sol): optimize zero amount checks --- src/FeeCalculator.sol | 4 ++-- src/FlatFeeCalculator.sol | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/FeeCalculator.sol b/src/FeeCalculator.sol index 3eb4bbc..9768a61 100644 --- a/src/FeeCalculator.sol +++ b/src/FeeCalculator.sol @@ -401,12 +401,12 @@ contract FeeCalculator is IFeeCalculator, Ownable { uint256 totalPoolSupply, function(uint256, uint256, uint256) view returns (uint256) calculator ) internal view returns (FeeDistribution memory) { - require(requestedAmount > 0, "requested amount must be > 0"); + require(requestedAmount != 0, "requested amount must be > 0"); uint256 feeAmount = calculator(requestedAmount, projectSupply, totalPoolSupply); require(feeAmount <= requestedAmount, "Fee must be lower or equal to requested amount"); - require(feeAmount > 0, "Fee must be greater than 0"); + require(feeAmount != 0, "Fee must be greater than 0"); return calculateFeeShares(feeAmount); } diff --git a/src/FlatFeeCalculator.sol b/src/FlatFeeCalculator.sol index 4a30f5c..04f8b36 100644 --- a/src/FlatFeeCalculator.sol +++ b/src/FlatFeeCalculator.sol @@ -39,7 +39,7 @@ contract FlatFeeCalculator is IFeeCalculator, Ownable { constructor() Ownable() {} function setFeeToUnderlyingDecimalsScale(uint256 _feeToUnderlyingDecimalsScale) external onlyOwner { - require(_feeToUnderlyingDecimalsScale > 0, "Fee to underlying decimals scale must be greater than 0"); + require(_feeToUnderlyingDecimalsScale != 0, "Fee to underlying decimals scale must be greater than 0"); feeToUnderlyingDecimalsScale = _feeToUnderlyingDecimalsScale; } @@ -167,13 +167,13 @@ contract FlatFeeCalculator is IFeeCalculator, Ownable { /// @param requestedAmount The amount to be used for the fee calculation. /// @return feeDistribution How the fee is meant to be function _calculateFee(uint256 requestedAmount) internal view returns (FeeDistribution memory) { - require(requestedAmount > 0, "requested amount must be > 0"); + require(requestedAmount != 0, "requested amount must be > 0"); uint256 adjustedAmount = requestedAmount * feeToUnderlyingDecimalsScale; uint256 feeAmount = adjustedAmount * feeBasisPoints / 10000; require(feeAmount <= adjustedAmount, "Fee must be lower or equal to requested amount"); - require(feeAmount > 0, "Fee must be greater than 0"); + require(feeAmount != 0, "Fee must be greater than 0"); return calculateFeeShares(feeAmount); }