pub struct Message {
pub header: MessageHeader,
pub account_keys: Vec<Pubkey>,
pub address_map_indexes: Vec<AddressMapIndexes>,
pub recent_blockhash: Hash,
pub instructions: Vec<CompiledInstruction>,
}Expand description
Transaction message format which supports succinct account loading with indexes for on-chain address maps.
Fields§
§header: MessageHeaderThe message header, identifying signed and read-only account_keys
account_keys: Vec<Pubkey>List of accounts loaded by this transaction.
address_map_indexes: Vec<AddressMapIndexes>List of address map indexes used to succinctly load additional accounts for this transaction.
§Notes
The last address_map_indexes.len() accounts of the read-only unsigned
accounts are loaded as address maps.
recent_blockhash: HashThe blockhash of a recent block.
instructions: Vec<CompiledInstruction>Instructions that invoke a designated program, are executed in sequence, and committed in one atomic transaction if all succeed.
§Notes
Account and program indexes will index into the list of addresses
constructed from the concatenation of account_keys, flattened list of
writable address map indexes, and the flattened readonly address
map indexes.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Message
impl<'de> Deserialize<'de> for Message
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
impl Eq for Message
impl StructuralPartialEq for Message
Auto Trait Implementations§
impl Freeze for Message
impl RefUnwindSafe for Message
impl Send for Message
impl Sync for Message
impl Unpin for Message
impl UnwindSafe for Message
Blanket Implementations§
Source§impl<T> AbiEnumVisitor for T
impl<T> AbiEnumVisitor for T
default fn visit_for_abi( &self, _digester: &mut AbiDigester, ) -> Result<AbiDigester, DigestError>
Source§impl<T> AbiEnumVisitor for T
impl<T> AbiEnumVisitor for T
default fn visit_for_abi( &self, digester: &mut AbiDigester, ) -> Result<AbiDigester, DigestError>
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