RioLRTDepositPool
Inherits: IRioLRTDepositPool, OwnableUpgradeable, UUPSUpgradeable, RioLRTCore
Functions
constructor
Parameters
issuer_
address
The LRT issuer that's authorized to deploy this contract.
initialize
Initializes the deposit pool contract.
Parameters
initialOwner
address
The initial owner of the contract.
token_
address
The address of the liquid restaking token.
depositBalanceIntoEigenLayer
Deposits the entire deposit pool balance of the specified asset
into EigenLayer, unless capped.
Parameters
asset
address
The address of the asset to be deposited.
transferMaxAssetsForShares
Transfers the maximum possible amount of assets based on the available pool balance and requested shares.
This function handles asset transfer by converting the share value to assets and ensures that either the requested amount or the maximum possible amount is transferred.
Parameters
asset
address
The address of the asset to be transferred.
sharesRequested
uint256
The number of shares to convert into assets for transfer.
recipient
address
The address of the recipient of the transferred assets.
completeOperatorWithdrawalForAsset
Completes a withdrawal from EigenLayer for the specified asset and operator. Withdrawals directly to the deposit pool can occur for two reasons:
The operator has exited the strategy and the assets have been returned to the deposit pool.
Excess full withdrawal ETH has been scraped from the EigenPod.
Parameters
asset
address
The address of the asset to be withdrawn.
operatorId
uint8
The ID of the operator from which the asset is being withdrawn.
queuedWithdrawal
IDelegationManager.Withdrawal
The withdrawal to be completed.
middlewareTimesIndex
uint256
The index of the middleware times to use for the withdrawal.
receive
Receives ETH for deposit into EigenLayer.
_authorizeUpgrade
Allows the owner to upgrade the deposit pool implementation.
Parameters
newImplementation
address
The implementation to upgrade to.
Last updated