mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 15:47:58 +00:00
Make hooks and call attributes optional in pallet macro (#8853)
* Make #[pallet::hooks] optional * Make #[pallet::call] optional * Remove unused imports * Update UI test expectations * Update UI test expectations * Remove unnecessary HooksDef::empty method * Remove unnecessary CallDef::empty method * Clarify what would happen when no call or hooks are specified in a pallet
This commit is contained in:
@@ -1393,7 +1393,7 @@ pub mod pallet_prelude {
|
||||
/// [`traits::StorageInfoTrait`] for each storage in the implementation of
|
||||
/// [`traits::StorageInfoTrait`] for the pallet.
|
||||
///
|
||||
/// # Hooks: `#[pallet::hooks]` mandatory
|
||||
/// # Hooks: `#[pallet::hooks]` optional
|
||||
///
|
||||
/// Implementation of `Hooks` on `Pallet` allowing to define some specific pallet logic.
|
||||
///
|
||||
@@ -1407,6 +1407,13 @@ pub mod pallet_prelude {
|
||||
/// `Hooks<BlockNumberFor<T>>` (they are defined in preludes), for the type `Pallet<T>`
|
||||
/// and with an optional where clause.
|
||||
///
|
||||
/// If no `#[pallet::hooks]` exists, then a default implementation corresponding to the following
|
||||
/// code is automatically generated:
|
||||
/// ```ignore
|
||||
/// #[pallet::hooks]
|
||||
/// impl<T: Config> Hooks<BlockNumberFor<T>> for Pallet<T> {}
|
||||
/// ```
|
||||
///
|
||||
/// ### Macro expansion:
|
||||
///
|
||||
/// The macro implements the traits `OnInitialize`, `OnIdle`, `OnFinalize`, `OnRuntimeUpgrade`,
|
||||
@@ -1418,7 +1425,7 @@ pub mod pallet_prelude {
|
||||
/// NOTE: The macro also adds some tracing logic when implementing the above traits. The following
|
||||
/// hooks emit traces: `on_initialize`, `on_finalize` and `on_runtime_upgrade`.
|
||||
///
|
||||
/// # Call: `#[pallet::call]` mandatory
|
||||
/// # Call: `#[pallet::call]` optional
|
||||
///
|
||||
/// Implementation of pallet dispatchables.
|
||||
///
|
||||
@@ -1450,6 +1457,13 @@ pub mod pallet_prelude {
|
||||
/// All arguments must implement `Debug`, `PartialEq`, `Eq`, `Decode`, `Encode`, `Clone`. For ease
|
||||
/// of use, bound the trait `Member` available in frame_support::pallet_prelude.
|
||||
///
|
||||
/// If no `#[pallet::call]` exists, then a default implementation corresponding to the following
|
||||
/// code is automatically generated:
|
||||
/// ```ignore
|
||||
/// #[pallet::call]
|
||||
/// impl<T: Config> Pallet<T> {}
|
||||
/// ```
|
||||
///
|
||||
/// **WARNING**: modifying dispatchables, changing their order, removing some must be done with
|
||||
/// care. Indeed this will change the outer runtime call type (which is an enum with one variant
|
||||
/// per pallet), this outer runtime call can be stored on-chain (e.g. in pallet-scheduler).
|
||||
|
||||
Reference in New Issue
Block a user