mirror of
				https://github.com/Instadapp/aave-protocol-v2.git
				synced 2024-07-29 21:47:30 +00:00 
			
		
		
		
	Removed unused param in struct
This commit is contained in:
		
							parent
							
								
									eb9077f25e
								
							
						
					
					
						commit
						7f44a0c242
					
				| 
						 | 
				
			
			@ -11,6 +11,22 @@ interface IReserveInterestRateStrategy {
 | 
			
		|||
 | 
			
		||||
  function getMaxVariableBorrowRate() external view returns (uint256);
 | 
			
		||||
 | 
			
		||||
  function calculateInterestRates(
 | 
			
		||||
    address reserve,
 | 
			
		||||
    uint256 availableLiquidity,
 | 
			
		||||
    uint256 totalStableDebt,
 | 
			
		||||
    uint256 totalVariableDebt,
 | 
			
		||||
    uint256 averageStableBorrowRate,
 | 
			
		||||
    uint256 reserveFactor
 | 
			
		||||
  )
 | 
			
		||||
    external
 | 
			
		||||
    view
 | 
			
		||||
    returns (
 | 
			
		||||
      uint256,
 | 
			
		||||
      uint256,
 | 
			
		||||
      uint256
 | 
			
		||||
    );
 | 
			
		||||
 | 
			
		||||
  function calculateInterestRates(
 | 
			
		||||
    address reserve,
 | 
			
		||||
    address aToken,
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -98,15 +98,6 @@ contract DefaultReserveInterestRateStrategy is IReserveInterestRateStrategy {
 | 
			
		|||
    return _baseVariableBorrowRate.add(_variableRateSlope1).add(_variableRateSlope2);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  struct CalcInterestRatesLocalVars {
 | 
			
		||||
    uint256 totalDebt;
 | 
			
		||||
    uint256 currentVariableBorrowRate;
 | 
			
		||||
    uint256 currentStableBorrowRate;
 | 
			
		||||
    uint256 currentLiquidityRate;
 | 
			
		||||
    uint256 utilizationRate;
 | 
			
		||||
    uint256 availableLiquidity;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * @dev Calculates the interest rates depending on the reserve's state and configurations
 | 
			
		||||
   * @param reserve The address of the reserve
 | 
			
		||||
| 
						 | 
				
			
			@ -136,6 +127,58 @@ contract DefaultReserveInterestRateStrategy is IReserveInterestRateStrategy {
 | 
			
		|||
      uint256,
 | 
			
		||||
      uint256
 | 
			
		||||
    )
 | 
			
		||||
  {
 | 
			
		||||
    uint256 availableLiquidity = IERC20(reserve).balanceOf(aToken);
 | 
			
		||||
    //avoid stack too deep
 | 
			
		||||
    availableLiquidity = availableLiquidity.add(liquidityAdded).sub(liquidityTaken);
 | 
			
		||||
 | 
			
		||||
    return
 | 
			
		||||
      calculateInterestRates(
 | 
			
		||||
        reserve,
 | 
			
		||||
        availableLiquidity,
 | 
			
		||||
        totalStableDebt,
 | 
			
		||||
        totalVariableDebt,
 | 
			
		||||
        averageStableBorrowRate,
 | 
			
		||||
        reserveFactor
 | 
			
		||||
      );
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  struct CalcInterestRatesLocalVars {
 | 
			
		||||
    uint256 totalDebt;
 | 
			
		||||
    uint256 currentVariableBorrowRate;
 | 
			
		||||
    uint256 currentStableBorrowRate;
 | 
			
		||||
    uint256 currentLiquidityRate;
 | 
			
		||||
    uint256 utilizationRate;
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  /**
 | 
			
		||||
   * @dev Calculates the interest rates depending on the reserve's state and configurations.
 | 
			
		||||
   * NOTE This function is kept for compatibility with the previous DefaultInterestRateStrategy interface.
 | 
			
		||||
   * New protocol implementation uses the new calculateInterestRates() interface
 | 
			
		||||
   * @param reserve The address of the reserve
 | 
			
		||||
   * @param availableLiquidity The liquidity available in the corresponding aToken
 | 
			
		||||
   * @param totalStableDebt The total borrowed from the reserve a stable rate
 | 
			
		||||
   * @param totalVariableDebt The total borrowed from the reserve at a variable rate
 | 
			
		||||
   * @param averageStableBorrowRate The weighted average of all the stable rate loans
 | 
			
		||||
   * @param reserveFactor The reserve portion of the interest that goes to the treasury of the market
 | 
			
		||||
   * @return The liquidity rate, the stable borrow rate and the variable borrow rate
 | 
			
		||||
   **/
 | 
			
		||||
  function calculateInterestRates(
 | 
			
		||||
    address reserve,
 | 
			
		||||
    uint256 availableLiquidity,
 | 
			
		||||
    uint256 totalStableDebt,
 | 
			
		||||
    uint256 totalVariableDebt,
 | 
			
		||||
    uint256 averageStableBorrowRate,
 | 
			
		||||
    uint256 reserveFactor
 | 
			
		||||
  )
 | 
			
		||||
    public
 | 
			
		||||
    view
 | 
			
		||||
    override
 | 
			
		||||
    returns (
 | 
			
		||||
      uint256,
 | 
			
		||||
      uint256,
 | 
			
		||||
      uint256
 | 
			
		||||
    )
 | 
			
		||||
  {
 | 
			
		||||
    CalcInterestRatesLocalVars memory vars;
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			@ -143,11 +186,10 @@ contract DefaultReserveInterestRateStrategy is IReserveInterestRateStrategy {
 | 
			
		|||
    vars.currentVariableBorrowRate = 0;
 | 
			
		||||
    vars.currentStableBorrowRate = 0;
 | 
			
		||||
    vars.currentLiquidityRate = 0;
 | 
			
		||||
    vars.availableLiquidity = IERC20(reserve).balanceOf(aToken);
 | 
			
		||||
    vars.availableLiquidity = vars.availableLiquidity.add(liquidityAdded).sub(liquidityTaken);
 | 
			
		||||
 | 
			
		||||
    vars.utilizationRate =
 | 
			
		||||
      vars.totalDebt == 0 ? 0 : vars.totalDebt.rayDiv(vars.availableLiquidity.add(vars.totalDebt));
 | 
			
		||||
    vars.utilizationRate = vars.totalDebt == 0
 | 
			
		||||
      ? 0
 | 
			
		||||
      : vars.totalDebt.rayDiv(availableLiquidity.add(vars.totalDebt));
 | 
			
		||||
 | 
			
		||||
    vars.currentStableBorrowRate = ILendingRateOracle(addressesProvider.getLendingRateOracle())
 | 
			
		||||
      .getMarketBorrowRate(reserve);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -42,7 +42,7 @@ makeSuite('Interest rate strategy tests', (testEnv: TestEnv) => {
 | 
			
		|||
      0: currentLiquidityRate,
 | 
			
		||||
      1: currentStableBorrowRate,
 | 
			
		||||
      2: currentVariableBorrowRate,
 | 
			
		||||
    } = await strategyInstance.calculateInterestRates(
 | 
			
		||||
    } = await strategyInstance['calculateInterestRates(address,address,uint256,uint256,uint256,uint256,uint256,uint256)'](
 | 
			
		||||
      dai.address,
 | 
			
		||||
      aDai.address,
 | 
			
		||||
      0,
 | 
			
		||||
| 
						 | 
				
			
			@ -69,7 +69,7 @@ makeSuite('Interest rate strategy tests', (testEnv: TestEnv) => {
 | 
			
		|||
      0: currentLiquidityRate,
 | 
			
		||||
      1: currentStableBorrowRate,
 | 
			
		||||
      2: currentVariableBorrowRate,
 | 
			
		||||
    } = await strategyInstance.calculateInterestRates(
 | 
			
		||||
    } = await strategyInstance['calculateInterestRates(address,address,uint256,uint256,uint256,uint256,uint256,uint256)'](
 | 
			
		||||
      dai.address,
 | 
			
		||||
      aDai.address,
 | 
			
		||||
      '200000000000000000',
 | 
			
		||||
| 
						 | 
				
			
			@ -108,7 +108,7 @@ makeSuite('Interest rate strategy tests', (testEnv: TestEnv) => {
 | 
			
		|||
      0: currentLiquidityRate,
 | 
			
		||||
      1: currentStableBorrowRate,
 | 
			
		||||
      2: currentVariableBorrowRate,
 | 
			
		||||
    } = await strategyInstance.calculateInterestRates(
 | 
			
		||||
    } = await strategyInstance['calculateInterestRates(address,address,uint256,uint256,uint256,uint256,uint256,uint256)'](
 | 
			
		||||
      dai.address,
 | 
			
		||||
      aDai.address,
 | 
			
		||||
      '0',
 | 
			
		||||
| 
						 | 
				
			
			@ -150,7 +150,7 @@ makeSuite('Interest rate strategy tests', (testEnv: TestEnv) => {
 | 
			
		|||
      0: currentLiquidityRate,
 | 
			
		||||
      1: currentStableBorrowRate,
 | 
			
		||||
      2: currentVariableBorrowRate,
 | 
			
		||||
    } = await strategyInstance.calculateInterestRates(
 | 
			
		||||
    } = await strategyInstance['calculateInterestRates(address,address,uint256,uint256,uint256,uint256,uint256,uint256)'](
 | 
			
		||||
      dai.address,
 | 
			
		||||
      aDai.address,
 | 
			
		||||
      '0',
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue
	
	Block a user