pub struct VaultTransactionMessage {
pub num_signers: u8,
pub num_writable_signers: u8,
pub num_writable_non_signers: u8,
pub account_keys: Vec<Pubkey>,
pub instructions: Vec<MultisigCompiledInstruction>,
pub address_table_lookups: Vec<MultisigMessageAddressTableLookup>,
}Fields§
§num_signers: u8The number of signer pubkeys in the account_keys vec.
num_writable_signers: u8The number of writable signer pubkeys in the account_keys vec.
num_writable_non_signers: u8The number of writable non-signer pubkeys in the account_keys vec.
account_keys: Vec<Pubkey>Unique account pubkeys (including program IDs) required for execution of the tx. The signer pubkeys appear at the beginning of the vec, with writable pubkeys first, and read-only pubkeys following. The non-signer pubkeys follow with writable pubkeys first and read-only ones following. Program IDs are also stored at the end of the vec along with other non-signer non-writable pubkeys:
[pubkey1, pubkey2, pubkey3, pubkey4, pubkey5, pubkey6, pubkey7, pubkey8]
|---writable---| |---readonly---| |---writable---| |---readonly---|
|------------signers-------------| |----------non-singers-----------|instructions: Vec<MultisigCompiledInstruction>List of instructions making up the tx.
address_table_lookups: Vec<MultisigMessageAddressTableLookup>List of address table lookups used to load additional accounts for this transaction.
Implementations§
Source§impl VaultTransactionMessage
impl VaultTransactionMessage
Sourcepub fn num_all_account_keys(&self) -> usize
pub fn num_all_account_keys(&self) -> usize
Returns the number of all the account keys (static + dynamic) in the message.
Sourcepub fn is_static_writable_index(&self, key_index: usize) -> bool
pub fn is_static_writable_index(&self, key_index: usize) -> bool
Returns true if the account at the specified index is a part of static account_keys and was requested to be writable.
Sourcepub fn is_signer_index(&self, key_index: usize) -> bool
pub fn is_signer_index(&self, key_index: usize) -> bool
Returns true if the account at the specified index was requested to be a signer.
Trait Implementations§
Source§impl BorshDeserialize for VaultTransactionMessage
impl BorshDeserialize for VaultTransactionMessage
fn deserialize_reader<R: Read>(reader: &mut R) -> Result<Self, Error>
Source§fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
fn deserialize(buf: &mut &[u8]) -> Result<Self, Error>
Source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
Source§impl Clone for VaultTransactionMessage
impl Clone for VaultTransactionMessage
Source§fn clone(&self) -> VaultTransactionMessage
fn clone(&self) -> VaultTransactionMessage
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl Freeze for VaultTransactionMessage
impl RefUnwindSafe for VaultTransactionMessage
impl Send for VaultTransactionMessage
impl Sync for VaultTransactionMessage
impl Unpin for VaultTransactionMessage
impl UnwindSafe for VaultTransactionMessage
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more