pub struct AuctioneerExecuteSale<'info> {Show 23 fields
pub buyer: UncheckedAccount<'info>,
pub seller: UncheckedAccount<'info>,
pub token_account: UncheckedAccount<'info>,
pub token_mint: UncheckedAccount<'info>,
pub metadata: UncheckedAccount<'info>,
pub treasury_mint: UncheckedAccount<'info>,
pub escrow_payment_account: UncheckedAccount<'info>,
pub seller_payment_receipt_account: UncheckedAccount<'info>,
pub buyer_receipt_token_account: UncheckedAccount<'info>,
pub authority: UncheckedAccount<'info>,
pub auctioneer_authority: Signer<'info>,
pub auction_house: Box<Account<'info, AuctionHouse>>,
pub auction_house_fee_account: UncheckedAccount<'info>,
pub auction_house_treasury: UncheckedAccount<'info>,
pub buyer_trade_state: UncheckedAccount<'info>,
pub seller_trade_state: UncheckedAccount<'info>,
pub free_trade_state: UncheckedAccount<'info>,
pub ah_auctioneer_pda: Account<'info, Auctioneer>,
pub token_program: Program<'info, Token>,
pub system_program: Program<'info, System>,
pub ata_program: Program<'info, AssociatedToken>,
pub program_as_signer: UncheckedAccount<'info>,
pub rent: Sysvar<'info, Rent>,
}
Fields
buyer: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Buyer user wallet account.
seller: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Seller user wallet account.
token_account: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Token account where the SPL token is stored.
token_mint: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Token mint account for the SPL token.
metadata: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Metaplex metadata account decorating SPL mint account.
treasury_mint: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Auction House treasury mint account.
escrow_payment_account: UncheckedAccount<'info>
CHECK: Not dangerous. Account seeds checked in constraint. Buyer escrow payment account.
seller_payment_receipt_account: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Seller SOL or SPL account to receive payment at.
buyer_receipt_token_account: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Buyer SPL token account to receive purchased item at.
CHECK: Validated in execute_sale_logic. Auction House instance authority.
CHECK: Validated in ah_auctioneer_pda seeds and execute_sale_logic. The auctioneer authority - typically a PDA of the Auctioneer program running this action.
auction_house: Box<Account<'info, AuctionHouse>>
Auction House instance PDA account.
auction_house_fee_account: UncheckedAccount<'info>
CHECK: Not dangerous. Account seeds checked in constraint. Auction House instance fee account.
auction_house_treasury: UncheckedAccount<'info>
CHECK: Not dangerous. Account seeds checked in constraint. Auction House instance treasury account.
buyer_trade_state: UncheckedAccount<'info>
CHECK: Validated in execute_sale_logic. Buyer trade state PDA account encoding the buy order.
seller_trade_state: UncheckedAccount<'info>
CHECK: Not dangerous. Account seeds checked in constraint. Seller trade state PDA account encoding the sell order.
free_trade_state: UncheckedAccount<'info>
CHECK: Not dangerous. Account seeds checked in constraint. Free seller trade state PDA account encoding a free sell order.
ah_auctioneer_pda: Account<'info, Auctioneer>
CHECK: Not dangerous. Account seeds checked in constraint. The auctioneer PDA owned by Auction House storing scopes.
token_program: Program<'info, Token>
system_program: Program<'info, System>
ata_program: Program<'info, AssociatedToken>
program_as_signer: UncheckedAccount<'info>
CHECK: Not dangerous. Account seeds checked in constraint.
rent: Sysvar<'info, Rent>
Trait Implementations
sourceimpl<'info> Accounts<'info> for AuctioneerExecuteSale<'info>where
'info: 'info,
impl<'info> Accounts<'info> for AuctioneerExecuteSale<'info>where
'info: 'info,
sourcefn try_accounts(
program_id: &Pubkey,
accounts: &mut &[AccountInfo<'info>],
ix_data: &[u8],
__bumps: &mut BTreeMap<String, u8>,
__reallocs: &mut BTreeSet<Pubkey>
) -> Result<Self>
fn try_accounts(
program_id: &Pubkey,
accounts: &mut &[AccountInfo<'info>],
ix_data: &[u8],
__bumps: &mut BTreeMap<String, u8>,
__reallocs: &mut BTreeSet<Pubkey>
) -> Result<Self>
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 moresourceimpl<'info> AccountsExit<'info> for AuctioneerExecuteSale<'info>where
'info: 'info,
impl<'info> AccountsExit<'info> for AuctioneerExecuteSale<'info>where
'info: 'info,
sourceimpl<'info> From<AuctioneerExecutePartialSale<'info>> for AuctioneerExecuteSale<'info>
impl<'info> From<AuctioneerExecutePartialSale<'info>> for AuctioneerExecuteSale<'info>
sourcefn from(a: AuctioneerExecutePartialSale<'info>) -> AuctioneerExecuteSale<'info>
fn from(a: AuctioneerExecutePartialSale<'info>) -> AuctioneerExecuteSale<'info>
sourceimpl<'info> From<AuctioneerExecuteSale<'info>> for ExecuteSale<'info>
impl<'info> From<AuctioneerExecuteSale<'info>> for ExecuteSale<'info>
sourcefn from(a: AuctioneerExecuteSale<'info>) -> ExecuteSale<'info>
fn from(a: AuctioneerExecuteSale<'info>) -> ExecuteSale<'info>
sourceimpl<'info> ToAccountInfos<'info> for AuctioneerExecuteSale<'info>where
'info: 'info,
impl<'info> ToAccountInfos<'info> for AuctioneerExecuteSale<'info>where
'info: 'info,
fn to_account_infos(&self) -> Vec<AccountInfo<'info>>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
sourceimpl<'info> ToAccountMetas for AuctioneerExecuteSale<'info>
impl<'info> ToAccountMetas for AuctioneerExecuteSale<'info>
sourcefn to_account_metas(&self, is_signer: Option<bool>) -> Vec<AccountMeta>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
fn to_account_metas(&self, is_signer: Option<bool>) -> Vec<AccountMeta>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
A: Allocator,
A: Allocator,
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