[][src]Trait sunshine_util::traits::BankReservations

pub trait BankReservations<AccountId, GovernanceConfig, Currency, Hash>: RegisterBankAccount<AccountId, GovernanceConfig, Currency> {
    fn reserve_for_spend(
        caller: AccountId,
        bank_id: Self::TreasuryId,
        reason: Hash,
        amount: Currency,
        controller: GovernanceConfig
    ) -> Result<u32, DispatchError>;
fn commit_reserved_spend_for_transfer(
        caller: AccountId,
        bank_id: Self::TreasuryId,
        reservation_id: u32,
        reason: Hash,
        amount: Currency,
        expected_future_owner: GovernanceConfig
    ) -> DispatchResult;
fn unreserve_uncommitted_to_make_free(
        caller: AccountId,
        bank_id: Self::TreasuryId,
        reservation_id: u32,
        amount: Currency
    ) -> DispatchResult;
fn unreserve_committed_to_make_free(
        caller: AccountId,
        bank_id: Self::TreasuryId,
        reservation_id: u32,
        amount: Currency
    ) -> DispatchResult;
fn transfer_spending_power(
        caller: AccountId,
        bank_id: Self::TreasuryId,
        reason: Hash,
        reservation_id: u32,
        amount: Currency,
        new_controller: GovernanceConfig
    ) -> Result<u32, DispatchError>; }

Required methods

fn reserve_for_spend(
    caller: AccountId,
    bank_id: Self::TreasuryId,
    reason: Hash,
    amount: Currency,
    controller: GovernanceConfig
) -> Result<u32, DispatchError>

fn commit_reserved_spend_for_transfer(
    caller: AccountId,
    bank_id: Self::TreasuryId,
    reservation_id: u32,
    reason: Hash,
    amount: Currency,
    expected_future_owner: GovernanceConfig
) -> DispatchResult

fn unreserve_uncommitted_to_make_free(
    caller: AccountId,
    bank_id: Self::TreasuryId,
    reservation_id: u32,
    amount: Currency
) -> DispatchResult

fn unreserve_committed_to_make_free(
    caller: AccountId,
    bank_id: Self::TreasuryId,
    reservation_id: u32,
    amount: Currency
) -> DispatchResult

fn transfer_spending_power(
    caller: AccountId,
    bank_id: Self::TreasuryId,
    reason: Hash,
    reservation_id: u32,
    amount: Currency,
    new_controller: GovernanceConfig
) -> Result<u32, DispatchError>

Loading content...

Implementors

Loading content...