Trait PoolLoader

Source
pub trait PoolLoader<P, N, LDT = KabuDataTypesEthereum>:
    Send
    + Sync
    + 'static
where N: Network, P: Provider<N>, LDT: Send + Sync + KabuDataTypes,
{ // Required methods fn get_pool_class_by_log( &self, log_entry: &LDT::Log, ) -> Option<(PoolId, PoolClass)>; fn fetch_pool_by_id<'a>( &'a self, pool_id: PoolId, ) -> Pin<Box<dyn Future<Output = Result<PoolWrapper>> + Send + 'a>>; fn fetch_pool_by_id_from_provider<'a>( &'a self, pool_id: PoolId, provider: P, ) -> Pin<Box<dyn Future<Output = Result<PoolWrapper>> + Send + 'a>>; fn fetch_pool_by_id_from_evm( &self, pool_id: PoolId, db: &dyn DatabaseRef<Error = KabuDBError>, ) -> Result<PoolWrapper>; fn is_code(&self, code: &Bytes) -> bool; fn protocol_loader( &self, ) -> Result<Pin<Box<dyn Stream<Item = (PoolId, PoolClass)> + Send>>>; }

Required Methods§

Source

fn get_pool_class_by_log( &self, log_entry: &LDT::Log, ) -> Option<(PoolId, PoolClass)>

Source

fn fetch_pool_by_id<'a>( &'a self, pool_id: PoolId, ) -> Pin<Box<dyn Future<Output = Result<PoolWrapper>> + Send + 'a>>

Source

fn fetch_pool_by_id_from_provider<'a>( &'a self, pool_id: PoolId, provider: P, ) -> Pin<Box<dyn Future<Output = Result<PoolWrapper>> + Send + 'a>>

Source

fn fetch_pool_by_id_from_evm( &self, pool_id: PoolId, db: &dyn DatabaseRef<Error = KabuDBError>, ) -> Result<PoolWrapper>

Source

fn is_code(&self, code: &Bytes) -> bool

Source

fn protocol_loader( &self, ) -> Result<Pin<Box<dyn Stream<Item = (PoolId, PoolClass)> + Send>>>

Implementors§