Struct spl_governance::state::proposal_instruction::InstructionData [−][src]
#[repr(C)]pub struct InstructionData { pub program_id: Pubkey, pub accounts: Vec<AccountMetaData>, pub data: Vec<u8>, }
Expand description
InstructionData wrapper. It can be removed once Borsh serialization for Instruction is supported in the SDK
Fields
program_id: Pubkey
Pubkey of the instruction processor that executes this instruction
accounts: Vec<AccountMetaData>
Metadata for what accounts should be passed to the instruction processor
data: Vec<u8>
Opaque data passed to the instruction processor
Trait Implementations
impl BorshDeserialize for InstructionData where
Pubkey: BorshDeserialize,
Vec<AccountMetaData>: BorshDeserialize,
Vec<u8>: BorshDeserialize,
impl BorshDeserialize for InstructionData where
Pubkey: BorshDeserialize,
Vec<AccountMetaData>: BorshDeserialize,
Vec<u8>: BorshDeserialize,
Deserializes this instance from a given slice of bytes. Updates the buffer to point at the remaining bytes. Read more
Deserialize this instance from a slice of bytes.
Whether Self is u8.
NOTE: Vec<u8>
is the most common use-case for serialization and deserialization, it’s
worth handling it as a special case to improve performance.
It’s a workaround for specific Vec<u8>
implementation versus generic Vec<T>
implementation. See https://github.com/rust-lang/rfcs/pull/1210 for details. Read more
impl BorshSchema for InstructionData where
Pubkey: BorshSchema,
Vec<AccountMetaData>: BorshSchema,
Vec<u8>: BorshSchema,
impl BorshSchema for InstructionData where
Pubkey: BorshSchema,
Vec<AccountMetaData>: BorshSchema,
Vec<u8>: BorshSchema,
Get the name of the type without brackets.
Recursively, using DFS, add type definitions required for this type. For primitive types this is an empty map. Type definition explains how to serialize/deserialize a type. Read more
fn add_definition(
declaration: String,
definition: Definition,
definitions: &mut HashMap<String, Definition, RandomState>
)
fn add_definition(
declaration: String,
definition: Definition,
definitions: &mut HashMap<String, Definition, RandomState>
)
Helper method to add a single type definition to the map.
impl BorshSerialize for InstructionData where
Pubkey: BorshSerialize,
Vec<AccountMetaData>: BorshSerialize,
Vec<u8>: BorshSerialize,
impl BorshSerialize for InstructionData where
Pubkey: BorshSerialize,
Vec<AccountMetaData>: BorshSerialize,
Vec<u8>: BorshSerialize,
Serialize this instance into a vector of bytes.
Whether Self is u8.
NOTE: Vec<u8>
is the most common use-case for serialization and deserialization, it’s
worth handling it as a special case to improve performance.
It’s a workaround for specific Vec<u8>
implementation versus generic Vec<T>
implementation. See https://github.com/rust-lang/rfcs/pull/1210 for details. Read more
Performs the conversion.
Performs the conversion.
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for InstructionData
impl Send for InstructionData
impl Sync for InstructionData
impl Unpin for InstructionData
impl UnwindSafe for InstructionData
Blanket Implementations
pub default fn example() -> T
Mutably borrows from an owned value. Read more
type Output = T
type Output = T
Should always be Self
pub fn vzip(self) -> V