substrate
substrate copied to clipboard
revamp locking & reserving
Description
This PR is our initial stab at #12918, which involves revisiting the definitions of free, locked, and reserved, especially as these concepts relate to voting, aucitions/crowdloans, and staking. In particular reserving will be replaced with "holding" via a type-safe HoldReason
, and
This will entail:
- [ ] generic
#[pallet::composite]
syntax for definining composite enums that can then be used at the runtime level - [ ]
HoldReason
/ type-safe reserve/hold identifier via#[pallet::composite]
- [ ]
FreezeReason
/ type-safe lock/freeze identifier via#[pallet::composite]
- [ ] TBD, see original issue #12918
Related Issued
- #12918