referrerpolicy=no-referrer-when-downgrade

AssetsCallback

Trait AssetsCallback 

Source
pub trait AssetsCallback<AssetId, AccountId, Balance> {
    // Provided methods
    fn created(_id: &AssetId, _owner: &AccountId) -> Result<(), ()> { ... }
    fn destroyed(_id: &AssetId) -> Result<(), ()> { ... }
    fn issued(_id: &AssetId, _owner: &AccountId, _amount: Balance) { ... }
    fn transferred(
        _id: &AssetId,
        _from: &AccountId,
        _to: &AccountId,
        _amount: Balance,
    ) { ... }
    fn burned(_id: &AssetId, _owner: &AccountId, _amount: Balance) { ... }
    fn deposited(_id: &AssetId, _who: &AccountId, _amount: Balance) { ... }
    fn withdrawn(_id: &AssetId, _who: &AccountId, _amount: Balance) { ... }
}
Expand description

Callbacks executed on asset lifecycle and balance-change events.

Provided Methods§

Source

fn created(_id: &AssetId, _owner: &AccountId) -> Result<(), ()>

Indicates that asset with id was successfully created by the owner

Source

fn destroyed(_id: &AssetId) -> Result<(), ()>

Indicates that asset with id has just been destroyed

Source

fn issued(_id: &AssetId, _owner: &AccountId, _amount: Balance)

Indicates that amount of asset id was minted into owner, increasing total supply.

Source

fn transferred( _id: &AssetId, _from: &AccountId, _to: &AccountId, _amount: Balance, )

Indicates that amount of asset id was moved from from to to.

Source

fn burned(_id: &AssetId, _owner: &AccountId, _amount: Balance)

Indicates that amount of asset id was burned from owner, decreasing total supply.

Source

fn deposited(_id: &AssetId, _who: &AccountId, _amount: Balance)

Indicates that amount of asset id was credited to who without changing total supply.

Source

fn withdrawn(_id: &AssetId, _who: &AccountId, _amount: Balance)

Indicates that amount of asset id was debited from who without changing total supply.

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<AssetId, AccountId, Balance: Copy> AssetsCallback<AssetId, AccountId, Balance> for ()

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0,)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>, TupleElement2: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1, TupleElement2)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>, TupleElement2: AssetsCallback<AssetId, AccountId, Balance>, TupleElement3: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>, TupleElement2: AssetsCallback<AssetId, AccountId, Balance>, TupleElement3: AssetsCallback<AssetId, AccountId, Balance>, TupleElement4: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>, TupleElement2: AssetsCallback<AssetId, AccountId, Balance>, TupleElement3: AssetsCallback<AssetId, AccountId, Balance>, TupleElement4: AssetsCallback<AssetId, AccountId, Balance>, TupleElement5: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>, TupleElement2: AssetsCallback<AssetId, AccountId, Balance>, TupleElement3: AssetsCallback<AssetId, AccountId, Balance>, TupleElement4: AssetsCallback<AssetId, AccountId, Balance>, TupleElement5: AssetsCallback<AssetId, AccountId, Balance>, TupleElement6: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>, TupleElement2: AssetsCallback<AssetId, AccountId, Balance>, TupleElement3: AssetsCallback<AssetId, AccountId, Balance>, TupleElement4: AssetsCallback<AssetId, AccountId, Balance>, TupleElement5: AssetsCallback<AssetId, AccountId, Balance>, TupleElement6: AssetsCallback<AssetId, AccountId, Balance>, TupleElement7: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>, TupleElement2: AssetsCallback<AssetId, AccountId, Balance>, TupleElement3: AssetsCallback<AssetId, AccountId, Balance>, TupleElement4: AssetsCallback<AssetId, AccountId, Balance>, TupleElement5: AssetsCallback<AssetId, AccountId, Balance>, TupleElement6: AssetsCallback<AssetId, AccountId, Balance>, TupleElement7: AssetsCallback<AssetId, AccountId, Balance>, TupleElement8: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Source§

impl<AssetId, AccountId, Balance: Copy, TupleElement0: AssetsCallback<AssetId, AccountId, Balance>, TupleElement1: AssetsCallback<AssetId, AccountId, Balance>, TupleElement2: AssetsCallback<AssetId, AccountId, Balance>, TupleElement3: AssetsCallback<AssetId, AccountId, Balance>, TupleElement4: AssetsCallback<AssetId, AccountId, Balance>, TupleElement5: AssetsCallback<AssetId, AccountId, Balance>, TupleElement6: AssetsCallback<AssetId, AccountId, Balance>, TupleElement7: AssetsCallback<AssetId, AccountId, Balance>, TupleElement8: AssetsCallback<AssetId, AccountId, Balance>, TupleElement9: AssetsCallback<AssetId, AccountId, Balance>> AssetsCallback<AssetId, AccountId, Balance> for (TupleElement0, TupleElement1, TupleElement2, TupleElement3, TupleElement4, TupleElement5, TupleElement6, TupleElement7, TupleElement8, TupleElement9)

Source§

fn created(id: &AssetId, owner: &AccountId) -> Result<(), ()>

Source§

fn destroyed(id: &AssetId) -> Result<(), ()>

Source§

fn issued(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn transferred(id: &AssetId, from: &AccountId, to: &AccountId, amount: Balance)

Source§

fn burned(id: &AssetId, owner: &AccountId, amount: Balance)

Source§

fn deposited(id: &AssetId, who: &AccountId, amount: Balance)

Source§

fn withdrawn(id: &AssetId, who: &AccountId, amount: Balance)

Implementors§