pub struct UnreserveDeposits<T: UnlockConfig<I>, I: 'static>(_);
Expand description
A migration that unreserves all tip deposits.
Useful to prevent funds from being locked up when the pallet is deprecated.
The pallet should be made inoperable before or immediately after this migration is run.
(See also the RemovePallet
migration in frame/support/src/migrations.rs
)
Trait Implementations§
source§impl<T: UnlockConfig<I>, I: 'static> OnRuntimeUpgrade for UnreserveDeposits<T, I>where
<<T as UnlockConfig<I>>::Currency as Currency<<T as UnlockConfig<I>>::AccountId>>::Balance: Sum,
impl<T: UnlockConfig<I>, I: 'static> OnRuntimeUpgrade for UnreserveDeposits<T, I>where <<T as UnlockConfig<I>>::Currency as Currency<<T as UnlockConfig<I>>::AccountId>>::Balance: Sum,
source§fn pre_upgrade() -> Result<Vec<u8>, TryRuntimeError>
fn pre_upgrade() -> Result<Vec<u8>, TryRuntimeError>
Gets the actual reserved amount for each account before the migration, performs integrity checks and prints some summary information.
Steps:
- Gets the deposited balances for each account stored in this pallet.
- Collects actual pre-migration reserved balances for each account.
- Checks the integrity of the deposited balances.
- Prints summary statistics about the state to be migrated.
- Returns the pre-migration actual reserved balance for each account that will be part of the migration.
Fails with a TryRuntimeError
if somehow the amount reserved by this pallet is greater than
the actual total reserved amount for any accounts.
source§fn on_runtime_upgrade() -> Weight
fn on_runtime_upgrade() -> Weight
Executes the migration, unreserving funds that are locked in Tip deposits.
source§fn post_upgrade(
account_reserved_before_bytes: Vec<u8>
) -> Result<(), TryRuntimeError>
fn post_upgrade( account_reserved_before_bytes: Vec<u8> ) -> Result<(), TryRuntimeError>
Verifies that the account reserved balances were reduced by the actual expected amounts.
source§fn try_on_runtime_upgrade(checks: bool) -> Result<Weight, DispatchError>
fn try_on_runtime_upgrade(checks: bool) -> Result<Weight, DispatchError>
The expected and default behavior of this method is to handle executing
pre_upgrade
->
on_runtime_upgrade
-> post_upgrade
hooks for a migration. Read moreAuto Trait Implementations§
impl<T, I> RefUnwindSafe for UnreserveDeposits<T, I>where I: RefUnwindSafe, T: RefUnwindSafe,
impl<T, I> Send for UnreserveDeposits<T, I>where I: Send, T: Send,
impl<T, I> Sync for UnreserveDeposits<T, I>where I: Sync, T: Sync,
impl<T, I> Unpin for UnreserveDeposits<T, I>where I: Unpin, T: Unpin,
impl<T, I> UnwindSafe for UnreserveDeposits<T, I>where I: UnwindSafe, T: UnwindSafe,
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere Outer: AsRef<T> + AsMut<T> + From<T>, T: From<Outer>,
§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere Self: UniqueSaturatedFrom<T>,
source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read more§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere SS: SubsetOf<SP>,
§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read more§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.source§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere T: Bounded, S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.