pub trait CompressedAccountInfoTrait {
// Required methods
fn init(
&mut self,
discriminator: [u8; 8],
address: Option<[u8; 32]>,
output_state_tree_index: u8,
) -> Result<(), LightSdkTypesError>;
fn meta_mut<M>(
&mut self,
input_account_meta: &M,
input_data_hash: [u8; 32],
discriminator: [u8; 8],
output_state_tree_index: u8,
) -> Result<(), LightSdkTypesError>
where M: CompressedAccountMetaTrait;
fn meta_close<M>(
&mut self,
input_account_meta: &M,
input_data_hash: [u8; 32],
discriminator: [u8; 8],
) -> Result<(), LightSdkTypesError>
where M: CompressedAccountMetaTrait;
fn input_compressed_account(
&self,
owner: Pubkey,
) -> Result<Option<PackedCompressedAccountWithMerkleContext>, LightSdkTypesError>;
fn output_compressed_account(
&self,
owner: Pubkey,
) -> Result<Option<OutputCompressedAccountWithPackedContext>, LightSdkTypesError>;
}Required Methods§
fn init( &mut self, discriminator: [u8; 8], address: Option<[u8; 32]>, output_state_tree_index: u8, ) -> Result<(), LightSdkTypesError>
fn meta_mut<M>(
&mut self,
input_account_meta: &M,
input_data_hash: [u8; 32],
discriminator: [u8; 8],
output_state_tree_index: u8,
) -> Result<(), LightSdkTypesError>where
M: CompressedAccountMetaTrait,
fn meta_close<M>(
&mut self,
input_account_meta: &M,
input_data_hash: [u8; 32],
discriminator: [u8; 8],
) -> Result<(), LightSdkTypesError>where
M: CompressedAccountMetaTrait,
fn input_compressed_account( &self, owner: Pubkey, ) -> Result<Option<PackedCompressedAccountWithMerkleContext>, LightSdkTypesError>
fn output_compressed_account( &self, owner: Pubkey, ) -> Result<Option<OutputCompressedAccountWithPackedContext>, LightSdkTypesError>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl CompressedAccountInfoTrait for CompressedAccountInfo
impl CompressedAccountInfoTrait for CompressedAccountInfo
Source§fn init(
&mut self,
discriminator: [u8; 8],
address: Option<[u8; 32]>,
output_state_tree_index: u8,
) -> Result<(), LightSdkTypesError>
fn init( &mut self, discriminator: [u8; 8], address: Option<[u8; 32]>, output_state_tree_index: u8, ) -> Result<(), LightSdkTypesError>
Initializes a compressed account info with address.
- The account is zeroed, data has to be added in a separate step.
- Once data is added the data hash has to be added.