Struct solana_sdk::message::Message [−][src]
pub struct Message { pub header: MessageHeader, pub account_keys: Vec<Pubkey, Global>, pub recent_blockhash: Hash, pub instructions: Vec<CompiledInstruction, Global>, }
Fields
header: MessageHeader
The message header, identifying signed and read-only account_keys
NOTE: Serialization-related changes must be paired with the direct read at sigverify.
account_keys: Vec<Pubkey, Global>
All the account keys used by this transaction
recent_blockhash: Hash
The id of a recent ledger entry.
instructions: Vec<CompiledInstruction, Global>
Programs that will be executed in sequence and committed in one atomic transaction if all succeed.
Implementations
pub fn new_with_compiled_instructions(
num_required_signatures: u8,
num_readonly_signed_accounts: u8,
num_readonly_unsigned_accounts: u8,
account_keys: Vec<Pubkey, Global>,
recent_blockhash: Hash,
instructions: Vec<CompiledInstruction, Global>
) -> Message
pub fn new_with_nonce(
instructions: Vec<Instruction, Global>,
payer: Option<&Pubkey>,
nonce_account_pubkey: &Pubkey,
nonce_authority_pubkey: &Pubkey
) -> Message
Compute the blake3 hash of a raw transaction message
pub fn program_ids(&self) -> Vec<&Pubkey, Global>ⓘ
pub fn get_account_keys_by_lock_type(
&self,
demote_sysvar_write_locks: bool
) -> (Vec<&Pubkey, Global>, Vec<&Pubkey, Global>)
pub fn serialize_instructions(
&self,
demote_sysvar_write_locks: bool
) -> Vec<u8, Global>ⓘ
pub fn deserialize_instruction(
index: usize,
data: &[u8]
) -> Result<Instruction, SanitizeError>
Trait Implementations
pub fn deserialize<__D>(
__deserializer: __D
) -> Result<Message, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
pub fn deserialize<__D>(
__deserializer: __D
) -> Result<Message, <__D as Deserializer<'de>>::Error> where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
pub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
pub fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error> where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations
impl RefUnwindSafe for Message
impl UnwindSafe for Message
Blanket Implementations
pub default fn visit_for_abi(
&self,
digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
pub default fn visit_for_abi(
&self,
_digester: &mut AbiDigester
) -> Result<AbiDigester, DigestError>
Mutably borrows from an owned value. Read more
type Output = T
type Output = T
Should always be Self