git.delta.rocks / unique-network / refs/commits / 45d19b2ecee4

difftreelog

refactor remove last anonimous structs

Trubnikov Sergey2022-12-21parent: #8ca834e.patch.diff
in: master

14 files changed

modifiedpallets/common/src/erc.rsdiffbeforeafterboth
35use crate::{35use crate::{
36 Pallet, CollectionHandle, Config, CollectionProperties, SelfWeightOf,36 Pallet, CollectionHandle, Config, CollectionProperties, SelfWeightOf,
37 eth::{37 eth::{CollectionLimitField as EvmCollectionLimits, self},
38 CollectionPermissions as EvmPermissions, CollectionLimitField as EvmCollectionLimits, self,
39 },
40 weights::WeightInfo,38 weights::WeightInfo,
41};39};
490488
491 /// Returns nesting for a collection489 /// Returns nesting for a collection
492 #[solidity(rename_selector = "collectionNestingRestrictedCollectionIds")]490 #[solidity(rename_selector = "collectionNestingRestrictedCollectionIds")]
493 fn collection_nesting_restricted_ids(&self) -> Result<(bool, Vec<uint256>)> {491 fn collection_nesting_restricted_ids(&self) -> Result<eth::CollectionNesting> {
494 let nesting = self.collection.permissions.nesting();492 let nesting = self.collection.permissions.nesting();
495493
496 Ok((494 Ok(eth::CollectionNesting::new(
497 nesting.token_owner,495 nesting.token_owner,
498 nesting496 nesting
499 .restricted497 .restricted
504 }502 }
505503
506 /// Returns permissions for a collection504 /// Returns permissions for a collection
507 fn collection_nesting_permissions(&self) -> Result<Vec<(EvmPermissions, bool)>> {505 fn collection_nesting_permissions(&self) -> Result<Vec<eth::CollectionNestingPermission>> {
508 let nesting = self.collection.permissions.nesting();506 let nesting = self.collection.permissions.nesting();
509 Ok(vec![507 Ok(vec![
510 (EvmPermissions::CollectionAdmin, nesting.collection_admin),508 eth::CollectionNestingPermission::new(
509 eth::CollectionPermissionField::CollectionAdmin,
510 nesting.collection_admin,
511 ),
511 (EvmPermissions::TokenOwner, nesting.token_owner),512 eth::CollectionNestingPermission::new(
513 eth::CollectionPermissionField::TokenOwner,
514 nesting.token_owner,
515 ),
512 ])516 ])
513 }517 }
modifiedpallets/common/src/eth.rsdiffbeforeafterboth
--- a/pallets/common/src/eth.rs
+++ b/pallets/common/src/eth.rs
@@ -306,7 +306,7 @@
 /// Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) fields as an enumeration.
 #[derive(Default, Debug, Clone, Copy, AbiCoder)]
 #[repr(u8)]
-pub enum CollectionPermissions {
+pub enum CollectionPermissionField {
 	/// Owner of token can nest tokens under it.
 	#[default]
 	TokenOwner,
@@ -431,3 +431,31 @@
 		Ok(perms)
 	}
 }
+
+/// Nested collections.
+#[derive(Debug, Default, AbiCoder)]
+pub struct CollectionNesting {
+	token_owner: bool,
+	ids: Vec<uint256>,
+}
+
+impl CollectionNesting {
+	/// Create [`CollectionNesting`].
+	pub fn new(token_owner: bool, ids: Vec<uint256>) -> Self {
+		Self { token_owner, ids }
+	}
+}
+
+/// Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) field.
+#[derive(Debug, Default, AbiCoder)]
+pub struct CollectionNestingPermission {
+	field: CollectionPermissionField,
+	value: bool,
+}
+
+impl CollectionNestingPermission {
+	/// Create [`CollectionNestingPermission`].
+	pub fn new(field: CollectionPermissionField, value: bool) -> Self {
+		Self { field, value }
+	}
+}
modifiedpallets/fungible/src/stubs/UniqueFungible.rawdiffbeforeafterboth

binary blob — no preview

modifiedpallets/fungible/src/stubs/UniqueFungible.soldiffbeforeafterboth
--- a/pallets/fungible/src/stubs/UniqueFungible.sol
+++ b/pallets/fungible/src/stubs/UniqueFungible.sol
@@ -257,19 +257,19 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() public view returns (Tuple33 memory) {
+	function collectionNestingRestrictedCollectionIds() public view returns (CollectionNesting memory) {
 		require(false, stub_error);
 		dummy;
-		return Tuple33(false, new uint256[](0));
+		return CollectionNesting(false, new uint256[](0));
 	}
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() public view returns (Tuple36[] memory) {
+	function collectionNestingPermissions() public view returns (CollectionNestingPermission[] memory) {
 		require(false, stub_error);
 		dummy;
-		return new Tuple36[](0);
+		return new CollectionNestingPermission[](0);
 	}
 
 	/// Set the collection access method.
@@ -443,24 +443,24 @@
 	uint256 sub;
 }
 
+/// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) field.
+struct CollectionNestingPermission {
+	CollectionPermissionField field;
+	bool value;
+}
+
 /// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) fields as an enumeration.
-enum CollectionPermissions {
+enum CollectionPermissionField {
 	/// @dev Owner of token can nest tokens under it.
 	TokenOwner,
 	/// @dev Admin of token collection can nest tokens under token.
 	CollectionAdmin
 }
 
-/// @dev anonymous struct
-struct Tuple36 {
-	CollectionPermissions field_0;
-	bool field_1;
-}
-
-/// @dev anonymous struct
-struct Tuple33 {
-	bool field_0;
-	uint256[] field_1;
+/// @dev Nested collections.
+struct CollectionNesting {
+	bool token_owner;
+	uint256[] ids;
 }
 
 /// @dev [`CollectionLimits`](up_data_structs::CollectionLimits) field representation for EVM.
@@ -469,6 +469,7 @@
 	OptionUint value;
 }
 
+/// @dev Ethereum representation of Optional value with uint256.
 struct OptionUint {
 	bool status;
 	uint256 value;
modifiedpallets/nonfungible/src/stubs/UniqueNFT.rawdiffbeforeafterboth

binary blob — no preview

modifiedpallets/nonfungible/src/stubs/UniqueNFT.soldiffbeforeafterboth
--- a/pallets/nonfungible/src/stubs/UniqueNFT.sol
+++ b/pallets/nonfungible/src/stubs/UniqueNFT.sol
@@ -401,19 +401,19 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() public view returns (Tuple45 memory) {
+	function collectionNestingRestrictedCollectionIds() public view returns (CollectionNesting memory) {
 		require(false, stub_error);
 		dummy;
-		return Tuple45(false, new uint256[](0));
+		return CollectionNesting(false, new uint256[](0));
 	}
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() public view returns (Tuple48[] memory) {
+	function collectionNestingPermissions() public view returns (CollectionNestingPermission[] memory) {
 		require(false, stub_error);
 		dummy;
-		return new Tuple48[](0);
+		return new CollectionNestingPermission[](0);
 	}
 
 	/// Set the collection access method.
@@ -587,24 +587,24 @@
 	uint256 sub;
 }
 
+/// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) field.
+struct CollectionNestingPermission {
+	CollectionPermissionField field;
+	bool value;
+}
+
 /// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) fields as an enumeration.
-enum CollectionPermissions {
+enum CollectionPermissionField {
 	/// @dev Owner of token can nest tokens under it.
 	TokenOwner,
 	/// @dev Admin of token collection can nest tokens under token.
 	CollectionAdmin
 }
 
-/// @dev anonymous struct
-struct Tuple48 {
-	CollectionPermissions field_0;
-	bool field_1;
-}
-
-/// @dev anonymous struct
-struct Tuple45 {
-	bool field_0;
-	uint256[] field_1;
+/// @dev Nested collections.
+struct CollectionNesting {
+	bool token_owner;
+	uint256[] ids;
 }
 
 /// @dev [`CollectionLimits`](up_data_structs::CollectionLimits) field representation for EVM.
@@ -613,6 +613,7 @@
 	OptionUint value;
 }
 
+/// @dev Ethereum representation of Optional value with uint256.
 struct OptionUint {
 	bool status;
 	uint256 value;
modifiedpallets/refungible/src/stubs/UniqueRefungible.rawdiffbeforeafterboth

binary blob — no preview

modifiedpallets/refungible/src/stubs/UniqueRefungible.soldiffbeforeafterboth
--- a/pallets/refungible/src/stubs/UniqueRefungible.sol
+++ b/pallets/refungible/src/stubs/UniqueRefungible.sol
@@ -401,19 +401,19 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() public view returns (Tuple44 memory) {
+	function collectionNestingRestrictedCollectionIds() public view returns (CollectionNesting memory) {
 		require(false, stub_error);
 		dummy;
-		return Tuple44(false, new uint256[](0));
+		return CollectionNesting(false, new uint256[](0));
 	}
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() public view returns (Tuple47[] memory) {
+	function collectionNestingPermissions() public view returns (CollectionNestingPermission[] memory) {
 		require(false, stub_error);
 		dummy;
-		return new Tuple47[](0);
+		return new CollectionNestingPermission[](0);
 	}
 
 	/// Set the collection access method.
@@ -587,24 +587,24 @@
 	uint256 sub;
 }
 
+/// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) field.
+struct CollectionNestingPermission {
+	CollectionPermissionField field;
+	bool value;
+}
+
 /// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) fields as an enumeration.
-enum CollectionPermissions {
+enum CollectionPermissionField {
 	/// @dev Owner of token can nest tokens under it.
 	TokenOwner,
 	/// @dev Admin of token collection can nest tokens under token.
 	CollectionAdmin
 }
 
-/// @dev anonymous struct
-struct Tuple47 {
-	CollectionPermissions field_0;
-	bool field_1;
-}
-
-/// @dev anonymous struct
-struct Tuple44 {
-	bool field_0;
-	uint256[] field_1;
+/// @dev Nested collections.
+struct CollectionNesting {
+	bool token_owner;
+	uint256[] ids;
 }
 
 /// @dev [`CollectionLimits`](up_data_structs::CollectionLimits) field representation for EVM.
@@ -613,6 +613,7 @@
 	OptionUint value;
 }
 
+/// @dev Ethereum representation of Optional value with uint256.
 struct OptionUint {
 	bool status;
 	uint256 value;
modifiedtests/src/eth/abi/fungible.jsondiffbeforeafterboth
--- a/tests/src/eth/abi/fungible.json
+++ b/tests/src/eth/abi/fungible.json
@@ -242,13 +242,13 @@
       {
         "components": [
           {
-            "internalType": "enum CollectionPermissions",
-            "name": "field_0",
+            "internalType": "enum CollectionPermissionField",
+            "name": "field",
             "type": "uint8"
           },
-          { "internalType": "bool", "name": "field_1", "type": "bool" }
+          { "internalType": "bool", "name": "value", "type": "bool" }
         ],
-        "internalType": "struct Tuple36[]",
+        "internalType": "struct CollectionNestingPermission[]",
         "name": "",
         "type": "tuple[]"
       }
@@ -262,14 +262,10 @@
     "outputs": [
       {
         "components": [
-          { "internalType": "bool", "name": "field_0", "type": "bool" },
-          {
-            "internalType": "uint256[]",
-            "name": "field_1",
-            "type": "uint256[]"
-          }
+          { "internalType": "bool", "name": "token_owner", "type": "bool" },
+          { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }
         ],
-        "internalType": "struct Tuple33",
+        "internalType": "struct CollectionNesting",
         "name": "",
         "type": "tuple"
       }
modifiedtests/src/eth/abi/nonFungible.jsondiffbeforeafterboth
--- a/tests/src/eth/abi/nonFungible.json
+++ b/tests/src/eth/abi/nonFungible.json
@@ -272,13 +272,13 @@
       {
         "components": [
           {
-            "internalType": "enum CollectionPermissions",
-            "name": "field_0",
+            "internalType": "enum CollectionPermissionField",
+            "name": "field",
             "type": "uint8"
           },
-          { "internalType": "bool", "name": "field_1", "type": "bool" }
+          { "internalType": "bool", "name": "value", "type": "bool" }
         ],
-        "internalType": "struct Tuple48[]",
+        "internalType": "struct CollectionNestingPermission[]",
         "name": "",
         "type": "tuple[]"
       }
@@ -292,14 +292,10 @@
     "outputs": [
       {
         "components": [
-          { "internalType": "bool", "name": "field_0", "type": "bool" },
-          {
-            "internalType": "uint256[]",
-            "name": "field_1",
-            "type": "uint256[]"
-          }
+          { "internalType": "bool", "name": "token_owner", "type": "bool" },
+          { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }
         ],
-        "internalType": "struct Tuple45",
+        "internalType": "struct CollectionNesting",
         "name": "",
         "type": "tuple"
       }
modifiedtests/src/eth/abi/reFungible.jsondiffbeforeafterboth
--- a/tests/src/eth/abi/reFungible.json
+++ b/tests/src/eth/abi/reFungible.json
@@ -254,13 +254,13 @@
       {
         "components": [
           {
-            "internalType": "enum CollectionPermissions",
-            "name": "field_0",
+            "internalType": "enum CollectionPermissionField",
+            "name": "field",
             "type": "uint8"
           },
-          { "internalType": "bool", "name": "field_1", "type": "bool" }
+          { "internalType": "bool", "name": "value", "type": "bool" }
         ],
-        "internalType": "struct Tuple47[]",
+        "internalType": "struct CollectionNestingPermission[]",
         "name": "",
         "type": "tuple[]"
       }
@@ -274,14 +274,10 @@
     "outputs": [
       {
         "components": [
-          { "internalType": "bool", "name": "field_0", "type": "bool" },
-          {
-            "internalType": "uint256[]",
-            "name": "field_1",
-            "type": "uint256[]"
-          }
+          { "internalType": "bool", "name": "token_owner", "type": "bool" },
+          { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }
         ],
-        "internalType": "struct Tuple44",
+        "internalType": "struct CollectionNesting",
         "name": "",
         "type": "tuple"
       }
modifiedtests/src/eth/api/UniqueFungible.soldiffbeforeafterboth
--- a/tests/src/eth/api/UniqueFungible.sol
+++ b/tests/src/eth/api/UniqueFungible.sol
@@ -166,12 +166,12 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() external view returns (Tuple28 memory);
+	function collectionNestingRestrictedCollectionIds() external view returns (CollectionNesting memory);
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() external view returns (Tuple31[] memory);
+	function collectionNestingPermissions() external view returns (CollectionNestingPermission[] memory);
 
 	/// Set the collection access method.
 	/// @param mode Access mode
@@ -285,24 +285,24 @@
 	uint256 sub;
 }
 
-/// @dev anonymous struct
-struct Tuple31 {
-	CollectionPermissions field_0;
-	bool field_1;
+/// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) field.
+struct CollectionNestingPermission {
+	CollectionPermissionField field;
+	bool value;
 }
 
 /// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) fields as an enumeration.
-enum CollectionPermissions {
+enum CollectionPermissionField {
 	/// @dev Owner of token can nest tokens under it.
 	TokenOwner,
 	/// @dev Admin of token collection can nest tokens under token.
 	CollectionAdmin
 }
 
-/// @dev anonymous struct
-struct Tuple28 {
-	bool field_0;
-	uint256[] field_1;
+/// @dev Nested collections.
+struct CollectionNesting {
+	bool token_owner;
+	uint256[] ids;
 }
 
 /// @dev [`CollectionLimits`](up_data_structs::CollectionLimits) field representation for EVM.
@@ -311,6 +311,7 @@
 	OptionUint value;
 }
 
+/// @dev Ethereum representation of Optional value with uint256.
 struct OptionUint {
 	bool status;
 	uint256 value;
modifiedtests/src/eth/api/UniqueNFT.soldiffbeforeafterboth
--- a/tests/src/eth/api/UniqueNFT.sol
+++ b/tests/src/eth/api/UniqueNFT.sol
@@ -268,12 +268,12 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() external view returns (Tuple38 memory);
+	function collectionNestingRestrictedCollectionIds() external view returns (CollectionNesting memory);
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() external view returns (Tuple41[] memory);
+	function collectionNestingPermissions() external view returns (CollectionNestingPermission[] memory);
 
 	/// Set the collection access method.
 	/// @param mode Access mode
@@ -387,24 +387,24 @@
 	uint256 sub;
 }
 
-/// @dev anonymous struct
-struct Tuple41 {
-	CollectionPermissions field_0;
-	bool field_1;
+/// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) field.
+struct CollectionNestingPermission {
+	CollectionPermissionField field;
+	bool value;
 }
 
 /// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) fields as an enumeration.
-enum CollectionPermissions {
+enum CollectionPermissionField {
 	/// @dev Owner of token can nest tokens under it.
 	TokenOwner,
 	/// @dev Admin of token collection can nest tokens under token.
 	CollectionAdmin
 }
 
-/// @dev anonymous struct
-struct Tuple38 {
-	bool field_0;
-	uint256[] field_1;
+/// @dev Nested collections.
+struct CollectionNesting {
+	bool token_owner;
+	uint256[] ids;
 }
 
 /// @dev [`CollectionLimits`](up_data_structs::CollectionLimits) field representation for EVM.
@@ -413,6 +413,7 @@
 	OptionUint value;
 }
 
+/// @dev Ethereum representation of Optional value with uint256.
 struct OptionUint {
 	bool status;
 	uint256 value;
modifiedtests/src/eth/api/UniqueRefungible.soldiffbeforeafterboth
--- a/tests/src/eth/api/UniqueRefungible.sol
+++ b/tests/src/eth/api/UniqueRefungible.sol
@@ -268,12 +268,12 @@
 	/// Returns nesting for a collection
 	/// @dev EVM selector for this function is: 0x22d25bfe,
 	///  or in textual repr: collectionNestingRestrictedCollectionIds()
-	function collectionNestingRestrictedCollectionIds() external view returns (Tuple37 memory);
+	function collectionNestingRestrictedCollectionIds() external view returns (CollectionNesting memory);
 
 	/// Returns permissions for a collection
 	/// @dev EVM selector for this function is: 0x5b2eaf4b,
 	///  or in textual repr: collectionNestingPermissions()
-	function collectionNestingPermissions() external view returns (Tuple40[] memory);
+	function collectionNestingPermissions() external view returns (CollectionNestingPermission[] memory);
 
 	/// Set the collection access method.
 	/// @param mode Access mode
@@ -387,24 +387,24 @@
 	uint256 sub;
 }
 
-/// @dev anonymous struct
-struct Tuple40 {
-	CollectionPermissions field_0;
-	bool field_1;
+/// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) field.
+struct CollectionNestingPermission {
+	CollectionPermissionField field;
+	bool value;
 }
 
 /// @dev Ethereum representation of `NestingPermissions` (see [`up_data_structs::NestingPermissions`]) fields as an enumeration.
-enum CollectionPermissions {
+enum CollectionPermissionField {
 	/// @dev Owner of token can nest tokens under it.
 	TokenOwner,
 	/// @dev Admin of token collection can nest tokens under token.
 	CollectionAdmin
 }
 
-/// @dev anonymous struct
-struct Tuple37 {
-	bool field_0;
-	uint256[] field_1;
+/// @dev Nested collections.
+struct CollectionNesting {
+	bool token_owner;
+	uint256[] ids;
 }
 
 /// @dev [`CollectionLimits`](up_data_structs::CollectionLimits) field representation for EVM.
@@ -413,6 +413,7 @@
 	OptionUint value;
 }
 
+/// @dev Ethereum representation of Optional value with uint256.
 struct OptionUint {
 	bool status;
 	uint256 value;