pub struct InstructionDataInvoke {
pub proof: Option<CompressedProof>,
pub input_root_indices: Vec<u16>,
pub input_compressed_accounts_with_merkle_context: Vec<PackedCompressedAccountWithMerkleContext>,
pub output_compressed_accounts: Vec<CompressedAccount>,
pub output_state_merkle_tree_account_indices: Vec<u8>,
pub relay_fee: Option<u64>,
pub new_address_params: Vec<NewAddressParamsPacked>,
pub compression_lamports: Option<u64>,
pub is_compress: bool,
}
Fields§
§proof: Option<CompressedProof>
§input_root_indices: Vec<u16>
§input_compressed_accounts_with_merkle_context: Vec<PackedCompressedAccountWithMerkleContext>
§output_compressed_accounts: Vec<CompressedAccount>
§output_state_merkle_tree_account_indices: Vec<u8>
The indices of the accounts in the output state merkle tree.
relay_fee: Option<u64>
§new_address_params: Vec<NewAddressParamsPacked>
§compression_lamports: Option<u64>
§is_compress: bool
Implementations§
source§impl InstructionDataInvoke
impl InstructionDataInvoke
sourcepub fn check_input_lengths(&self) -> Result<()>
pub fn check_input_lengths(&self) -> Result<()>
Checks that the lengths of the vectors are consistent with each other. Note that this function does not check the inputs themselves just plausible of the lengths. input roots must be the same length as input compressed accounts output compressed accounts must be the same length as output state merkle tree account indices
Trait Implementations§
source§impl BorshDeserialize for InstructionDataInvokewhere
Option<CompressedProof>: BorshDeserialize,
Vec<u16>: BorshDeserialize,
Vec<PackedCompressedAccountWithMerkleContext>: BorshDeserialize,
Vec<CompressedAccount>: BorshDeserialize,
Vec<u8>: BorshDeserialize,
Option<u64>: BorshDeserialize,
Vec<NewAddressParamsPacked>: BorshDeserialize,
bool: BorshDeserialize,
impl BorshDeserialize for InstructionDataInvokewhere
Option<CompressedProof>: BorshDeserialize,
Vec<u16>: BorshDeserialize,
Vec<PackedCompressedAccountWithMerkleContext>: BorshDeserialize,
Vec<CompressedAccount>: BorshDeserialize,
Vec<u8>: BorshDeserialize,
Option<u64>: BorshDeserialize,
Vec<NewAddressParamsPacked>: BorshDeserialize,
bool: BorshDeserialize,
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>
Deserializes this instance from a given slice of bytes.
Updates the buffer to point at the remaining bytes.
source§fn try_from_slice(v: &[u8]) -> Result<Self, Error>
fn try_from_slice(v: &[u8]) -> Result<Self, Error>
Deserialize this instance from a slice of bytes.
fn try_from_reader<R>(reader: &mut R) -> Result<Self, Error>where
R: Read,
source§impl Clone for InstructionDataInvoke
impl Clone for InstructionDataInvoke
source§fn clone(&self) -> InstructionDataInvoke
fn clone(&self) -> InstructionDataInvoke
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moresource§impl Debug for InstructionDataInvoke
impl Debug for InstructionDataInvoke
source§impl Default for InstructionDataInvoke
impl Default for InstructionDataInvoke
source§fn default() -> InstructionDataInvoke
fn default() -> InstructionDataInvoke
Returns the “default value” for a type. Read more
source§impl PartialEq for InstructionDataInvoke
impl PartialEq for InstructionDataInvoke
source§fn eq(&self, other: &InstructionDataInvoke) -> bool
fn eq(&self, other: &InstructionDataInvoke) -> bool
This method tests for
self
and other
values to be equal, and is used
by ==
.impl StructuralPartialEq for InstructionDataInvoke
Auto Trait Implementations§
impl Freeze for InstructionDataInvoke
impl RefUnwindSafe for InstructionDataInvoke
impl Send for InstructionDataInvoke
impl Sync for InstructionDataInvoke
impl Unpin for InstructionDataInvoke
impl UnwindSafe for InstructionDataInvoke
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
Mutably borrows from an owned value. Read more
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> ⓘ
Converts
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> ⓘ
Converts
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