Trait light_sdk::compressed_account::LightAccounts

source ·
pub trait LightAccounts: Sized {
    // Required methods
    fn try_light_accounts(
        inputs: Vec<Vec<u8>>,
        merkle_context: PackedMerkleContext,
        merkle_tree_root_index: u16,
        address_merkle_context: PackedAddressMerkleContext,
        address_merkle_tree_root_index: u16,
        remaining_accounts: &[AccountInfo<'_>],
    ) -> Result<Self>;
    fn new_address_params(&self) -> Vec<NewAddressParamsPacked>;
    fn input_accounts(
        &self,
        remaining_accounts: &[AccountInfo<'_>],
    ) -> Result<Vec<PackedCompressedAccountWithMerkleContext>>;
    fn output_accounts(
        &self,
        remaining_accounts: &[AccountInfo<'_>],
    ) -> Result<Vec<OutputCompressedAccountWithPackedContext>>;
}

Required Methods§

source

fn try_light_accounts( inputs: Vec<Vec<u8>>, merkle_context: PackedMerkleContext, merkle_tree_root_index: u16, address_merkle_context: PackedAddressMerkleContext, address_merkle_tree_root_index: u16, remaining_accounts: &[AccountInfo<'_>], ) -> Result<Self>

source

fn new_address_params(&self) -> Vec<NewAddressParamsPacked>

source

fn input_accounts( &self, remaining_accounts: &[AccountInfo<'_>], ) -> Result<Vec<PackedCompressedAccountWithMerkleContext>>

source

fn output_accounts( &self, remaining_accounts: &[AccountInfo<'_>], ) -> Result<Vec<OutputCompressedAccountWithPackedContext>>

Object Safety§

This trait is not object safe.

Implementors§