Function process_fee_transfer

Source
fn process_fee_transfer<L, FunBalance, FunTiming>(
    ledger: &mut L,
    fee_transfer: &FeeTransfer,
    modify_balance: FunBalance,
    modify_timing: FunTiming,
) -> Result<(Vec<AccountId>, FailureCollection, Amount), String>
where L: LedgerIntf, FunTiming: Fn(&Account) -> Result<Timing, String>, FunBalance: Fn(AccountState, &AccountId, Balance, &Fee) -> Result<Balance, String>,
Expand description

Structure of the failure status: I. Only one fee transfer in the transaction (One) and it fails: [[failure]] II. Two fee transfers in the transaction (Two)- Both fee transfers fail: [[failure-of-first-fee-transfer]; [failure-of-second-fee-transfer]] First succeeds and second one fails: [[];[failure-of-second-fee-transfer]] First fails and second succeeds: [[failure-of-first-fee-transfer];[]]