pub struct AddCurrencyPair<'info> {
    pub auction_state_account: Box<Account<'info, AuctionStateAccount>>,
    pub base_currency: Account<'info, Mint>,
    pub quote_currency: Account<'info, Mint>,
    pub base_oracle: AccountInfo<'info>,
    pub quote_oracle: AccountInfo<'info>,
    pub base_recovery_state_account: Box<Account<'info, RecoveryStateAccount>>,
    pub base_recovery_vault_account: Account<'info, TokenAccount>,
    pub quote_recovery_state_account: Box<Account<'info, RecoveryStateAccount>>,
    pub quote_recovery_vault_account: Account<'info, TokenAccount>,
    pub auction_owner: AccountInfo<'info>,
    pub auction_owner_whitelist_entry: Account<'info, WhitelistEntry>,
    pub token_program: AccountInfo<'info>,
}
Expand description

This instruction adds a currency pair to an existing auction. Only a certain number of token pairs are allowed to exist in an auction and an error is thrown if this instruction is called when the token pairs count is saturated

Fields

auction_state_account: Box<Account<'info, AuctionStateAccount>>

The auction state account holds state specific to the auction. This account is expected to be mutable. This account is a PDA generated by the following seeds: the string literal auction_state, an unsigned 64 bit integer

base_currency: Account<'info, Mint>

The SPL mint associated with the base token in a currency pair.

quote_currency: Account<'info, Mint>

The SPL mint associated with the quote token in a currency pair.

base_oracle: AccountInfo<'info>

The Pyth price oracle associated with the base token in a currency pair.

quote_oracle: AccountInfo<'info>

The Pyth price oracle associated with the quote token in a currency pair.

base_recovery_state_account: Box<Account<'info, RecoveryStateAccount>>

The recovery state account for the base mint. This account is a PDA generated by the following seeds: the public key of the base_currency account, the string literal recovery_state

base_recovery_vault_account: Account<'info, TokenAccount>

The recovery vault account for the base mint. This account is a PDA generated by the following seeds: the public key of the base_currency account, the string literal recovery_vault

quote_recovery_state_account: Box<Account<'info, RecoveryStateAccount>>

The recovery state account for the quote mint. This account is a PDA generated by the following seeds: the public key of the quote_currency account, the string literal recovery_state

quote_recovery_vault_account: Account<'info, TokenAccount>

The recovery vault account for the quote mint. This account is a PDA generated by the following seeds: the public key of the quote_currency account, the string literal recovery_vault

auction_owner: AccountInfo<'info>

The auction owner is an authority with permission granted by the DFlow admin to create recovery vaults, create new auctions, and halt, resume, or deprecate existing auctions. This account is a signer for the instruction

auction_owner_whitelist_entry: Account<'info, WhitelistEntry>

This account stores the permissions that apply to the auction_owner. This account is a PDA generated by the following seeds: the string literal whitelist_entry, the public key of the auction_owner account

token_program: AccountInfo<'info>

Trait Implementations

Returns the validated accounts struct. What constitutes “valid” is program dependent. However, users of these types should never have to worry about account substitution attacks. For example, if a program expects a Mint account from the SPL token program in a particular field, then it should be impossible for this method to return Ok if any other account type is given–from the SPL token program or elsewhere. Read more

program_id is the currently executing program.

is_signer is given as an optional override for the signer meta field. This covers the edge case when a program-derived-address needs to relay a transaction from a client to another program but sign the transaction before the relay. The client cannot mark the field as a signer, and so we have to override the is_signer meta field given by the client. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The alignment of pointer.

The type for initializers.

Initializes a with the given initializer. Read more

Dereferences the given pointer. Read more

Mutably dereferences the given pointer. Read more

Drops the object pointed to by the given pointer. Read more

Should always be Self

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more