PoolConfigurator

Git Source

Inherits: VersionedInitializable, IPoolConfigurator, PoolConfiguratorStorage

See the documentation in {IPoolConfigurator}.

State Variables

HUNDRED_PERCENT

uint256 public constant HUNDRED_PERCENT = 1_000_000;

POOL_CONFIGURATOR_REVISION

uint256 public constant POOL_CONFIGURATOR_REVISION = 0x1;

ADDRESSES_PROVIDER

IPoolAddressesProvider public immutable ADDRESSES_PROVIDER;

Functions

whenNotPaused

modifier whenNotPaused();

onlyAdminOrGovernor

modifier onlyAdminOrGovernor();

onlyGovernor

modifier onlyGovernor();

onlyAdmin

modifier onlyAdmin();

onlyPool

modifier onlyPool();

constructor

constructor(IPoolAddressesProvider provider_);

getRevision

Returns the revision number of the contract

Needs to be defined in the inherited class as a constant.

function getRevision() public pure virtual override returns (uint256 revision_);

Returns

initialize

The initializer function for the pool configurator (must be called directly after deployment).

function initialize(
    IPoolAddressesProvider provider_,
    address poolAdmin_,
    address asset_,
    string calldata name_,
    string calldata symbol_
)
    external
    override
    initializer;

Parameters

transferAdmin

Transfers to a new admin.

function transferAdmin(address newAdmin_) external virtual override onlyGovernor;

Parameters

setBuyer

Assigns a buyer to the pool.

function setBuyer(address buyer_) external override whenNotPaused onlyAdmin;

Parameters

setValidSeller

Sets the status of a seller.

function setValidSeller(address seller_, bool isValid_) external override whenNotPaused onlyAdmin;

Parameters

setValidLender

Sets the status of a lender (liquidity providers).

function setValidLender(address lender_, bool isValid_) external override whenNotPaused onlyAdmin;

Parameters

setAdminFee

Sets the admin fee rate that would be applied to the pool.

function setAdminFee(uint24 adminFee_) external override whenNotPaused onlyAdmin;

Parameters

setOpenToPublic

Sets whether the pool is open to the public (permissioned or permissionless).

function setOpenToPublic(bool isOpenToPublic_) external override whenNotPaused onlyAdmin;

Parameters

setMaxCoverLiquidation

Sets the max cover liquidation for the pool configurator.

function setMaxCoverLiquidation(uint24 maxCoverLiquidation_) external override whenNotPaused onlyGovernor;

Parameters

setMinCover

Sets the min cover required for the pool configurator.

function setMinCover(uint104 minCover_) external override whenNotPaused onlyGovernor;

Parameters

setPoolLimit

Sets the pool limit for the pool configurator.

function setPoolLimit(uint104 poolLimit_) external override whenNotPaused onlyGovernor;

Parameters

requestFunds

Request funds from the pool and fund the loan manager.

function requestFunds(uint256 principal_) external override whenNotPaused;

Parameters

triggerDefault

Triggers the defaults of a specific loan in the loan manager.

function triggerDefault(uint16 loanId_) external override whenNotPaused onlyAdminOrGovernor;

Parameters

requestRedeem

Requests to redeem shares.

function requestRedeem(uint256 shares_, address owner_) external override whenNotPaused onlyPool;

Parameters

processRedeem

Processes the redemption of shares for a specific owner.

function processRedeem(
    uint256 shares_,
    address owner_,
    address sender_
)
    external
    override
    whenNotPaused
    onlyPool
    returns (uint256 redeemableShares_, uint256 resultingAssets_);

Parameters

Returns

removeShares

Removes shares from its withdrawal request.

function removeShares(
    uint256 shares_,
    address owner_
)
    external
    override
    whenNotPaused
    onlyPool
    returns (uint256 sharesReturned_);

Parameters

Returns

depositCover

Pool admin deposits pool cover.

function depositCover(uint256 amount_) external override whenNotPaused;

Parameters

withdrawCover

Pool admin withdraws from pool cover.

function withdrawCover(uint256 amount_, address recipient_) external override whenNotPaused onlyAdmin;

Parameters

openToPublic

Returns whether the pool is open to public.

function openToPublic() external view override returns (bool openToPublic_);

Returns

adminFee

Returns the admin fee of the pool.

function adminFee() external view override returns (uint24 adminFee_);

Returns

maxCoverLiquidation

Returns the max cover liquidation of the pool.

function maxCoverLiquidation() external view returns (uint24 maxCoverLiquidation_);

Returns

minCover

Returns the min cover required for the pool configurator.

function minCover() external view returns (uint104 minCover_);

Returns

poolLimit

Returns the pool limit of the pool configurator.

function poolLimit() external view returns (uint104 poolLimit_);

Returns

maxDeposit

Returns the max deposit amount of a receiver.

function maxDeposit(address receiver_) external view virtual override returns (uint256 maxAssets_);

Parameters

Returns

maxMint

Returns the max mint amount of a receiver.

function maxMint(address receiver_) external view virtual override returns (uint256 maxShares_);

Parameters

Returns

maxRedeem

Returns the max redeem amount of an owner.

function maxRedeem(address owner_) external view virtual override returns (uint256 maxShares_);

Parameters

Returns

previewRedeem

Previews the amount of assets that can be redeemed for the amount of shares specified.

function previewRedeem(address owner_, uint256 shares_) external view virtual override returns (uint256 assets_);

Parameters

Returns

totalAssets

Returns the total amount of assets in the pool.

function totalAssets() external view override returns (uint256 totalAssets_);

Returns

hasSufficientCover

Returns whether the pool currently has sufficient cover.

function hasSufficientCover() external view override returns (bool hasSufficientCover_);

Returns

unrealizedLosses

Returns the current amount of unrealized losses of the pool.

function unrealizedLosses() external view override returns (uint256 unrealizedLosses_);

Returns

_totalAssets

function _totalAssets() internal view returns (uint256 totalAssets_);

_revertIfPaused

function _revertIfPaused() internal view;

_revertIfNotAdmin

function _revertIfNotAdmin() internal view;

_revertIfNotAdminOrGovernor

function _revertIfNotAdminOrGovernor() internal view;

_revertIfNotGovernor

function _revertIfNotGovernor() internal view;

_revertIfNotPool

function _revertIfNotPool() internal view;

_hasSufficientCover

function _hasSufficientCover() internal view returns (bool hasSufficientCover_);

_handleCover

function _handleCover(uint256 losses_) internal;

_min

function _min(uint256 a_, uint256 b_) internal pure returns (uint256 min_);

_getMaxAssets

function _getMaxAssets(address receiver_, uint256 totalAssets_) internal view returns (uint256 maxAssets_);

_globals

function _globals() internal view returns (IIsleGlobals globals_);

_loanManager

function _loanManager() internal view returns (ILoanManager loanManager_);

_withdrawalManager

function _withdrawalManager() internal view returns (IWithdrawalManager withdrawalManager_);

Last updated