Skip to content

Commit

Permalink
change(pallet-referenda): create const function that helps construct …
Browse files Browse the repository at this point in the history
…`StringLike` to reduce changes in tracks definitions
  • Loading branch information
pandres95 committed Feb 22, 2025
1 parent d7fe4bb commit 6fe1641
Show file tree
Hide file tree
Showing 9 changed files with 98 additions and 92 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,8 @@
use super::Origin;
use crate::{Balance, BlockNumber, RuntimeOrigin, DAYS, DOLLARS, HOURS};
use sp_runtime::{str_array as s, Perbill};
use sp_runtime::Perbill;
use pallet_referenda::string_like_track_name as s;
use sp_std::borrow::Cow;

/// Referendum `TrackId` type.
Expand Down Expand Up @@ -51,12 +52,11 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
fn tracks(
) -> impl Iterator<Item = Cow<'static, pallet_referenda::Track<Self::Id, Balance, BlockNumber>>>
{
use pallet_referenda::StringLike;
static DATA: [pallet_referenda::Track<TrackId, Balance, BlockNumber>; 9] = [
pallet_referenda::Track {
id: constants::AMBASSADOR_TIER_1,
info: pallet_referenda::TrackInfo {
name: StringLike(s("ambassador tier 1")),
name: s("ambassador tier 1"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand All @@ -78,7 +78,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: constants::AMBASSADOR_TIER_2,
info: pallet_referenda::TrackInfo {
name: StringLike(s("ambassador tier 2")),
name: s("ambassador tier 2"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand All @@ -100,7 +100,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: constants::SENIOR_AMBASSADOR_TIER_3,
info: pallet_referenda::TrackInfo {
name: StringLike(s("senior ambassador tier 3")),
name: s("senior ambassador tier 3"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand All @@ -122,7 +122,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: constants::SENIOR_AMBASSADOR_TIER_4,
info: pallet_referenda::TrackInfo {
name: StringLike(s("senior ambassador tier 4")),
name: s("senior ambassador tier 4"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand All @@ -144,7 +144,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: constants::HEAD_AMBASSADOR_TIER_5,
info: pallet_referenda::TrackInfo {
name: StringLike(s("head ambassador tier 5")),
name: s("head ambassador tier 5"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand All @@ -166,7 +166,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: constants::HEAD_AMBASSADOR_TIER_6,
info: pallet_referenda::TrackInfo {
name: StringLike(s("head ambassador tier 6")),
name: s("head ambassador tier 6"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand All @@ -188,7 +188,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: constants::HEAD_AMBASSADOR_TIER_7,
info: pallet_referenda::TrackInfo {
name: StringLike(s("head ambassador tier 7")),
name: s("head ambassador tier 7"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand All @@ -210,7 +210,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: constants::MASTER_AMBASSADOR_TIER_8,
info: pallet_referenda::TrackInfo {
name: StringLike(s("master ambassador tier 8")),
name: s("master ambassador tier 8"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand All @@ -232,7 +232,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: constants::MASTER_AMBASSADOR_TIER_9,
info: pallet_referenda::TrackInfo {
name: StringLike(s("master ambassador tier 9")),
name: s("master ambassador tier 9"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 24 * HOURS,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@
use crate::{Balance, BlockNumber, RuntimeOrigin, DAYS, DOLLARS, HOURS, MINUTES};
use pallet_ranked_collective::Rank;
use sp_runtime::{str_array as s, traits::Convert, Perbill};
use sp_runtime::{traits::Convert, Perbill};
use pallet_referenda::string_like_track_name as s;
use sp_std::borrow::Cow;

/// Referendum `TrackId` type.
Expand Down Expand Up @@ -120,12 +121,11 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
) -> impl Iterator<Item = Cow<'static, pallet_referenda::Track<Self::Id, Balance, BlockNumber>>>
{
use constants as tracks;
use pallet_referenda::StringLike;
static DATA: [pallet_referenda::Track<TrackId, Balance, BlockNumber>; 21] = [
pallet_referenda::Track {
id: tracks::MEMBERS,
info: pallet_referenda::TrackInfo {
name: StringLike(s("members")),
name: s("members"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -147,7 +147,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::PROFICIENTS,
info: pallet_referenda::TrackInfo {
name: StringLike(s("proficient members")),
name: s("proficient members"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -169,7 +169,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::FELLOWS,
info: pallet_referenda::TrackInfo {
name: StringLike(s("fellows")),
name: s("fellows"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -191,7 +191,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::ARCHITECTS,
info: pallet_referenda::TrackInfo {
name: StringLike(s("architects")),
name: s("architects"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -213,7 +213,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::ARCHITECTS_ADEPT,
info: pallet_referenda::TrackInfo {
name: StringLike(s("architects adept")),
name: s("architects adept"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -235,7 +235,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::GRAND_ARCHITECTS,
info: pallet_referenda::TrackInfo {
name: StringLike(s("grand architects")),
name: s("grand architects"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -257,7 +257,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::MASTERS,
info: pallet_referenda::TrackInfo {
name: StringLike(s("masters")),
name: s("masters"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -279,7 +279,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::MASTERS_CONSTANT,
info: pallet_referenda::TrackInfo {
name: StringLike(s("masters constant")),
name: s("masters constant"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -301,7 +301,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::GRAND_MASTERS,
info: pallet_referenda::TrackInfo {
name: StringLike(s("grand masters")),
name: s("grand masters"),
max_deciding: 10,
decision_deposit: 5 * DOLLARS,
prepare_period: 30 * MINUTES,
Expand All @@ -323,7 +323,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::RETAIN_AT_1DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("retain at I Dan")),
name: s("retain at I Dan"),
max_deciding: RETAIN_MAX_DECIDING,
decision_deposit: RETAIN_DECISION_DEPOSIT,
prepare_period: RETAIN_PREPARE_PERIOD,
Expand All @@ -337,7 +337,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::RETAIN_AT_2DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("retain at II Dan")),
name: s("retain at II Dan"),
max_deciding: RETAIN_MAX_DECIDING,
decision_deposit: RETAIN_DECISION_DEPOSIT,
prepare_period: RETAIN_PREPARE_PERIOD,
Expand All @@ -351,7 +351,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::RETAIN_AT_3DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("retain at III Dan")),
name: s("retain at III Dan"),
max_deciding: RETAIN_MAX_DECIDING,
decision_deposit: RETAIN_DECISION_DEPOSIT,
prepare_period: RETAIN_PREPARE_PERIOD,
Expand All @@ -365,7 +365,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::RETAIN_AT_4DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("retain at IV Dan")),
name: s("retain at IV Dan"),
max_deciding: RETAIN_MAX_DECIDING,
decision_deposit: RETAIN_DECISION_DEPOSIT,
prepare_period: RETAIN_PREPARE_PERIOD,
Expand All @@ -379,7 +379,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::RETAIN_AT_5DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("retain at V Dan")),
name: s("retain at V Dan"),
max_deciding: RETAIN_MAX_DECIDING,
decision_deposit: RETAIN_DECISION_DEPOSIT,
prepare_period: RETAIN_PREPARE_PERIOD,
Expand All @@ -393,7 +393,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::RETAIN_AT_6DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("retain at VI Dan")),
name: s("retain at VI Dan"),
max_deciding: RETAIN_MAX_DECIDING,
decision_deposit: RETAIN_DECISION_DEPOSIT,
prepare_period: RETAIN_PREPARE_PERIOD,
Expand All @@ -407,7 +407,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::PROMOTE_TO_1DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("promote to I Dan")),
name: s("promote to I Dan"),
max_deciding: PROMOTE_MAX_DECIDING,
decision_deposit: PROMOTE_DECISION_DEPOSIT,
prepare_period: PROMOTE_PREPARE_PERIOD,
Expand All @@ -421,7 +421,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::PROMOTE_TO_2DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("promote to II Dan")),
name: s("promote to II Dan"),
max_deciding: PROMOTE_MAX_DECIDING,
decision_deposit: PROMOTE_DECISION_DEPOSIT,
prepare_period: PROMOTE_PREPARE_PERIOD,
Expand All @@ -435,7 +435,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::PROMOTE_TO_3DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("promote to III Dan")),
name: s("promote to III Dan"),
max_deciding: PROMOTE_MAX_DECIDING,
decision_deposit: PROMOTE_DECISION_DEPOSIT,
prepare_period: PROMOTE_PREPARE_PERIOD,
Expand All @@ -449,7 +449,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::PROMOTE_TO_4DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("promote to IV Dan")),
name: s("promote to IV Dan"),
max_deciding: PROMOTE_MAX_DECIDING,
decision_deposit: PROMOTE_DECISION_DEPOSIT,
prepare_period: PROMOTE_PREPARE_PERIOD,
Expand All @@ -463,7 +463,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::PROMOTE_TO_5DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("promote to V Dan")),
name: s("promote to V Dan"),
max_deciding: PROMOTE_MAX_DECIDING,
decision_deposit: PROMOTE_DECISION_DEPOSIT,
prepare_period: PROMOTE_PREPARE_PERIOD,
Expand All @@ -477,7 +477,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
pallet_referenda::Track {
id: tracks::PROMOTE_TO_6DAN,
info: pallet_referenda::TrackInfo {
name: StringLike(s("promote to VI Dan")),
name: s("promote to VI Dan"),
max_deciding: PROMOTE_MAX_DECIDING,
decision_deposit: PROMOTE_DECISION_DEPOSIT,
prepare_period: PROMOTE_PREPARE_PERIOD,
Expand Down
22 changes: 11 additions & 11 deletions polkadot/runtime/rococo/src/governance/fellowship.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
use alloc::borrow::Cow;
use frame_support::traits::{MapSuccess, TryMapSuccess};
use pallet_referenda::{StringLike, Track, TrackInfo};
use pallet_referenda::{string_like_track_name as s, Track, TrackInfo};
use sp_runtime::{
str_array as s,
traits::{CheckedReduceBy, ConstU16, Replace, ReplaceWithDefault},
Expand All @@ -43,7 +43,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 0u16,
info: TrackInfo {
name: StringLike(s("candidates")),
name: s("candidates"),
max_deciding: 10,
decision_deposit: 100 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -65,7 +65,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 1u16,
info: TrackInfo {
name: StringLike(s("members")),
name: s("members"),
max_deciding: 10,
decision_deposit: 10 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -87,7 +87,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 2u16,
info: TrackInfo {
name: StringLike(s("proficients")),
name: s("proficients"),
max_deciding: 10,
decision_deposit: 10 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -109,7 +109,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 3u16,
info: TrackInfo {
name: StringLike(s("fellows")),
name: s("fellows"),
max_deciding: 10,
decision_deposit: 10 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -131,7 +131,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 4u16,
info: TrackInfo {
name: StringLike(s("senior fellows")),
name: s("senior fellows"),
max_deciding: 10,
decision_deposit: 10 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -153,7 +153,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 5u16,
info: TrackInfo {
name: StringLike(s("experts")),
name: s("experts"),
max_deciding: 10,
decision_deposit: 1 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -175,7 +175,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 6u16,
info: TrackInfo {
name: StringLike(s("senior experts")),
name: s("senior experts"),
max_deciding: 10,
decision_deposit: 1 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -197,7 +197,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 7u16,
info: TrackInfo {
name: StringLike(s("masters")),
name: s("masters"),
max_deciding: 10,
decision_deposit: 1 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -219,7 +219,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 8u16,
info: TrackInfo {
name: StringLike(s("senior masters")),
name: s("senior masters"),
max_deciding: 10,
decision_deposit: 1 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand All @@ -241,7 +241,7 @@ impl pallet_referenda::TracksInfo<Balance, BlockNumber> for TracksInfo {
Track {
id: 9u16,
info: TrackInfo {
name: StringLike(s("grand masters")),
name: s("grand masters"),
max_deciding: 10,
decision_deposit: 1 * 3 * CENTS,
prepare_period: 30 * MINUTES,
Expand Down
Loading

0 comments on commit 6fe1641

Please sign in to comment.