Trait frame_support::traits::tokens::fungibles::hold::Balanced

source ·
pub trait Balanced<AccountId>: Balanced<AccountId> + Unbalanced<AccountId> {
    // Provided methods
    fn slash(
        asset: Self::AssetId,
        reason: &Self::Reason,
        who: &AccountId,
        amount: Self::Balance,
    ) -> (Credit<AccountId, Self>, Self::Balance) { ... }
    fn done_slash(
        _asset: Self::AssetId,
        _reason: &Self::Reason,
        _who: &AccountId,
        _amount: Self::Balance,
    ) { ... }
}
Expand description

Trait for slashing a fungible asset which can be place on hold.

Provided Methods§

source

fn slash( asset: Self::AssetId, reason: &Self::Reason, who: &AccountId, amount: Self::Balance, ) -> (Credit<AccountId, Self>, Self::Balance)

Reduce the balance of some funds on hold in an account.

The resulting imbalance is the first item of the tuple returned.

As much funds that are on hold up to amount will be deducted as possible. If this is less than amount, then a non-zero second item will be returned.

source

fn done_slash( _asset: Self::AssetId, _reason: &Self::Reason, _who: &AccountId, _amount: Self::Balance, )

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<Left: BalancedHold<AccountId>, Right: BalancedHold<AccountId, Balance = Left::Balance, Reason = Left::Reason>, Criterion: Convert<AssetKind, Either<(), Right::AssetId>>, AssetKind: AssetId, AccountId> Balanced<AccountId> for frame_support::traits::tokens::fungible::UnionOf<Left, Right, Criterion, AssetKind, AccountId>

source§

impl<Left: BalancedHold<AccountId>, Right: BalancedHold<AccountId, Balance = Left::Balance, Reason = Left::Reason>, Criterion: Convert<AssetKind, Either<Left::AssetId, Right::AssetId>>, AssetKind: AssetId, AccountId> Balanced<AccountId> for frame_support::traits::tokens::fungibles::UnionOf<Left, Right, Criterion, AssetKind, AccountId>