pub trait InstructionBuilder {
// Required method
fn instruction(&self) -> Instruction;
}
Required Methods§
fn instruction(&self) -> Instruction
Implementors§
impl InstructionBuilder for Burn
Burn an asset.
Accounts:
[signer, writable]
Asset owner or Utility delegate[optional, writable]
Metadata of the Collection[writable]
Metadata (pda of [‘metadata’, program id, mint id])[optional, writable]
Edition of the asset[writable]
Mint of token account[writable]
Token account to close[optional, writable]
Master edition token account[optional]
Master edition mint of the asset[optional]
Master edition token account[optional, writable]
Edition marker account[optional, writable]
Token record account[]
System program[]
Instruction sysvar account[]
SPL Token Program
impl InstructionBuilder for Create
Builds the instruction to create metadata and associated accounts.
Accounts:
[writable]
Metadata account[optional, writable]
Master edition account[writable]
Mint account[signer]
Mint authority[signer]
Payer[signer]
Update authority[]
System program[]
Instructions sysvar account[]
SPL Token program
impl InstructionBuilder for Delegate
Delegates an action over an asset to a specific account.
Accounts:
[optional, writable]
Delegate record account[]
Delegated owner[writable]
Metadata account[optional]
Master Edition account[optional, writable]
Token record account[]
Mint account[optional, writable]
Token account[signer]
Update authority or token owner[signer, writable]
Payer[]
System Program[]
Instructions sysvar account[optional]
SPL Token Program[optional]
Token Authorization Rules program[optional]
Token Authorization Rules account
impl InstructionBuilder for Lock
Locks an asset. For non-programmable assets, this will also freeze the token account.
Accounts:
[signer]
Delegate account[optional]
Token owner[writable]
Token account[]
Mint account[writable]
Metadata account[optional]
Edition account[optional, writable]
Token record account[signer, writable]
Payer[]
System Program[]
Instructions sysvar account[optional]
SPL Token Program[optional]
Token Authorization Rules program[optional]
Token Authorization Rules account
impl InstructionBuilder for Mint
Builds the instruction to mint a token.
Accounts:
[writable]
Token account key[optional]
Owner of the token account[]
Metadata account key (pda of [‘metadata’, program id, mint id])“)][optional]
Master Edition account[optional]
Token record account[writable]
Mint of token asset[signer]
Authority (mint authority or metadata’s update authority for NonFungible asests)[optional]
Metadata delegate record[signer, writable]
Payer[]
System program[]
Instructions sysvar account[]
SPL Token program[]
SPL Associated Token Account program[optional]
Token Authorization Rules program[optional]
Token Authorization Rules account
impl InstructionBuilder for Print
Prints an edition from a master edition.
Accounts:
[writable]
Edition Metadata[writable]
Edition[writable, signer]
Edition Mint[]
Edition Token Account Owner[writable]
Edition Token Account[signer]
Edition Mint Authority[writable]
Edition Token Record[writable]
, Master Edition[writable]
, Edition Marker[signer, writable]
Payer[signer]
, Master Token Account Owner[]
Master Token Account[]
Master Metadata[]
Update Authority[]
Token Program[]
Associated Token Account Program[]
Instructions System Variable[]
System Program
impl InstructionBuilder for Revoke
Revokes a delegate.
Accounts:
[optional, writable]
Delegate record account[]
Delegated owner[writable]
Metadata account[optional]
Master Edition account[optional, writable]
Token record account[]
Mint account[optional, writable]
Token account[signer]
Update authority or token owner[signer, writable]
Payer[]
System Program[]
Instructions sysvar account[optional]
SPL Token Program[optional]
Token Authorization Rules program[optional]
Token Authorization Rules account
impl InstructionBuilder for Transfer
Transfer tokens from a token account.
Accounts:
[writable]
Token account[]
Token account owner[writable]
Destination token account[]
Destination token account owner[]
Mint of token asset[writable]
Metadata account[optional]
Edition of token asset[optional, writable]
Owner token record account[optional, writable]
Destination token record account[signer]
Transfer authority (token owner or delegate)[signer, writable]
Payer[]
System Program[]
Instructions sysvar account[]
SPL Token Program[]
SPL Associated Token Account program[optional]
Token Authorization Rules Program[optional]
Token Authorization Rules account
impl InstructionBuilder for Unlock
Unlocks an asset. For non-programmable assets, this will also thaw the token account.
Accounts:
[signer]
Delegate account[optional]
Token owner[writable]
Token account[]
Mint account[writable]
Metadata account[optional]
Edition account[optional, writable]
Token record account[signer, writable]
Payer[]
System Program[]
Instructions sysvar account[optional]
SPL Token Program[optional]
Token Authorization Rules program[optional]
Token Authorization Rules account
impl InstructionBuilder for Unverify
Unverifies a creator or collection for an asset.
Accounts:
[signer]
Creator to verify, collection (or metadata if parent burned) update authority or delegate[optional]
Delegate record PDA[writable]
Metadata account[optional]
Mint of the Collection[optional, writable]
Metadata Account of the Collection[]
System program[]
Instructions sysvar account
impl InstructionBuilder for Update
Updates the metadata of an asset.
Accounts:
[signer]
Update authority or delegate[optional]
Delegate record PDA[optional]
Token account[]
Mint account[writable]
Metadata account[optional]
Edition account[signer]
Payer[]
System program[]
System program[optional]
Token Authorization Rules Program[optional]
Token Authorization Rules account
impl InstructionBuilder for Verify
Verifies a creator or collection for an asset.
Accounts:
[signer]
Creator to verify, collection update authority or delegate[optional]
Delegate record PDA[writable]
Metadata account[optional]
Mint of the Collection[optional, writable]
Metadata Account of the Collection[optional]
Master Edition Account of the Collection Token[]
System program[]
Instructions sysvar account