Struct mpl_token_metadata::instructions::CreateCpiBuilder
source · pub struct CreateCpiBuilder<'a, 'b> { /* private fields */ }
Expand description
Instruction builder for Create
via CPI.
Accounts:
[writable]
metadata[writable, optional]
master_edition[writable, signer]
mint[signer]
authority[writable, signer]
payer[signer]
update_authority[]
system_program[]
sysvar_instructions[]
spl_token_program
Implementations§
source§impl<'a, 'b> CreateCpiBuilder<'a, 'b>
impl<'a, 'b> CreateCpiBuilder<'a, 'b>
pub fn new(program: &'b AccountInfo<'a>) -> Self
sourcepub fn metadata(&mut self, metadata: &'b AccountInfo<'a>) -> &mut Self
pub fn metadata(&mut self, metadata: &'b AccountInfo<'a>) -> &mut Self
Unallocated metadata account with address as pda of [‘metadata’, program id, mint id]
sourcepub fn master_edition(
&mut self,
master_edition: Option<&'b AccountInfo<'a>>
) -> &mut Self
pub fn master_edition( &mut self, master_edition: Option<&'b AccountInfo<'a>> ) -> &mut Self
[optional account]
Unallocated edition account with address as pda of [‘metadata’, program id, mint, ‘edition’]
sourcepub fn mint(&mut self, mint: &'b AccountInfo<'a>, as_signer: bool) -> &mut Self
pub fn mint(&mut self, mint: &'b AccountInfo<'a>, as_signer: bool) -> &mut Self
Mint of token asset
Mint authority
sourcepub fn payer(&mut self, payer: &'b AccountInfo<'a>) -> &mut Self
pub fn payer(&mut self, payer: &'b AccountInfo<'a>) -> &mut Self
Payer
Update authority for the metadata account
sourcepub fn system_program(
&mut self,
system_program: &'b AccountInfo<'a>
) -> &mut Self
pub fn system_program( &mut self, system_program: &'b AccountInfo<'a> ) -> &mut Self
System program
sourcepub fn sysvar_instructions(
&mut self,
sysvar_instructions: &'b AccountInfo<'a>
) -> &mut Self
pub fn sysvar_instructions( &mut self, sysvar_instructions: &'b AccountInfo<'a> ) -> &mut Self
Instructions sysvar account
sourcepub fn spl_token_program(
&mut self,
spl_token_program: &'b AccountInfo<'a>
) -> &mut Self
pub fn spl_token_program( &mut self, spl_token_program: &'b AccountInfo<'a> ) -> &mut Self
SPL Token program
pub fn create_args(&mut self, create_args: CreateArgs) -> &mut Self
sourcepub fn add_remaining_account(
&mut self,
account: &'b AccountInfo<'a>,
is_writable: bool,
is_signer: bool
) -> &mut Self
pub fn add_remaining_account( &mut self, account: &'b AccountInfo<'a>, is_writable: bool, is_signer: bool ) -> &mut Self
Add an additional account to the instruction.
sourcepub fn add_remaining_accounts(
&mut self,
accounts: &[(&'b AccountInfo<'a>, bool, bool)]
) -> &mut Self
pub fn add_remaining_accounts( &mut self, accounts: &[(&'b AccountInfo<'a>, bool, bool)] ) -> &mut Self
Add additional accounts to the instruction.
Each account is represented by a tuple of the AccountInfo
, a bool
indicating whether the account is writable or not,
and a bool
indicating whether the account is a signer or not.
pub fn invoke(&self) -> ProgramResult
pub fn invoke_signed(&self, signers_seeds: &[&[&[u8]]]) -> ProgramResult
Auto Trait Implementations§
impl<'a, 'b> !RefUnwindSafe for CreateCpiBuilder<'a, 'b>
impl<'a, 'b> !Send for CreateCpiBuilder<'a, 'b>
impl<'a, 'b> !Sync for CreateCpiBuilder<'a, 'b>
impl<'a, 'b> Unpin for CreateCpiBuilder<'a, 'b>
impl<'a, 'b> !UnwindSafe for CreateCpiBuilder<'a, 'b>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more