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: MessageHeader
The 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: Hash
The 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