RswEthHandler

Git Source

Inherits: UniswapFlashswapDirectMintHandler

Handler for the rswETH/wstETH market.

Functions

constructor

Creates a new RswEthHandler instance.

constructor(
    uint8 _ilkIndex,
    IonPool _ionPool,
    GemJoin _gemJoin,
    Whitelist _whitelist,
    IUniswapV3Pool _wstEthUniswapPool
)
    IonHandlerBase(_ilkIndex, _ionPool, _gemJoin, _whitelist)
    UniswapFlashswapDirectMintHandler(_wstEthUniswapPool, WETH_ADDRESS);

Parameters

Name
Type
Description

_ilkIndex

uint8

Ilk index of the pool.

_ionPool

IonPool

address.

_gemJoin

GemJoin

address.

_whitelist

Whitelist

address.

_wstEthUniswapPool

IUniswapV3Pool

address of the wstETH/WETH Uniswap pool (0.01% fee).

_mintCollateralAsset

Deposits the mint asset into the provider's collateral-asset deposit contract.

function _mintCollateralAsset(uint256 amountWeth) internal override returns (uint256);

Parameters

Name
Type
Description

amountWeth

uint256

_getAmountInForCollateralAmountOut

Calculates the amount of mint asset required to receive amountLrt.

Calculates the amount of mint asset required to receive amountLrt.

function _getAmountInForCollateralAmountOut(uint256 amountOut) internal view override returns (uint256);

Parameters

Name
Type
Description

amountOut

uint256

Returns

Name
Type
Description

<none>

uint256

Amount mint asset required for desired output. [WAD]

getEthAmountInForLstAmountOut

Returns the amount of ETH needed to mint the given amount of rswETH.

function getEthAmountInForLstAmountOut(uint256 lstAmount) external view returns (uint256);

Parameters

Name
Type
Description

lstAmount

uint256

Desired output amount. [WAD]

getLstAmountOutForEthAmountIn

Returns the amount of ETH needed to mint the given amount of rswETH.

function getLstAmountOutForEthAmountIn(uint256 ethAmount) external view returns (uint256);

Parameters

Name
Type
Description

ethAmount

uint256

Amount of ETH to deposit. [WAD]