Trait PullOraclePriceConsumer

Source
pub trait PullOraclePriceConsumer {
    // Required methods
    fn feed_ids(&mut self) -> impl Future<Output = Result<FeedIds>>;
    fn process_feeds(
        &mut self,
        provider: PriceProviderKind,
        map: FeedAddressMap,
    ) -> Result<()>;
}
Expand description

Pull Oracle Price Consumer.

Required Methods§

Source

fn feed_ids(&mut self) -> impl Future<Output = Result<FeedIds>>

Returns a reference to tokens and their associated feed IDs that require price updates.

Source

fn process_feeds( &mut self, provider: PriceProviderKind, map: FeedAddressMap, ) -> Result<()>

Processes the feed address map returned from the pull oracle.

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<T: PullOraclePriceConsumer> PullOraclePriceConsumer for &mut T

Source§

fn feed_ids(&mut self) -> impl Future<Output = Result<FeedIds>>

Source§

fn process_feeds( &mut self, provider: PriceProviderKind, map: FeedAddressMap, ) -> Result<()>

Implementors§

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for UpdateAdlBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for ExecuteDepositBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for ExecuteOrderBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for PositionCutBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for ExecuteShiftBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for ExecuteWithdrawalBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for ExecuteGlvDepositBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for ExecuteGlvShiftBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for ExecuteGlvWithdrawalBuilder<'_, C>

Source§

impl<C: Deref<Target = impl Signer> + Clone> PullOraclePriceConsumer for ConfirmGtBuybackBuilder<'_, C>

Source§

impl<O: PullOracle, T: PullOraclePriceConsumer> PullOraclePriceConsumer for WithPullOracle<O, T>