EmberRedemptionRequest
Documentation for eth_defi.erc_4626.vault_protocol.ember.deposit_redeem.EmberRedemptionRequest Python class.
- class EmberRedemptionRequest
Bases:
eth_defi.vault.deposit_redeem.RedemptionRequestTwo-call Ember redemption request: share approval and queue creation.
Attributes summary
vaultVault we are dealing with
ownerOwner of the shares
toReceiver of underlying asset
sharesHuman-readable shares
raw_sharesRaw amount of shares
funcsTransactions we need to perform in order to open a redemption
web3Methods summary
__init__(vault, owner, to, shares, ...)broadcast([from_, gas])Broadcast all the transactions in this request.
parse_redeem_transaction(tx_hashes)Parse and validate the
RequestRedeemedreceipt event.- parse_redeem_transaction(tx_hashes)
Parse and validate the
RequestRedeemedreceipt event.The event is emitted by the Ember vault even when the outer transaction is a GuardV0 SimpleVault or Lagoon module call. Its timestamp is required to equal the receipt block timestamp at millisecond precision.
- Parameters
tx_hashes (list[hexbytes.main.HexBytes]) – Hashes broadcast for this request; the final hash is redemption.
- Returns
Validated, restart-safe Ember redemption ticket.
- Raises
CannotParseRedemptionTransaction – If the receipt does not contain one matching Ember request event.
- Return type
eth_defi.erc_4626.vault_protocol.ember.deposit_redeem.EmberRedemptionTicket
- __init__(vault, owner, to, shares, raw_shares, funcs)
- Parameters
vault (VaultBase) –
owner (eth_typing.evm.HexAddress) –
to (eth_typing.evm.HexAddress) –
shares (decimal.Decimal) –
raw_shares (int) –
funcs (list[web3.contract.contract.ContractFunction]) –
- Return type
None
- broadcast(from_=None, gas=1000000)
Broadcast all the transactions in this request.
- Parameters
from – Address to send the transactions from
gas (int) – Gas limit to use for each transaction
from_ (eth_typing.evm.HexAddress) –
- Returns
List of transaction hashes
- Return type
list[hexbytes.main.HexBytes]