pub trait VaultTransactionMessageExt {
// Required method
fn as_transaction_message(&self) -> &TransactionMessage;
// Provided methods
fn try_compile(
vault_key: &Pubkey,
instructions: &[Instruction],
address_lookup_table_accounts: &[AddressLookupTableAccount],
) -> Result<TransactionMessage, CompileError> { ... }
fn get_accounts_for_execute(
&self,
vault_pda: &Pubkey,
transaction_pda: &Pubkey,
address_lookup_table_accounts: &[AddressLookupTableAccount],
num_ephemeral_signers: u8,
program_id: &Pubkey,
) -> Result<Vec<AccountMeta>, Error> { ... }
}Required Methods§
fn as_transaction_message(&self) -> &TransactionMessage
Provided Methods§
Sourcefn try_compile(
vault_key: &Pubkey,
instructions: &[Instruction],
address_lookup_table_accounts: &[AddressLookupTableAccount],
) -> Result<TransactionMessage, CompileError>
fn try_compile( vault_key: &Pubkey, instructions: &[Instruction], address_lookup_table_accounts: &[AddressLookupTableAccount], ) -> Result<TransactionMessage, CompileError>
This implementation is mostly a copy-paste from solana_program::message::v0::Message::try_compile(),
but it constructs a TransactionMessage meant to be passed to vault_transaction_create.
fn get_accounts_for_execute( &self, vault_pda: &Pubkey, transaction_pda: &Pubkey, address_lookup_table_accounts: &[AddressLookupTableAccount], num_ephemeral_signers: u8, program_id: &Pubkey, ) -> Result<Vec<AccountMeta>, Error>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.