ILens

Git Source

Functions

MAX_BASIS_POINTS

STORAGE ///

function MAX_BASIS_POINTS() external view returns (uint256);

WAD

function WAD() external view returns (uint256);

morpho

function morpho() external view returns (IMorpho);

comptroller

function comptroller() external view returns (IComptroller);

rewardsManager

function rewardsManager() external view returns (IRewardsManager);

getTotalSupply

GENERAL ///

function getTotalSupply()
    external
    view
    returns (uint256 p2pSupplyAmount, uint256 poolSupplyAmount, uint256 totalSupplyAmount);

getTotalBorrow

function getTotalBorrow()
    external
    view
    returns (uint256 p2pBorrowAmount, uint256 poolBorrowAmount, uint256 totalBorrowAmount);

isMarketCreated

MARKETS ///

function isMarketCreated(address _poolToken) external view returns (bool);

isMarketCreatedAndNotPaused

Deprecated.

function isMarketCreatedAndNotPaused(address _poolToken) external view returns (bool);

isMarketCreatedAndNotPausedNorPartiallyPaused

Deprecated.

function isMarketCreatedAndNotPausedNorPartiallyPaused(address _poolToken) external view returns (bool);

getAllMarkets

function getAllMarkets() external view returns (address[] memory marketsCreated_);

getMainMarketData

function getMainMarketData(address _poolToken)
    external
    view
    returns (
        uint256 avgSupplyRatePerBlock,
        uint256 avgBorrowRatePerBlock,
        uint256 p2pSupplyAmount,
        uint256 p2pBorrowAmount,
        uint256 poolSupplyAmount,
        uint256 poolBorrowAmount
    );

getAdvancedMarketData

function getAdvancedMarketData(address _poolToken)
    external
    view
    returns (Types.Indexes memory indexes, uint32 lastUpdateBlockNumber, uint256 p2pSupplyDelta, uint256 p2pBorrowDelta);

getMarketConfiguration

function getMarketConfiguration(address _poolToken)
    external
    view
    returns (
        address underlying,
        bool isCreated,
        bool p2pDisabled,
        bool isPaused,
        bool isPartiallyPaused,
        uint16 reserveFactor,
        uint16 p2pIndexCursor,
        uint256 collateralFactor
    );

getMarketPauseStatus

function getMarketPauseStatus(address _poolToken) external view returns (Types.MarketPauseStatus memory);

getTotalMarketSupply

function getTotalMarketSupply(address _poolToken)
    external
    view
    returns (uint256 p2pSupplyAmount, uint256 poolSupplyAmount);

getTotalMarketBorrow

function getTotalMarketBorrow(address _poolToken)
    external
    view
    returns (uint256 p2pBorrowAmount, uint256 poolBorrowAmount);

getCurrentP2PSupplyIndex

INDEXES ///

function getCurrentP2PSupplyIndex(address _poolToken) external view returns (uint256);

getCurrentP2PBorrowIndex

function getCurrentP2PBorrowIndex(address _poolToken) external view returns (uint256);

getCurrentPoolIndexes

function getCurrentPoolIndexes(address _poolToken)
    external
    view
    returns (uint256 currentPoolSupplyIndex, uint256 currentPoolBorrowIndex);

getIndexes

function getIndexes(address _poolToken, bool _computeUpdatedIndexes)
    external
    view
    returns (Types.Indexes memory indexes);

getEnteredMarkets

USERS ///

function getEnteredMarkets(address _user) external view returns (address[] memory enteredMarkets);

getUserHealthFactor

function getUserHealthFactor(address _user, address[] calldata _updatedMarkets) external view returns (uint256);

getUserBalanceStates

function getUserBalanceStates(address _user, address[] calldata _updatedMarkets)
    external
    view
    returns (uint256 collateralValue, uint256 debtValue, uint256 maxDebtValue);

getCurrentSupplyBalanceInOf

function getCurrentSupplyBalanceInOf(address _poolToken, address _user)
    external
    view
    returns (uint256 balanceOnPool, uint256 balanceInP2P, uint256 totalBalance);

getCurrentBorrowBalanceInOf

function getCurrentBorrowBalanceInOf(address _poolToken, address _user)
    external
    view
    returns (uint256 balanceOnPool, uint256 balanceInP2P, uint256 totalBalance);

getUserMaxCapacitiesForAsset

function getUserMaxCapacitiesForAsset(address _user, address _poolToken)
    external
    view
    returns (uint256 withdrawable, uint256 borrowable);

getUserHypotheticalBalanceStates

function getUserHypotheticalBalanceStates(
    address _user,
    address _poolToken,
    uint256 _withdrawnAmount,
    uint256 _borrowedAmount
) external view returns (uint256 debtValue, uint256 maxDebtValue);

getUserLiquidityDataForAsset

function getUserLiquidityDataForAsset(
    address _user,
    address _poolToken,
    bool _computeUpdatedIndexes,
    ICompoundOracle _oracle
) external view returns (Types.AssetLiquidityData memory assetData);

isLiquidatable

function isLiquidatable(address _user, address[] memory _updatedMarkets) external view returns (bool);

isLiquidatable

function isLiquidatable(address _user, address _poolToken, address[] memory _updatedMarkets)
    external
    view
    returns (bool);

computeLiquidationRepayAmount

function computeLiquidationRepayAmount(
    address _user,
    address _poolTokenBorrowed,
    address _poolTokenCollateral,
    address[] calldata _updatedMarkets
) external view returns (uint256 toRepay);

getNextUserSupplyRatePerBlock

RATES ///

function getNextUserSupplyRatePerBlock(address _poolToken, address _user, uint256 _amount)
    external
    view
    returns (uint256 nextSupplyRatePerBlock, uint256 balanceOnPool, uint256 balanceInP2P, uint256 totalBalance);

getNextUserBorrowRatePerBlock

function getNextUserBorrowRatePerBlock(address _poolToken, address _user, uint256 _amount)
    external
    view
    returns (uint256 nextBorrowRatePerBlock, uint256 balanceOnPool, uint256 balanceInP2P, uint256 totalBalance);

getCurrentUserSupplyRatePerBlock

function getCurrentUserSupplyRatePerBlock(address _poolToken, address _user) external view returns (uint256);

getCurrentUserBorrowRatePerBlock

function getCurrentUserBorrowRatePerBlock(address _poolToken, address _user) external view returns (uint256);

getAverageSupplyRatePerBlock

function getAverageSupplyRatePerBlock(address _poolToken)
    external
    view
    returns (uint256 avgSupplyRatePerBlock, uint256 p2pSupplyAmount, uint256 poolSupplyAmount);

getAverageBorrowRatePerBlock

function getAverageBorrowRatePerBlock(address _poolToken)
    external
    view
    returns (uint256 avgBorrowRatePerBlock, uint256 p2pBorrowAmount, uint256 poolBorrowAmount);

getRatesPerBlock

function getRatesPerBlock(address _poolToken)
    external
    view
    returns (uint256 p2pSupplyRate, uint256 p2pBorrowRate, uint256 poolSupplyRate, uint256 poolBorrowRate);

getUserUnclaimedRewards

REWARDS ///

function getUserUnclaimedRewards(address[] calldata _poolTokens, address _user)
    external
    view
    returns (uint256 unclaimedRewards);

getAccruedSupplierComp

function getAccruedSupplierComp(address _supplier, address _poolToken, uint256 _balance)
    external
    view
    returns (uint256);

getAccruedBorrowerComp

function getAccruedBorrowerComp(address _borrower, address _poolToken, uint256 _balance)
    external
    view
    returns (uint256);

getAccruedSupplierComp

function getAccruedSupplierComp(address _supplier, address _poolToken) external view returns (uint256);

getAccruedBorrowerComp

function getAccruedBorrowerComp(address _borrower, address _poolToken) external view returns (uint256);

getCurrentCompSupplyIndex

function getCurrentCompSupplyIndex(address _poolToken) external view returns (uint256);

getCurrentCompBorrowIndex

function getCurrentCompBorrowIndex(address _poolToken) external view returns (uint256);