From b54e16fce3d3dd16c867193e5096c06692c3622e Mon Sep 17 00:00:00 2001 From: muharem <ismailov.m.h@gmail.com> Date: Sun, 22 Dec 2024 15:30:50 +0100 Subject: [PATCH] drop associate types, use bounds --- polkadot/runtime/westend/src/lib.rs | 2 -- substrate/bin/node/runtime/src/lib.rs | 2 -- substrate/frame/meta-tx/src/benchmarking.rs | 1 - substrate/frame/meta-tx/src/lib.rs | 28 +++++++++------------ substrate/frame/meta-tx/src/mock.rs | 2 -- 5 files changed, 12 insertions(+), 23 deletions(-) diff --git a/polkadot/runtime/westend/src/lib.rs b/polkadot/runtime/westend/src/lib.rs index b5b72f992ca..cf373c95a9c 100644 --- a/polkadot/runtime/westend/src/lib.rs +++ b/polkadot/runtime/westend/src/lib.rs @@ -1597,9 +1597,7 @@ pub type MetaTxExtension = ( impl pallet_meta_tx::Config for Runtime { type WeightInfo = weights::pallet_meta_tx::WeightInfo<Runtime>; - type RuntimeOrigin = RuntimeOrigin; type RuntimeEvent = RuntimeEvent; - type RuntimeCall = RuntimeCall; #[cfg(not(feature = "runtime-benchmarks"))] type Extension = MetaTxExtension; #[cfg(feature = "runtime-benchmarks")] diff --git a/substrate/bin/node/runtime/src/lib.rs b/substrate/bin/node/runtime/src/lib.rs index 2cd328dfee2..91452f3570c 100644 --- a/substrate/bin/node/runtime/src/lib.rs +++ b/substrate/bin/node/runtime/src/lib.rs @@ -2365,9 +2365,7 @@ pub type MetaTxExtension = ( impl pallet_meta_tx::Config for Runtime { type WeightInfo = (); - type RuntimeOrigin = RuntimeOrigin; type RuntimeEvent = RuntimeEvent; - type RuntimeCall = RuntimeCall; #[cfg(not(feature = "runtime-benchmarks"))] type Extension = MetaTxExtension; #[cfg(feature = "runtime-benchmarks")] diff --git a/substrate/frame/meta-tx/src/benchmarking.rs b/substrate/frame/meta-tx/src/benchmarking.rs index 1250dce5efb..8e1ac058a85 100644 --- a/substrate/frame/meta-tx/src/benchmarking.rs +++ b/substrate/frame/meta-tx/src/benchmarking.rs @@ -80,7 +80,6 @@ fn assert_last_event<T: Config>(generic_event: <T as Config>::RuntimeEvent) { where T: Config, <T as Config>::Extension: Default, - <T as Config>::RuntimeCall: From<frame_system::Call<T>>, )] mod benchmarks { use super::*; diff --git a/substrate/frame/meta-tx/src/lib.rs b/substrate/frame/meta-tx/src/lib.rs index 335eea7d1cd..ef012e2d9cc 100644 --- a/substrate/frame/meta-tx/src/lib.rs +++ b/substrate/frame/meta-tx/src/lib.rs @@ -98,31 +98,27 @@ impl<Call, Extension> MetaTx<Call, Extension> { } /// The [`MetaTx`] for the given config. -pub type MetaTxFor<T> = MetaTx<<T as Config>::RuntimeCall, <T as Config>::Extension>; +pub type MetaTxFor<T> = MetaTx<<T as frame_system::Config>::RuntimeCall, <T as Config>::Extension>; #[frame_support::pallet] pub mod pallet { use super::*; #[pallet::config] - pub trait Config: frame_system::Config { + pub trait Config: + frame_system::Config< + RuntimeCall: Dispatchable< + Info = DispatchInfo, + PostInfo = PostDispatchInfo, + RuntimeOrigin = <Self as frame_system::Config>::RuntimeOrigin, + >, + RuntimeOrigin: AsTransactionAuthorizedOrigin + From<SystemOrigin<Self::AccountId>>, + > + { /// Weight information for calls in this pallet. type WeightInfo: WeightInfo; - /// The overarching origin type. - // We need extra `AsTransactionAuthorizedOrigin` bound to use `DispatchTransaction` impl. - type RuntimeOrigin: AsTransactionAuthorizedOrigin - + From<SystemOrigin<Self::AccountId>> - + IsType<<Self as frame_system::Config>::RuntimeOrigin>; /// The overarching event type. type RuntimeEvent: From<Event<Self>> + IsType<<Self as frame_system::Config>::RuntimeEvent>; - /// The overarching call type. - type RuntimeCall: Parameter - + GetDispatchInfo - + Dispatchable< - Info = DispatchInfo, - PostInfo = PostDispatchInfo, - RuntimeOrigin = <Self as Config>::RuntimeOrigin, - > + IsType<<Self as frame_system::Config>::RuntimeCall>; /// Transaction extension/s for meta transactions. /// /// The extensions that must be present in every meta transaction. This generally includes @@ -138,7 +134,7 @@ pub mod pallet { /// The extension must provide an origin and the extension's weight must be zero. Use /// `pallet_meta_tx::WeightlessExtension` type when the `runtime-benchmarks` feature /// enabled. - type Extension: TransactionExtension<<Self as Config>::RuntimeCall>; + type Extension: TransactionExtension<<Self as frame_system::Config>::RuntimeCall>; } #[pallet::error] diff --git a/substrate/frame/meta-tx/src/mock.rs b/substrate/frame/meta-tx/src/mock.rs index 13b7fc40919..b3d66c7eeb1 100644 --- a/substrate/frame/meta-tx/src/mock.rs +++ b/substrate/frame/meta-tx/src/mock.rs @@ -87,9 +87,7 @@ mod tx_ext { impl Config for Runtime { type WeightInfo = (); - type RuntimeOrigin = RuntimeOrigin; type RuntimeEvent = RuntimeEvent; - type RuntimeCall = RuntimeCall; type Extension = MetaTxExtension; } -- GitLab