[][src]Trait eq_primitives::Aggregates

pub trait Aggregates<AccountId, Balance> where
    Balance: Member + AtLeast32BitUnsigned + FullCodec + Copy + MaybeSerializeDeserialize + Debug + Default
{ fn in_usergroup(account_id: &AccountId, user_group: &UserGroup) -> bool;
fn set_usergroup(
        account_id: &AccountId,
        user_group: &UserGroup,
        is_in: &bool
    );
fn update_total(
        account_id: &AccountId,
        currency: &Currency,
        prev_balance: &SignedBalance<Balance>,
        delta_balance: &SignedBalance<Balance>
    );
fn iter_account(
        user_group: &UserGroup
    ) -> Box<dyn Iterator<Item = AccountId>>;
fn iter_total(
        user_group: &UserGroup
    ) -> Box<dyn Iterator<Item = (Currency, TotalAggregates<Balance>)>>;
fn get_total(
        user_group: &UserGroup,
        currency: &Currency
    ) -> TotalAggregates<Balance>; }

When implemented, pallet can work with TotalAggregates

Required methods

fn in_usergroup(account_id: &AccountId, user_group: &UserGroup) -> bool

Checks wether account_id is in a group user_group

fn set_usergroup(account_id: &AccountId, user_group: &UserGroup, is_in: &bool)

Adds account_id to a user_group or removes it from a group based on passed is_in bool

fn update_total(
    account_id: &AccountId,
    currency: &Currency,
    prev_balance: &SignedBalance<Balance>,
    delta_balance: &SignedBalance<Balance>
)

Updates TotalAggregates of a group when balance of account_id changes for delta_balance

fn iter_account(user_group: &UserGroup) -> Box<dyn Iterator<Item = AccountId>>

Used to iterate over all accounts of a user group

fn iter_total(
    user_group: &UserGroup
) -> Box<dyn Iterator<Item = (Currency, TotalAggregates<Balance>)>>

Used to iterate over currency total of a user group

fn get_total(
    user_group: &UserGroup,
    currency: &Currency
) -> TotalAggregates<Balance>

Deprecated, will be removed

Loading content...

Implementors

Loading content...