pub trait InstructionBuilder {
fn instruction(&self) -> Instruction;
}
Required Methods§
fn instruction(&self) -> Instruction
Implementors§
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:
[writable]
Delegate record account[]
Delegated owner[writable]
Metadata account[optional]
Master Edition account[]
Mint account[optional, writable]
Token account[signer]
Approver (update authority or token owner) to approve the delegation[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[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 Migrate
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[writable]
Mint of token asset[signer]
Authority (mint authority or metadata’s update authority for NonFungible asests)[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 Revoke
Revokes a delegate.
Accounts:
[writable]
Delegate record account[]
Delegated owner[writable]
Metadata account[optional]
Master Edition account[]
Mint account[optional, writable]
Token account[signer]
Authority (update authority, token owner or delegate) of the revoke[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- `[signer] Transfer authority (token or delegate owner)
[optional, writable]
Delegate record PDA[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[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