Struct mpl_auction_house::CreateAuctionHouse
source · pub struct CreateAuctionHouse<'info> {Show 13 fields
pub treasury_mint: Account<'info, Mint>,
pub payer: Signer<'info>,
pub authority: UncheckedAccount<'info>,
pub fee_withdrawal_destination: UncheckedAccount<'info>,
pub treasury_withdrawal_destination: UncheckedAccount<'info>,
pub treasury_withdrawal_destination_owner: UncheckedAccount<'info>,
pub auction_house: Account<'info, AuctionHouse>,
pub auction_house_fee_account: UncheckedAccount<'info>,
pub auction_house_treasury: UncheckedAccount<'info>,
pub token_program: Program<'info, Token>,
pub system_program: Program<'info, System>,
pub ata_program: Program<'info, AssociatedToken>,
pub rent: Sysvar<'info, Rent>,
}
Expand description
Accounts for the create_auction_house
handler.
Fields§
§treasury_mint: Account<'info, Mint>
Treasury mint account, either native SOL mint or a SPL token mint.
payer: Signer<'info>
Key paying SOL fees for setting up the Auction House.
CHECK: User can use whatever they want for intialization.
fee_withdrawal_destination: UncheckedAccount<'info>
CHECK: User can use whatever they want for intialization. Account that pays for fees if the marketplace executes sales.
treasury_withdrawal_destination: UncheckedAccount<'info>
CHECK: User can use whatever they want for intialization.
SOL or SPL token account to receive Auction House fees. If treasury mint is native this will be the same as the treasury_withdrawl_destination_owner
.
treasury_withdrawal_destination_owner: UncheckedAccount<'info>
CHECK: User can use whatever they want for intialization.
Owner of the treasury_withdrawal_destination
account or the same address if the treasury_mint
is native.
auction_house: Account<'info, AuctionHouse>
Auction House instance PDA account.
auction_house_fee_account: UncheckedAccount<'info>
Auction House instance fee account. CHECK: Not dangerous. Account seeds checked in constraint.
auction_house_treasury: UncheckedAccount<'info>
Auction House instance treasury PDA account. CHECK: Not dangerous. Account seeds checked in constraint.
token_program: Program<'info, Token>
§system_program: Program<'info, System>
§ata_program: Program<'info, AssociatedToken>
§rent: Sysvar<'info, Rent>
Trait Implementations§
source§impl<'info> Accounts<'info> for CreateAuctionHouse<'info>where
'info: 'info,
impl<'info> Accounts<'info> for CreateAuctionHouse<'info>where 'info: 'info,
source§fn 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 moresource§impl<'info> AccountsExit<'info> for CreateAuctionHouse<'info>where
'info: 'info,
impl<'info> AccountsExit<'info> for CreateAuctionHouse<'info>where 'info: 'info,
source§impl<'info> ToAccountInfos<'info> for CreateAuctionHouse<'info>where
'info: 'info,
impl<'info> ToAccountInfos<'info> for CreateAuctionHouse<'info>where 'info: 'info,
fn to_account_infos(&self) -> Vec<AccountInfo<'info>>
source§impl<'info> ToAccountMetas for CreateAuctionHouse<'info>
impl<'info> ToAccountMetas for CreateAuctionHouse<'info>
source§fn to_account_metas(&self, is_signer: Option<bool>) -> Vec<AccountMeta>
fn to_account_metas(&self, is_signer: Option<bool>) -> Vec<AccountMeta>
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.