Trait pallet_atomic_swap::SwapAction
source · pub trait SwapAction<AccountId, T: Config> {
// Required methods
fn reserve(&self, source: &AccountId) -> DispatchResult;
fn claim(&self, source: &AccountId, target: &AccountId) -> bool;
fn weight(&self) -> Weight;
fn cancel(&self, source: &AccountId);
}
Expand description
Definition of a pending atomic swap action. It contains the following three phrases:
- Reserve: reserve the resources needed for a swap. This is to make sure that Claim succeeds with best efforts.
- Claim: claim any resources reserved in the first phrase.
- Cancel: cancel any resources reserved in the first phrase.
Required Methods§
sourcefn reserve(&self, source: &AccountId) -> DispatchResult
fn reserve(&self, source: &AccountId) -> DispatchResult
Reserve the resources needed for the swap, from the given source
. The reservation is
allowed to fail. If that is the case, the the full swap creation operation is cancelled.
sourcefn claim(&self, source: &AccountId, target: &AccountId) -> bool
fn claim(&self, source: &AccountId, target: &AccountId) -> bool
Claim the reserved resources, with source
and target
. Returns whether the claim
succeeds.
sourcefn cancel(&self, source: &AccountId)
fn cancel(&self, source: &AccountId)
Cancel the resources reserved in source
.