Struct tulipv2_sdk_common::config::strategy::withdraw::WithdrawAddresses
source · [−]pub struct WithdrawAddresses {
pub authority: Pubkey,
pub multi_vault: Pubkey,
pub multi_vault_pda: Pubkey,
pub multi_burning_shares_token_account: Pubkey,
pub withdraw_burning_shares_token_account: Pubkey,
pub receiving_underlying_token_account: Pubkey,
pub multi_underlying_withdraw_queue: Pubkey,
pub multi_shares_mint: Pubkey,
pub platform_config: PlatformConfigAddresses,
pub tulip_standalone_addresses: Option<TulipStandaloneAddresses>,
pub solend_standalone_addresses: Option<SolendStandaloneAddresses>,
pub mango_standalone_addresses: Option<MangoStandaloneAddresses>,
}Fields
multi_vault: Pubkeymulti_vault_pda: Pubkeyreceiving_underlying_token_account: Pubkeymulti_underlying_withdraw_queue: Pubkeyplatform_config: PlatformConfigAddressestulip_standalone_addresses: Option<TulipStandaloneAddresses>solend_standalone_addresses: Option<SolendStandaloneAddresses>mango_standalone_addresses: Option<MangoStandaloneAddresses>Implementations
Trait Implementations
sourceimpl Clone for WithdrawAddresses
impl Clone for WithdrawAddresses
sourcefn clone(&self) -> WithdrawAddresses
fn clone(&self) -> WithdrawAddresses
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresourceimpl WithdrawMultiOptimizerVault for WithdrawAddresses
impl WithdrawMultiOptimizerVault for WithdrawAddresses
sourcefn multi_deposit_vault(&self) -> Pubkey
fn multi_deposit_vault(&self) -> Pubkey
the main vault that users interact with, which is called a MultiDepositOptimizerVaultV1
fn multi_deposit_vault_pda(&self) -> Pubkey
sourcefn withdraw_vault(&self) -> Pubkey
fn withdraw_vault(&self) -> Pubkey
to enable maximal defi legos, multiple “standalone vaults” may exist, where
a single standalone vault is deposits one asset (ie USDC) into one protocol (ie Tulip),
this allows the standalone vaults to be reused by any of tulip’s v2 vaults for
maximal composability Read more
fn withdraw_vault_pda(&self) -> Pubkey
sourcefn platform_information(&self) -> Pubkey
fn platform_information(&self) -> Pubkey
an account which stores information related to the platform/protocol
a standalone vault is deposited into Read more
sourcefn platform_config_data(&self) -> Pubkey
fn platform_config_data(&self) -> Pubkey
an account which stores configuration information related to the standalone
vault for the platform/protocol being farmed Read more
fn lending_program(&self) -> Pubkey
the token account owned by the caller/authority which holds onto the tokenized shares
issued by the multi deposit vault. these would be the tokens that you remove
from a deposit tracking account with the
withdraw_deposit_tracking instruction Read morejust like other v2 vaults, the standalone vaults issue shares, however
these shares are held, and managed by the multi deposit vault Read more
sourcefn receiving_underlying_token_account(&self) -> Pubkey
fn receiving_underlying_token_account(&self) -> Pubkey
the token account which will receive the underlying assets backing
the shares once the shares have been burned Read more
sourcefn multi_underlying_withdraw_queue(&self) -> Pubkey
fn multi_underlying_withdraw_queue(&self) -> Pubkey
a token account that holds onto assets in between various steps
of the withdraw flow Read more
the mint of the tokenized shares issued by the multi deposit vault
the mint of the tokenized shares issued by the standalone vault
which we are withdrawing from Read more
sourcefn withdraw_vault_underlying_deposit_queue(&self) -> Pubkey
fn withdraw_vault_underlying_deposit_queue(&self) -> Pubkey
the deposit queue account used by the standalone vault to
hold funds while they are being deposited. even though this is
a withdraw instruction, the deposit queue account is needed
so that when the vault rebases before the withdraw happens,
all assets are accounted for Read more
sourcefn standalone_vault_accounts(&self) -> Option<Vec<AccountMeta>>
fn standalone_vault_accounts(&self) -> Option<Vec<AccountMeta>>
returns accounts specific to the standalone vault being used Read more
sourcefn instruction(&self, amount: u64) -> Option<Instruction>
fn instruction(&self, amount: u64) -> Option<Instruction>
returns the Instruction object which can be used to invoke
the withdraw_multi_optimizer_vault instruction via CPI, or off-chain clients Read more
fn ix_data(&self) -> Option<[u8; 8]>
impl Copy for WithdrawAddresses
Auto Trait Implementations
impl RefUnwindSafe for WithdrawAddresses
impl Send for WithdrawAddresses
impl Sync for WithdrawAddresses
impl Unpin for WithdrawAddresses
impl UnwindSafe for WithdrawAddresses
Blanket Implementations
impl<T> AbiExample for T
impl<T> AbiExample for T
default fn example() -> T
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more