21 releases (1 stable)

1.0.0 Aug 1, 2024
0.13.0 Jun 26, 2024
0.12.0 Jun 3, 2024
0.8.0 Mar 18, 2024
0.1.1 Jun 5, 2020

#5 in #issuance


Used in pallet-mixer

Apache-2.0 and GPL-3.0-only

315KB
8K SLoC

Tokens Module

Overview

The tokens module provides fungible multi-currencies functionality that implements MultiCurrency trait.

The tokens module provides functions for:

  • Querying and setting the balance of a given account.
  • Getting and managing total issuance.
  • Balance transfer between accounts.
  • Depositing and withdrawing balance.
  • Slashing an account balance.

lib.rs:

Tokens Module

Overview

The tokens module provides fungible multi-currency functionality that implements MultiCurrency trait.

The tokens module provides functions for:

  • Querying and setting the balance of a given account.
  • Getting and managing total issuance.
  • Balance transfer between accounts.
  • Depositing and withdrawing balance.
  • Slashing an account balance.

Implementations

The tokens module provides implementations for following traits.

  • MultiCurrency - Abstraction over a fungible multi-currency system.
  • MultiCurrencyExtended - Extended MultiCurrency with additional helper types and methods, like updating balance by a given signed integer amount.

Interface

Dispatchable Functions

  • transfer - Transfer some balance to another account.
  • transfer_all - Transfer all balance to another account.

Genesis Config

The tokens module depends on the GenesisConfig. Endowed accounts could be configured in genesis configs.

Dependencies

~21–35MB
~586K SLoC