RioLRTDepositPool

RioLRTDepositPool

Inherits: IRioLRTDepositPool, OwnableUpgradeable, UUPSUpgradeable, RioLRTCore

Functions

constructor

constructor(address issuer_) RioLRTCore(issuer_);

Parameters

NameTypeDescription

issuer_

address

The LRT issuer that's authorized to deploy this contract.

initialize

Initializes the deposit pool contract.

function initialize(address initialOwner, address token_) external initializer;

Parameters

NameTypeDescription

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.

function depositBalanceIntoEigenLayer(address asset) external onlyCoordinator returns (uint256);

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.

function transferMaxAssetsForShares(address asset, uint256 sharesRequested, address recipient)
    external
    onlyCoordinator
    returns (uint256, uint256);

Parameters

NameTypeDescription

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.

receive

Receives ETH for deposit into EigenLayer.

receive() external payable;

_reducePrecisionToGwei

Reduces the precision of the given amount to the nearest Gwei.

function _reducePrecisionToGwei(uint256 amount) internal pure returns (uint256);

Parameters

NameTypeDescription

amount

uint256

The amount whose precision is to be reduced.

_authorizeUpgrade

Allows the owner to upgrade the deposit pool implementation.

function _authorizeUpgrade(address newImplementation) internal override onlyOwner;

Parameters

NameTypeDescription

newImplementation

address

The implementation to upgrade to.

Last updated