pub trait Nontransferable {
    type Balance: Balance;

    // Required methods
    fn balance(msa_id: MessageSourceId) -> Self::Balance;
    fn deduct(
        msa_id: MessageSourceId,
        amount: Self::Balance
    ) -> Result<(), DispatchError>;
    fn deposit(
        msa_id: MessageSourceId,
        amount: Self::Balance
    ) -> Result<(), DispatchError>;
}
Expand description

A trait for Non-transferable asset.

Required Associated Types§

source

type Balance: Balance

Scalar type for representing balance of an account.

Required Methods§

source

fn balance(msa_id: MessageSourceId) -> Self::Balance

The balance Capacity for an MSA account.

source

fn deduct( msa_id: MessageSourceId, amount: Self::Balance ) -> Result<(), DispatchError>

Reduce Capacity of an MSA account by amount.

source

fn deposit( msa_id: MessageSourceId, amount: Self::Balance ) -> Result<(), DispatchError>

Increase Capacity of an MSA account by an amount.

Object Safety§

This trait is not object safe.

Implementors§