Trait light_client::indexer::Indexer

source ·
pub trait Indexer<R: RpcConnection>:
    Sync
    + Send
    + Debug
    + 'static {
    // Required methods
    fn add_event_and_compressed_accounts(
        &mut self,
        event: &PublicTransactionEvent,
    ) -> (Vec<CompressedAccountWithMerkleContext>, Vec<TokenDataWithMerkleContext>);
    fn create_proof_for_compressed_accounts(
        &mut self,
        compressed_accounts: Option<&[[u8; 32]]>,
        state_merkle_tree_pubkeys: Option<&[Pubkey]>,
        new_addresses: Option<&[[u8; 32]]>,
        address_merkle_tree_pubkeys: Option<Vec<Pubkey>>,
        rpc: &mut R,
    ) -> impl Future<Output = ProofRpcResult>;
    fn get_compressed_accounts_by_owner(
        &self,
        owner: &Pubkey,
    ) -> Vec<CompressedAccountWithMerkleContext>;
}

Required Methods§

source

fn add_event_and_compressed_accounts( &mut self, event: &PublicTransactionEvent, ) -> (Vec<CompressedAccountWithMerkleContext>, Vec<TokenDataWithMerkleContext>)

source

fn create_proof_for_compressed_accounts( &mut self, compressed_accounts: Option<&[[u8; 32]]>, state_merkle_tree_pubkeys: Option<&[Pubkey]>, new_addresses: Option<&[[u8; 32]]>, address_merkle_tree_pubkeys: Option<Vec<Pubkey>>, rpc: &mut R, ) -> impl Future<Output = ProofRpcResult>

source

fn get_compressed_accounts_by_owner( &self, owner: &Pubkey, ) -> Vec<CompressedAccountWithMerkleContext>

Object Safety§

This trait is not object safe.

Implementors§