From d767d748d36363e4b048b105664de89650ebba71 Mon Sep 17 00:00:00 2001
From: Jegor Sidorenko <5252494+jsidorenko@users.noreply.github.com>
Date: Tue, 13 Jun 2023 15:46:19 +0200
Subject: [PATCH] Use Incrementable from frame_support::traits (#14367)

* Use Incrementable from frame_support::traits

* Chore
---
 substrate/frame/nfts/src/lib.rs    |  3 ++-
 substrate/frame/nfts/src/macros.rs | 19 -------------------
 substrate/frame/nfts/src/types.rs  |  6 ------
 3 files changed, 2 insertions(+), 26 deletions(-)

diff --git a/substrate/frame/nfts/src/lib.rs b/substrate/frame/nfts/src/lib.rs
index 052a017f670..f2812674a54 100644
--- a/substrate/frame/nfts/src/lib.rs
+++ b/substrate/frame/nfts/src/lib.rs
@@ -46,7 +46,8 @@ pub mod weights;
 
 use codec::{Decode, Encode};
 use frame_support::traits::{
-	tokens::Locker, BalanceStatus::Reserved, Currency, EnsureOriginWithArg, ReservableCurrency,
+	tokens::Locker, BalanceStatus::Reserved, Currency, EnsureOriginWithArg, Incrementable,
+	ReservableCurrency,
 };
 use frame_system::Config as SystemConfig;
 use sp_runtime::{
diff --git a/substrate/frame/nfts/src/macros.rs b/substrate/frame/nfts/src/macros.rs
index 8b0b8358dd7..db560cfbc33 100644
--- a/substrate/frame/nfts/src/macros.rs
+++ b/substrate/frame/nfts/src/macros.rs
@@ -15,25 +15,6 @@
 // See the License for the specific language governing permissions and
 // limitations under the License.
 
-macro_rules! impl_incrementable {
-	($($type:ty),+) => {
-		$(
-			impl Incrementable for $type {
-				fn increment(&self) -> Self {
-					let mut val = self.clone();
-					val.saturating_inc();
-					val
-				}
-
-				fn initial_value() -> Self {
-					0
-				}
-			}
-		)+
-	};
-}
-pub(crate) use impl_incrementable;
-
 macro_rules! impl_codec_bitflags {
 	($wrapper:ty, $size:ty, $bitflag_enum:ty) => {
 		impl MaxEncodedLen for $wrapper {
diff --git a/substrate/frame/nfts/src/types.rs b/substrate/frame/nfts/src/types.rs
index fe648792237..ab966f0d738 100644
--- a/substrate/frame/nfts/src/types.rs
+++ b/substrate/frame/nfts/src/types.rs
@@ -75,12 +75,6 @@ pub(super) type PreSignedAttributesOf<T, I = ()> = PreSignedAttributes<
 	<T as SystemConfig>::BlockNumber,
 >;
 
-pub trait Incrementable {
-	fn increment(&self) -> Self;
-	fn initial_value() -> Self;
-}
-impl_incrementable!(u8, u16, u32, u64, u128, i8, i16, i32, i64, i128);
-
 /// Information about a collection.
 #[derive(Clone, Encode, Decode, Eq, PartialEq, RuntimeDebug, TypeInfo, MaxEncodedLen)]
 pub struct CollectionDetails<AccountId, DepositBalance> {
-- 
GitLab