Skip to main content

EthBlocklistErc20Vault

Git Source ↗

Inherits: Initializable ↗, EthErc20Vault →, VaultBlocklist →, IEthBlocklistErc20Vault

Defines the Ethereum staking Vault with blocking and ERC20 ↗ functionality.

Functions​

deposit​

Deposit ETH to the Vault

function deposit(address receiver, address referrer)
public
payable
virtual
override(IVaultEthStaking, VaultEthStaking)
returns (uint256 shares);

Parameters

NameTypeDescription
receiveraddressThe address that will receive Vault's shares
referreraddressThe address of the referrer. Set to zero address if not used.

Returns

NameTypeDescription
sharesuint256The number of shares minted

receive​

Function for depositing using fallback function

receive() external payable virtual override;

mintOsToken​

Mints OsToken shares

function mintOsToken(address receiver, uint256 osTokenShares, address referrer)
public
virtual
override(IVaultOsToken, VaultOsToken)
returns (uint256 assets);

Parameters

NameTypeDescription
receiveraddressThe address that will receive the minted OsToken shares
osTokenSharesuint256The number of OsToken shares to mint to the receiver. To mint the maximum amount of shares, use 2^256 - 1.
referreraddressThe address of the referrer

Returns

NameTypeDescription
assetsuint256The number of assets minted to the receiver

transfer​

Moves amount tokens from the caller's account to to.

function transfer(address to, uint256 amount) public virtual override(IERC20, ERC20Upgradeable) returns (bool);

transferFrom​

Moves amount tokens from from to to using the allowance mechanism. amount is then deducted from the caller's allowance.

function transferFrom(address from, address to, uint256 amount)
public
virtual
override(IERC20, ERC20Upgradeable)
returns (bool);

vaultId​

Vault Unique Identifier

function vaultId() public pure virtual override(IVaultVersion, EthErc20Vault) returns (bytes32);

Returns

NameTypeDescription
<none>bytes32The unique identifier of the Vault

version​

Version

function version() public pure virtual override(IVaultVersion, EthErc20Vault) returns (uint8);

Returns

NameTypeDescription
<none>uint8The version of the Vault implementation contract