referrerpolicy=no-referrer-when-downgrade

ImbalanceAccounting

Trait ImbalanceAccounting 

pub trait ImbalanceAccounting<Balance>: UnsafeConstructorDestructor<Balance> + UnsafeManualAccounting<Balance> {
    // Required methods
    fn amount(&self) -> Balance;
    fn saturating_take(
        &mut self,
        amount: Balance,
    ) -> Box<dyn ImbalanceAccounting<Balance>>;
}
Expand description

Helper trait to be used for generic Imbalance, helpful for tracking multiple concrete types of Imbalance using dynamic dispatch of this trait.

Required Methods§

fn amount(&self) -> Balance

Get inner imbalance amount.

fn saturating_take( &mut self, amount: Balance, ) -> Box<dyn ImbalanceAccounting<Balance>>

Saturating remove amount from the inner imbalance, and return it as a new imbalance instance.

Implementors§

§

impl<A, B, OnDrop, OppositeOnDrop> ImbalanceAccounting<u128> for polkadot_sdk_frame::token::fungibles::Imbalance<A, B, OnDrop, OppositeOnDrop>
where A: AssetId + 'static, B: Balance + 'static, OnDrop: HandleImbalanceDrop<A, B> + 'static, OppositeOnDrop: HandleImbalanceDrop<A, B> + 'static,

§

impl<B, OnDrop, OppositeOnDrop> ImbalanceAccounting<u128> for polkadot_sdk_frame::token::fungible::Imbalance<B, OnDrop, OppositeOnDrop>
where B: Balance + 'static, OnDrop: HandleImbalanceDrop<B> + 'static, OppositeOnDrop: HandleImbalanceDrop<B> + 'static,