difftreelog
Merge pull request #598 from UniqueNetwork/fix/rename_method_to_collectionSponsor
in: master
24 files changed
pallets/common/src/erc.rsdiffbeforeafterboth--- a/pallets/common/src/erc.rs
+++ b/pallets/common/src/erc.rs
@@ -194,7 +194,7 @@
/// Get current sponsor.
///
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- fn get_collection_sponsor(&self) -> Result<(address, uint256)> {
+ fn collection_sponsor(&self) -> Result<(address, uint256)> {
let sponsor = match self.collection.sponsorship.sponsor() {
Some(sponsor) => sponsor,
None => return Ok(Default::default()),
pallets/evm-contract-helpers/src/eth.rsdiffbeforeafterboth--- a/pallets/evm-contract-helpers/src/eth.rs
+++ b/pallets/evm-contract-helpers/src/eth.rs
@@ -169,7 +169,7 @@
///
/// @param contractAddress The contract for which a sponsor is requested.
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- fn get_sponsor(&self, contract_address: address) -> Result<(address, uint256)> {
+ fn sponsor(&self, contract_address: address) -> Result<(address, uint256)> {
let sponsor =
Pallet::<T>::get_sponsor(contract_address).ok_or("Contract has no sponsor")?;
Ok(pallet_common::eth::convert_cross_account_to_tuple::<T>(
@@ -220,7 +220,7 @@
/// Get current contract sponsoring rate limit
/// @param contractAddress Contract to get sponsoring rate limit of
/// @return uint32 Amount of blocks between two sponsored transactions
- fn get_sponsoring_rate_limit(&self, contract_address: address) -> Result<uint32> {
+ fn sponsoring_rate_limit(&self, contract_address: address) -> Result<uint32> {
self.recorder().consume_sload()?;
Ok(<SponsoringRateLimit<T>>::get(contract_address)
@@ -273,7 +273,7 @@
/// @param contractAddress Contract to get sponsoring fee limit of
/// @return uint256 Maximum amount of fee that could be spent by single
/// transaction
- fn get_sponsoring_fee_limit(&self, contract_address: address) -> Result<uint256> {
+ fn sponsoring_fee_limit(&self, contract_address: address) -> Result<uint256> {
self.recorder().consume_sload()?;
Ok(get_sponsoring_fee_limit::<T>(contract_address))
pallets/evm-contract-helpers/src/stubs/ContractHelpers.rawdiffbeforeafterbothbinary blob — no preview
pallets/evm-contract-helpers/src/stubs/ContractHelpers.soldiffbeforeafterboth--- a/pallets/evm-contract-helpers/src/stubs/ContractHelpers.sol
+++ b/pallets/evm-contract-helpers/src/stubs/ContractHelpers.sol
@@ -10,11 +10,7 @@
}
contract ERC165 is Dummy {
- function supportsInterface(bytes4 interfaceID)
- external
- view
- returns (bool)
- {
+ function supportsInterface(bytes4 interfaceID) external view returns (bool) {
require(false, stub_error);
interfaceID;
return true;
@@ -24,15 +20,12 @@
/// @dev inlined interface
contract ContractHelpersEvents {
event ContractSponsorSet(address indexed contractAddress, address sponsor);
- event ContractSponsorshipConfirmed(
- address indexed contractAddress,
- address sponsor
- );
+ event ContractSponsorshipConfirmed(address indexed contractAddress, address sponsor);
event ContractSponsorRemoved(address indexed contractAddress);
}
/// @title Magic contract, which allows users to reconfigure other contracts
-/// @dev the ERC-165 identifier for this interface is 0x172cb4fb
+/// @dev the ERC-165 identifier for this interface is 0x30afad04
contract ContractHelpers is Dummy, ERC165, ContractHelpersEvents {
/// Get user, which deployed specified contract
/// @dev May return zero address in case if contract is deployed
@@ -43,11 +36,7 @@
/// @return address Owner of contract
/// @dev EVM selector for this function is: 0x5152b14c,
/// or in textual repr: contractOwner(address)
- function contractOwner(address contractAddress)
- public
- view
- returns (address)
- {
+ function contractOwner(address contractAddress) public view returns (address) {
require(false, stub_error);
contractAddress;
dummy;
@@ -105,13 +94,9 @@
///
/// @param contractAddress The contract for which a sponsor is requested.
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- /// @dev EVM selector for this function is: 0x743fc745,
- /// or in textual repr: getSponsor(address)
- function getSponsor(address contractAddress)
- public
- view
- returns (Tuple0 memory)
- {
+ /// @dev EVM selector for this function is: 0x766c4f37,
+ /// or in textual repr: sponsor(address)
+ function sponsor(address contractAddress) public view returns (Tuple0 memory) {
require(false, stub_error);
contractAddress;
dummy;
@@ -137,11 +122,7 @@
/// @return **true** if contract has pending sponsor.
/// @dev EVM selector for this function is: 0x39b9b242,
/// or in textual repr: hasPendingSponsor(address)
- function hasPendingSponsor(address contractAddress)
- public
- view
- returns (bool)
- {
+ function hasPendingSponsor(address contractAddress) public view returns (bool) {
require(false, stub_error);
contractAddress;
dummy;
@@ -150,11 +131,7 @@
/// @dev EVM selector for this function is: 0x6027dc61,
/// or in textual repr: sponsoringEnabled(address)
- function sponsoringEnabled(address contractAddress)
- public
- view
- returns (bool)
- {
+ function sponsoringEnabled(address contractAddress) public view returns (bool) {
require(false, stub_error);
contractAddress;
dummy;
@@ -173,13 +150,9 @@
/// Get current contract sponsoring rate limit
/// @param contractAddress Contract to get sponsoring rate limit of
/// @return uint32 Amount of blocks between two sponsored transactions
- /// @dev EVM selector for this function is: 0x610cfabd,
- /// or in textual repr: getSponsoringRateLimit(address)
- function getSponsoringRateLimit(address contractAddress)
- public
- view
- returns (uint32)
- {
+ /// @dev EVM selector for this function is: 0xf29694d8,
+ /// or in textual repr: sponsoringRateLimit(address)
+ function sponsoringRateLimit(address contractAddress) public view returns (uint32) {
require(false, stub_error);
contractAddress;
dummy;
@@ -194,9 +167,7 @@
/// @dev Only contract owner can change this setting
/// @dev EVM selector for this function is: 0x77b6c908,
/// or in textual repr: setSponsoringRateLimit(address,uint32)
- function setSponsoringRateLimit(address contractAddress, uint32 rateLimit)
- public
- {
+ function setSponsoringRateLimit(address contractAddress, uint32 rateLimit) public {
require(false, stub_error);
contractAddress;
rateLimit;
@@ -211,9 +182,7 @@
/// @dev Only contract owner can change this setting
/// @dev EVM selector for this function is: 0x03aed665,
/// or in textual repr: setSponsoringFeeLimit(address,uint256)
- function setSponsoringFeeLimit(address contractAddress, uint256 feeLimit)
- public
- {
+ function setSponsoringFeeLimit(address contractAddress, uint256 feeLimit) public {
require(false, stub_error);
contractAddress;
feeLimit;
@@ -224,13 +193,9 @@
/// @param contractAddress Contract to get sponsoring fee limit of
/// @return uint256 Maximum amount of fee that could be spent by single
/// transaction
- /// @dev EVM selector for this function is: 0xc3fdc9ee,
- /// or in textual repr: getSponsoringFeeLimit(address)
- function getSponsoringFeeLimit(address contractAddress)
- public
- view
- returns (uint256)
- {
+ /// @dev EVM selector for this function is: 0x75b73606,
+ /// or in textual repr: sponsoringFeeLimit(address)
+ function sponsoringFeeLimit(address contractAddress) public view returns (uint256) {
require(false, stub_error);
contractAddress;
dummy;
@@ -244,11 +209,7 @@
/// @return bool Is specified users exists in contract allowlist
/// @dev EVM selector for this function is: 0x5c658165,
/// or in textual repr: allowed(address,address)
- function allowed(address contractAddress, address user)
- public
- view
- returns (bool)
- {
+ function allowed(address contractAddress, address user) public view returns (bool) {
require(false, stub_error);
contractAddress;
user;
@@ -284,11 +245,7 @@
/// @return bool Is specified contract has allowlist access enabled
/// @dev EVM selector for this function is: 0xc772ef6c,
/// or in textual repr: allowlistEnabled(address)
- function allowlistEnabled(address contractAddress)
- public
- view
- returns (bool)
- {
+ function allowlistEnabled(address contractAddress) public view returns (bool) {
require(false, stub_error);
contractAddress;
dummy;
pallets/fungible/src/stubs/UniqueFungible.rawdiffbeforeafterbothbinary blob — no preview
pallets/fungible/src/stubs/UniqueFungible.soldiffbeforeafterboth--- a/pallets/fungible/src/stubs/UniqueFungible.sol
+++ b/pallets/fungible/src/stubs/UniqueFungible.sol
@@ -10,11 +10,7 @@
}
contract ERC165 is Dummy {
- function supportsInterface(bytes4 interfaceID)
- external
- view
- returns (bool)
- {
+ function supportsInterface(bytes4 interfaceID) external view returns (bool) {
require(false, stub_error);
interfaceID;
return true;
@@ -22,7 +18,7 @@
}
/// @title A contract that allows you to work with collections.
-/// @dev the ERC-165 identifier for this interface is 0x9f70d4e0
+/// @dev the ERC-165 identifier for this interface is 0x47dbc105
contract Collection is Dummy, ERC165 {
/// Set collection property.
///
@@ -30,9 +26,7 @@
/// @param value Propery value.
/// @dev EVM selector for this function is: 0x2f073f66,
/// or in textual repr: setCollectionProperty(string,bytes)
- function setCollectionProperty(string memory key, bytes memory value)
- public
- {
+ function setCollectionProperty(string memory key, bytes memory value) public {
require(false, stub_error);
key;
value;
@@ -58,11 +52,7 @@
/// @return bytes The property corresponding to the key.
/// @dev EVM selector for this function is: 0xcf24fd6d,
/// or in textual repr: collectionProperty(string)
- function collectionProperty(string memory key)
- public
- view
- returns (bytes memory)
- {
+ function collectionProperty(string memory key) public view returns (bytes memory) {
require(false, stub_error);
key;
dummy;
@@ -95,6 +85,7 @@
dummy = 0;
}
+ /// Whether there is a pending sponsor.
/// @dev EVM selector for this function is: 0x058ac185,
/// or in textual repr: hasCollectionPendingSponsor()
function hasCollectionPendingSponsor() public view returns (bool) {
@@ -124,9 +115,9 @@
/// Get current sponsor.
///
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- /// @dev EVM selector for this function is: 0xb66bbc14,
- /// or in textual repr: getCollectionSponsor()
- function getCollectionSponsor() public view returns (Tuple6 memory) {
+ /// @dev EVM selector for this function is: 0x6ec0a9f1,
+ /// or in textual repr: collectionSponsor()
+ function collectionSponsor() public view returns (Tuple6 memory) {
require(false, stub_error);
dummy;
return Tuple6(0x0000000000000000000000000000000000000000, 0);
@@ -234,9 +225,7 @@
/// @param collections Addresses of collections that will be available for nesting.
/// @dev EVM selector for this function is: 0x64872396,
/// or in textual repr: setCollectionNesting(bool,address[])
- function setCollectionNesting(bool enable, address[] memory collections)
- public
- {
+ function setCollectionNesting(bool enable, address[] memory collections) public {
require(false, stub_error);
enable;
collections;
@@ -353,9 +342,9 @@
/// @return `Fungible` or `NFT` or `ReFungible`
/// @dev EVM selector for this function is: 0xd34b55b8,
/// or in textual repr: uniqueCollectionType()
- function uniqueCollectionType() public returns (string memory) {
+ function uniqueCollectionType() public view returns (string memory) {
require(false, stub_error);
- dummy = 0;
+ dummy;
return "";
}
@@ -450,11 +439,7 @@
/// @dev inlined interface
contract ERC20Events {
event Transfer(address indexed from, address indexed to, uint256 value);
- event Approval(
- address indexed owner,
- address indexed spender,
- uint256 value
- );
+ event Approval(address indexed owner, address indexed spender, uint256 value);
}
/// @dev the ERC-165 identifier for this interface is 0x942e8b22
@@ -537,11 +522,7 @@
/// @dev EVM selector for this function is: 0xdd62ed3e,
/// or in textual repr: allowance(address,address)
- function allowance(address owner, address spender)
- public
- view
- returns (uint256)
- {
+ function allowance(address owner, address spender) public view returns (uint256) {
require(false, stub_error);
owner;
spender;
@@ -550,11 +531,4 @@
}
}
-contract UniqueFungible is
- Dummy,
- ERC165,
- ERC20,
- ERC20Mintable,
- ERC20UniqueExtensions,
- Collection
-{}
+contract UniqueFungible is Dummy, ERC165, ERC20, ERC20Mintable, ERC20UniqueExtensions, Collection {}
pallets/nonfungible/src/stubs/UniqueNFT.rawdiffbeforeafterbothbinary blob — no preview
pallets/nonfungible/src/stubs/UniqueNFT.soldiffbeforeafterboth--- a/pallets/nonfungible/src/stubs/UniqueNFT.sol
+++ b/pallets/nonfungible/src/stubs/UniqueNFT.sol
@@ -10,11 +10,7 @@
}
contract ERC165 is Dummy {
- function supportsInterface(bytes4 interfaceID)
- external
- view
- returns (bool)
- {
+ function supportsInterface(bytes4 interfaceID) external view returns (bool) {
require(false, stub_error);
interfaceID;
return true;
@@ -85,11 +81,7 @@
/// @return Property value bytes
/// @dev EVM selector for this function is: 0x7228c327,
/// or in textual repr: property(uint256,string)
- function property(uint256 tokenId, string memory key)
- public
- view
- returns (bytes memory)
- {
+ function property(uint256 tokenId, string memory key) public view returns (bytes memory) {
require(false, stub_error);
tokenId;
key;
@@ -99,7 +91,7 @@
}
/// @title A contract that allows you to work with collections.
-/// @dev the ERC-165 identifier for this interface is 0x9f70d4e0
+/// @dev the ERC-165 identifier for this interface is 0x47dbc105
contract Collection is Dummy, ERC165 {
/// Set collection property.
///
@@ -107,9 +99,7 @@
/// @param value Propery value.
/// @dev EVM selector for this function is: 0x2f073f66,
/// or in textual repr: setCollectionProperty(string,bytes)
- function setCollectionProperty(string memory key, bytes memory value)
- public
- {
+ function setCollectionProperty(string memory key, bytes memory value) public {
require(false, stub_error);
key;
value;
@@ -135,11 +125,7 @@
/// @return bytes The property corresponding to the key.
/// @dev EVM selector for this function is: 0xcf24fd6d,
/// or in textual repr: collectionProperty(string)
- function collectionProperty(string memory key)
- public
- view
- returns (bytes memory)
- {
+ function collectionProperty(string memory key) public view returns (bytes memory) {
require(false, stub_error);
key;
dummy;
@@ -172,6 +158,7 @@
dummy = 0;
}
+ /// Whether there is a pending sponsor.
/// @dev EVM selector for this function is: 0x058ac185,
/// or in textual repr: hasCollectionPendingSponsor()
function hasCollectionPendingSponsor() public view returns (bool) {
@@ -201,9 +188,9 @@
/// Get current sponsor.
///
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- /// @dev EVM selector for this function is: 0xb66bbc14,
- /// or in textual repr: getCollectionSponsor()
- function getCollectionSponsor() public view returns (Tuple17 memory) {
+ /// @dev EVM selector for this function is: 0x6ec0a9f1,
+ /// or in textual repr: collectionSponsor()
+ function collectionSponsor() public view returns (Tuple17 memory) {
require(false, stub_error);
dummy;
return Tuple17(0x0000000000000000000000000000000000000000, 0);
@@ -311,9 +298,7 @@
/// @param collections Addresses of collections that will be available for nesting.
/// @dev EVM selector for this function is: 0x64872396,
/// or in textual repr: setCollectionNesting(bool,address[])
- function setCollectionNesting(bool enable, address[] memory collections)
- public
- {
+ function setCollectionNesting(bool enable, address[] memory collections) public {
require(false, stub_error);
enable;
collections;
@@ -430,9 +415,9 @@
/// @return `Fungible` or `NFT` or `ReFungible`
/// @dev EVM selector for this function is: 0xd34b55b8,
/// or in textual repr: uniqueCollectionType()
- function uniqueCollectionType() public returns (string memory) {
+ function uniqueCollectionType() public view returns (string memory) {
require(false, stub_error);
- dummy = 0;
+ dummy;
return "";
}
@@ -605,10 +590,7 @@
/// @param tokenIds IDs of the minted NFTs
/// @dev EVM selector for this function is: 0x44a9945e,
/// or in textual repr: mintBulk(address,uint256[])
- function mintBulk(address to, uint256[] memory tokenIds)
- public
- returns (bool)
- {
+ function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) {
require(false, stub_error);
to;
tokenIds;
@@ -623,10 +605,7 @@
/// @param tokens array of pairs of token ID and token URI for minted tokens
/// @dev EVM selector for this function is: 0x36543006,
/// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])
- function mintBulkWithTokenURI(address to, Tuple8[] memory tokens)
- public
- returns (bool)
- {
+ function mintBulkWithTokenURI(address to, Tuple8[] memory tokens) public returns (bool) {
require(false, stub_error);
to;
tokens;
@@ -661,11 +640,7 @@
/// @dev Not implemented
/// @dev EVM selector for this function is: 0x2f745c59,
/// or in textual repr: tokenOfOwnerByIndex(address,uint256)
- function tokenOfOwnerByIndex(address owner, uint256 index)
- public
- view
- returns (uint256)
- {
+ function tokenOfOwnerByIndex(address owner, uint256 index) public view returns (uint256) {
require(false, stub_error);
owner;
index;
@@ -728,21 +703,9 @@
/// @dev inlined interface
contract ERC721Events {
- event Transfer(
- address indexed from,
- address indexed to,
- uint256 indexed tokenId
- );
- event Approval(
- address indexed owner,
- address indexed approved,
- uint256 indexed tokenId
- );
- event ApprovalForAll(
- address indexed owner,
- address indexed operator,
- bool approved
- );
+ event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
+ event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
+ event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
}
/// @title ERC-721 Non-Fungible Token Standard
@@ -870,11 +833,7 @@
/// @dev Not implemented
/// @dev EVM selector for this function is: 0xe985e9c5,
/// or in textual repr: isApprovedForAll(address,address)
- function isApprovedForAll(address owner, address operator)
- public
- view
- returns (address)
- {
+ function isApprovedForAll(address owner, address operator) public view returns (address) {
require(false, stub_error);
owner;
operator;
pallets/refungible/src/stubs/UniqueRefungible.rawdiffbeforeafterbothbinary blob — no preview
pallets/refungible/src/stubs/UniqueRefungible.soldiffbeforeafterboth1// SPDX-License-Identifier: OTHER2// This code is automatically generated34pragma solidity >=0.8.0 <0.9.0;56/// @dev common stubs holder7contract Dummy {8 uint8 dummy;9 string stub_error = "this contract is implemented in native";10}1112contract ERC165 is Dummy {13 function supportsInterface(bytes4 interfaceID)14 external15 view16 returns (bool)17 {18 require(false, stub_error);19 interfaceID;20 return true;21 }22}2324/// @title A contract that allows to set and delete token properties and change token property permissions.25/// @dev the ERC-165 identifier for this interface is 0x4136937726contract TokenProperties is Dummy, ERC165 {27 /// @notice Set permissions for token property.28 /// @dev Throws error if `msg.sender` is not admin or owner of the collection.29 /// @param key Property key.30 /// @param isMutable Permission to mutate property.31 /// @param collectionAdmin Permission to mutate property by collection admin if property is mutable.32 /// @param tokenOwner Permission to mutate property by token owner if property is mutable.33 /// @dev EVM selector for this function is: 0x222d97fa,34 /// or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)35 function setTokenPropertyPermission(36 string memory key,37 bool isMutable,38 bool collectionAdmin,39 bool tokenOwner40 ) public {41 require(false, stub_error);42 key;43 isMutable;44 collectionAdmin;45 tokenOwner;46 dummy = 0;47 }4849 /// @notice Set token property value.50 /// @dev Throws error if `msg.sender` has no permission to edit the property.51 /// @param tokenId ID of the token.52 /// @param key Property key.53 /// @param value Property value.54 /// @dev EVM selector for this function is: 0x1752d67b,55 /// or in textual repr: setProperty(uint256,string,bytes)56 function setProperty(57 uint256 tokenId,58 string memory key,59 bytes memory value60 ) public {61 require(false, stub_error);62 tokenId;63 key;64 value;65 dummy = 0;66 }6768 /// @notice Delete token property value.69 /// @dev Throws error if `msg.sender` has no permission to edit the property.70 /// @param tokenId ID of the token.71 /// @param key Property key.72 /// @dev EVM selector for this function is: 0x066111d1,73 /// or in textual repr: deleteProperty(uint256,string)74 function deleteProperty(uint256 tokenId, string memory key) public {75 require(false, stub_error);76 tokenId;77 key;78 dummy = 0;79 }8081 /// @notice Get token property value.82 /// @dev Throws error if key not found83 /// @param tokenId ID of the token.84 /// @param key Property key.85 /// @return Property value bytes86 /// @dev EVM selector for this function is: 0x7228c327,87 /// or in textual repr: property(uint256,string)88 function property(uint256 tokenId, string memory key)89 public90 view91 returns (bytes memory)92 {93 require(false, stub_error);94 tokenId;95 key;96 dummy;97 return hex"";98 }99}100101/// @title A contract that allows you to work with collections.102/// @dev the ERC-165 identifier for this interface is 0x9f70d4e0103contract Collection is Dummy, ERC165 {104 /// Set collection property.105 ///106 /// @param key Property key.107 /// @param value Propery value.108 /// @dev EVM selector for this function is: 0x2f073f66,109 /// or in textual repr: setCollectionProperty(string,bytes)110 function setCollectionProperty(string memory key, bytes memory value)111 public112 {113 require(false, stub_error);114 key;115 value;116 dummy = 0;117 }118119 /// Delete collection property.120 ///121 /// @param key Property key.122 /// @dev EVM selector for this function is: 0x7b7debce,123 /// or in textual repr: deleteCollectionProperty(string)124 function deleteCollectionProperty(string memory key) public {125 require(false, stub_error);126 key;127 dummy = 0;128 }129130 /// Get collection property.131 ///132 /// @dev Throws error if key not found.133 ///134 /// @param key Property key.135 /// @return bytes The property corresponding to the key.136 /// @dev EVM selector for this function is: 0xcf24fd6d,137 /// or in textual repr: collectionProperty(string)138 function collectionProperty(string memory key)139 public140 view141 returns (bytes memory)142 {143 require(false, stub_error);144 key;145 dummy;146 return hex"";147 }148149 /// Set the sponsor of the collection.150 ///151 /// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.152 ///153 /// @param sponsor Address of the sponsor from whose account funds will be debited for operations with the contract.154 /// @dev EVM selector for this function is: 0x7623402e,155 /// or in textual repr: setCollectionSponsor(address)156 function setCollectionSponsor(address sponsor) public {157 require(false, stub_error);158 sponsor;159 dummy = 0;160 }161162 /// Set the substrate sponsor of the collection.163 ///164 /// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.165 ///166 /// @param sponsor Substrate address of the sponsor from whose account funds will be debited for operations with the contract.167 /// @dev EVM selector for this function is: 0xc74d6751,168 /// or in textual repr: setCollectionSponsorSubstrate(uint256)169 function setCollectionSponsorSubstrate(uint256 sponsor) public {170 require(false, stub_error);171 sponsor;172 dummy = 0;173 }174175 /// @dev EVM selector for this function is: 0x058ac185,176 /// or in textual repr: hasCollectionPendingSponsor()177 function hasCollectionPendingSponsor() public view returns (bool) {178 require(false, stub_error);179 dummy;180 return false;181 }182183 /// Collection sponsorship confirmation.184 ///185 /// @dev After setting the sponsor for the collection, it must be confirmed with this function.186 /// @dev EVM selector for this function is: 0x3c50e97a,187 /// or in textual repr: confirmCollectionSponsorship()188 function confirmCollectionSponsorship() public {189 require(false, stub_error);190 dummy = 0;191 }192193 /// Remove collection sponsor.194 /// @dev EVM selector for this function is: 0x6e0326a3,195 /// or in textual repr: removeCollectionSponsor()196 function removeCollectionSponsor() public {197 require(false, stub_error);198 dummy = 0;199 }200201 /// Get current sponsor.202 ///203 /// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.204 /// @dev EVM selector for this function is: 0xb66bbc14,205 /// or in textual repr: getCollectionSponsor()206 function getCollectionSponsor() public view returns (Tuple17 memory) {207 require(false, stub_error);208 dummy;209 return Tuple17(0x0000000000000000000000000000000000000000, 0);210 }211212 /// Set limits for the collection.213 /// @dev Throws error if limit not found.214 /// @param limit Name of the limit. Valid names:215 /// "accountTokenOwnershipLimit",216 /// "sponsoredDataSize",217 /// "sponsoredDataRateLimit",218 /// "tokenLimit",219 /// "sponsorTransferTimeout",220 /// "sponsorApproveTimeout"221 /// @param value Value of the limit.222 /// @dev EVM selector for this function is: 0x6a3841db,223 /// or in textual repr: setCollectionLimit(string,uint32)224 function setCollectionLimit(string memory limit, uint32 value) public {225 require(false, stub_error);226 limit;227 value;228 dummy = 0;229 }230231 /// Set limits for the collection.232 /// @dev Throws error if limit not found.233 /// @param limit Name of the limit. Valid names:234 /// "ownerCanTransfer",235 /// "ownerCanDestroy",236 /// "transfersEnabled"237 /// @param value Value of the limit.238 /// @dev EVM selector for this function is: 0x993b7fba,239 /// or in textual repr: setCollectionLimit(string,bool)240 function setCollectionLimit(string memory limit, bool value) public {241 require(false, stub_error);242 limit;243 value;244 dummy = 0;245 }246247 /// Get contract address.248 /// @dev EVM selector for this function is: 0xf6b4dfb4,249 /// or in textual repr: contractAddress()250 function contractAddress() public view returns (address) {251 require(false, stub_error);252 dummy;253 return 0x0000000000000000000000000000000000000000;254 }255256 /// Add collection admin by substrate address.257 /// @param newAdmin Substrate administrator address.258 /// @dev EVM selector for this function is: 0x5730062b,259 /// or in textual repr: addCollectionAdminSubstrate(uint256)260 function addCollectionAdminSubstrate(uint256 newAdmin) public {261 require(false, stub_error);262 newAdmin;263 dummy = 0;264 }265266 /// Remove collection admin by substrate address.267 /// @param admin Substrate administrator address.268 /// @dev EVM selector for this function is: 0x4048fcf9,269 /// or in textual repr: removeCollectionAdminSubstrate(uint256)270 function removeCollectionAdminSubstrate(uint256 admin) public {271 require(false, stub_error);272 admin;273 dummy = 0;274 }275276 /// Add collection admin.277 /// @param newAdmin Address of the added administrator.278 /// @dev EVM selector for this function is: 0x92e462c7,279 /// or in textual repr: addCollectionAdmin(address)280 function addCollectionAdmin(address newAdmin) public {281 require(false, stub_error);282 newAdmin;283 dummy = 0;284 }285286 /// Remove collection admin.287 ///288 /// @param admin Address of the removed administrator.289 /// @dev EVM selector for this function is: 0xfafd7b42,290 /// or in textual repr: removeCollectionAdmin(address)291 function removeCollectionAdmin(address admin) public {292 require(false, stub_error);293 admin;294 dummy = 0;295 }296297 /// Toggle accessibility of collection nesting.298 ///299 /// @param enable If "true" degenerates to nesting: 'Owner' else to nesting: 'Disabled'300 /// @dev EVM selector for this function is: 0x112d4586,301 /// or in textual repr: setCollectionNesting(bool)302 function setCollectionNesting(bool enable) public {303 require(false, stub_error);304 enable;305 dummy = 0;306 }307308 /// Toggle accessibility of collection nesting.309 ///310 /// @param enable If "true" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'311 /// @param collections Addresses of collections that will be available for nesting.312 /// @dev EVM selector for this function is: 0x64872396,313 /// or in textual repr: setCollectionNesting(bool,address[])314 function setCollectionNesting(bool enable, address[] memory collections)315 public316 {317 require(false, stub_error);318 enable;319 collections;320 dummy = 0;321 }322323 /// Set the collection access method.324 /// @param mode Access mode325 /// 0 for Normal326 /// 1 for AllowList327 /// @dev EVM selector for this function is: 0x41835d4c,328 /// or in textual repr: setCollectionAccess(uint8)329 function setCollectionAccess(uint8 mode) public {330 require(false, stub_error);331 mode;332 dummy = 0;333 }334335 /// Checks that user allowed to operate with collection.336 ///337 /// @param user User address to check.338 /// @dev EVM selector for this function is: 0xd63a8e11,339 /// or in textual repr: allowed(address)340 function allowed(address user) public view returns (bool) {341 require(false, stub_error);342 user;343 dummy;344 return false;345 }346347 /// Add the user to the allowed list.348 ///349 /// @param user Address of a trusted user.350 /// @dev EVM selector for this function is: 0x67844fe6,351 /// or in textual repr: addToCollectionAllowList(address)352 function addToCollectionAllowList(address user) public {353 require(false, stub_error);354 user;355 dummy = 0;356 }357358 /// Add substrate user to allowed list.359 ///360 /// @param user User substrate address.361 /// @dev EVM selector for this function is: 0xd06ad267,362 /// or in textual repr: addToCollectionAllowListSubstrate(uint256)363 function addToCollectionAllowListSubstrate(uint256 user) public {364 require(false, stub_error);365 user;366 dummy = 0;367 }368369 /// Remove the user from the allowed list.370 ///371 /// @param user Address of a removed user.372 /// @dev EVM selector for this function is: 0x85c51acb,373 /// or in textual repr: removeFromCollectionAllowList(address)374 function removeFromCollectionAllowList(address user) public {375 require(false, stub_error);376 user;377 dummy = 0;378 }379380 /// Remove substrate user from allowed list.381 ///382 /// @param user User substrate address.383 /// @dev EVM selector for this function is: 0xa31913ed,384 /// or in textual repr: removeFromCollectionAllowListSubstrate(uint256)385 function removeFromCollectionAllowListSubstrate(uint256 user) public {386 require(false, stub_error);387 user;388 dummy = 0;389 }390391 /// Switch permission for minting.392 ///393 /// @param mode Enable if "true".394 /// @dev EVM selector for this function is: 0x00018e84,395 /// or in textual repr: setCollectionMintMode(bool)396 function setCollectionMintMode(bool mode) public {397 require(false, stub_error);398 mode;399 dummy = 0;400 }401402 /// Check that account is the owner or admin of the collection403 ///404 /// @param user account to verify405 /// @return "true" if account is the owner or admin406 /// @dev EVM selector for this function is: 0x9811b0c7,407 /// or in textual repr: isOwnerOrAdmin(address)408 function isOwnerOrAdmin(address user) public view returns (bool) {409 require(false, stub_error);410 user;411 dummy;412 return false;413 }414415 /// Check that substrate account is the owner or admin of the collection416 ///417 /// @param user account to verify418 /// @return "true" if account is the owner or admin419 /// @dev EVM selector for this function is: 0x68910e00,420 /// or in textual repr: isOwnerOrAdminSubstrate(uint256)421 function isOwnerOrAdminSubstrate(uint256 user) public view returns (bool) {422 require(false, stub_error);423 user;424 dummy;425 return false;426 }427428 /// Returns collection type429 ///430 /// @return `Fungible` or `NFT` or `ReFungible`431 /// @dev EVM selector for this function is: 0xd34b55b8,432 /// or in textual repr: uniqueCollectionType()433 function uniqueCollectionType() public returns (string memory) {434 require(false, stub_error);435 dummy = 0;436 return "";437 }438439 /// Get collection owner.440 ///441 /// @return Tuble with sponsor address and his substrate mirror.442 /// If address is canonical then substrate mirror is zero and vice versa.443 /// @dev EVM selector for this function is: 0xdf727d3b,444 /// or in textual repr: collectionOwner()445 function collectionOwner() public view returns (Tuple17 memory) {446 require(false, stub_error);447 dummy;448 return Tuple17(0x0000000000000000000000000000000000000000, 0);449 }450451 /// Changes collection owner to another account452 ///453 /// @dev Owner can be changed only by current owner454 /// @param newOwner new owner account455 /// @dev EVM selector for this function is: 0x13af4035,456 /// or in textual repr: setOwner(address)457 function setOwner(address newOwner) public {458 require(false, stub_error);459 newOwner;460 dummy = 0;461 }462463 /// Changes collection owner to another substrate account464 ///465 /// @dev Owner can be changed only by current owner466 /// @param newOwner new owner substrate account467 /// @dev EVM selector for this function is: 0xb212138f,468 /// or in textual repr: setOwnerSubstrate(uint256)469 function setOwnerSubstrate(uint256 newOwner) public {470 require(false, stub_error);471 newOwner;472 dummy = 0;473 }474}475476/// @dev anonymous struct477struct Tuple17 {478 address field_0;479 uint256 field_1;480}481482/// @title ERC721 Token that can be irreversibly burned (destroyed).483/// @dev the ERC-165 identifier for this interface is 0x42966c68484contract ERC721Burnable is Dummy, ERC165 {485 /// @notice Burns a specific ERC721 token.486 /// @dev Throws unless `msg.sender` is the current RFT owner, or an authorized487 /// operator of the current owner.488 /// @param tokenId The RFT to approve489 /// @dev EVM selector for this function is: 0x42966c68,490 /// or in textual repr: burn(uint256)491 function burn(uint256 tokenId) public {492 require(false, stub_error);493 tokenId;494 dummy = 0;495 }496}497498/// @dev inlined interface499contract ERC721MintableEvents {500 event MintingFinished();501}502503/// @title ERC721 minting logic.504/// @dev the ERC-165 identifier for this interface is 0x68ccfe89505contract ERC721Mintable is Dummy, ERC165, ERC721MintableEvents {506 /// @dev EVM selector for this function is: 0x05d2035b,507 /// or in textual repr: mintingFinished()508 function mintingFinished() public view returns (bool) {509 require(false, stub_error);510 dummy;511 return false;512 }513514 /// @notice Function to mint token.515 /// @dev `tokenId` should be obtained with `nextTokenId` method,516 /// unlike standard, you can't specify it manually517 /// @param to The new owner518 /// @param tokenId ID of the minted RFT519 /// @dev EVM selector for this function is: 0x40c10f19,520 /// or in textual repr: mint(address,uint256)521 function mint(address to, uint256 tokenId) public returns (bool) {522 require(false, stub_error);523 to;524 tokenId;525 dummy = 0;526 return false;527 }528529 /// @notice Function to mint token with the given tokenUri.530 /// @dev `tokenId` should be obtained with `nextTokenId` method,531 /// unlike standard, you can't specify it manually532 /// @param to The new owner533 /// @param tokenId ID of the minted RFT534 /// @param tokenUri Token URI that would be stored in the RFT properties535 /// @dev EVM selector for this function is: 0x50bb4e7f,536 /// or in textual repr: mintWithTokenURI(address,uint256,string)537 function mintWithTokenURI(538 address to,539 uint256 tokenId,540 string memory tokenUri541 ) public returns (bool) {542 require(false, stub_error);543 to;544 tokenId;545 tokenUri;546 dummy = 0;547 return false;548 }549550 /// @dev Not implemented551 /// @dev EVM selector for this function is: 0x7d64bcb4,552 /// or in textual repr: finishMinting()553 function finishMinting() public returns (bool) {554 require(false, stub_error);555 dummy = 0;556 return false;557 }558}559560/// @title Unique extensions for ERC721.561/// @dev the ERC-165 identifier for this interface is 0x7c3bef89562contract ERC721UniqueExtensions is Dummy, ERC165 {563 /// @notice Transfer ownership of an RFT564 /// @dev Throws unless `msg.sender` is the current owner. Throws if `to`565 /// is the zero address. Throws if `tokenId` is not a valid RFT.566 /// Throws if RFT pieces have multiple owners.567 /// @param to The new owner568 /// @param tokenId The RFT to transfer569 /// @dev EVM selector for this function is: 0xa9059cbb,570 /// or in textual repr: transfer(address,uint256)571 function transfer(address to, uint256 tokenId) public {572 require(false, stub_error);573 to;574 tokenId;575 dummy = 0;576 }577578 /// @notice Burns a specific ERC721 token.579 /// @dev Throws unless `msg.sender` is the current owner or an authorized580 /// operator for this RFT. Throws if `from` is not the current owner. Throws581 /// if `to` is the zero address. Throws if `tokenId` is not a valid RFT.582 /// Throws if RFT pieces have multiple owners.583 /// @param from The current owner of the RFT584 /// @param tokenId The RFT to transfer585 /// @dev EVM selector for this function is: 0x79cc6790,586 /// or in textual repr: burnFrom(address,uint256)587 function burnFrom(address from, uint256 tokenId) public {588 require(false, stub_error);589 from;590 tokenId;591 dummy = 0;592 }593594 /// @notice Returns next free RFT ID.595 /// @dev EVM selector for this function is: 0x75794a3c,596 /// or in textual repr: nextTokenId()597 function nextTokenId() public view returns (uint256) {598 require(false, stub_error);599 dummy;600 return 0;601 }602603 /// @notice Function to mint multiple tokens.604 /// @dev `tokenIds` should be an array of consecutive numbers and first number605 /// should be obtained with `nextTokenId` method606 /// @param to The new owner607 /// @param tokenIds IDs of the minted RFTs608 /// @dev EVM selector for this function is: 0x44a9945e,609 /// or in textual repr: mintBulk(address,uint256[])610 function mintBulk(address to, uint256[] memory tokenIds)611 public612 returns (bool)613 {614 require(false, stub_error);615 to;616 tokenIds;617 dummy = 0;618 return false;619 }620621 /// @notice Function to mint multiple tokens with the given tokenUris.622 /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive623 /// numbers and first number should be obtained with `nextTokenId` method624 /// @param to The new owner625 /// @param tokens array of pairs of token ID and token URI for minted tokens626 /// @dev EVM selector for this function is: 0x36543006,627 /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])628 function mintBulkWithTokenURI(address to, Tuple8[] memory tokens)629 public630 returns (bool)631 {632 require(false, stub_error);633 to;634 tokens;635 dummy = 0;636 return false;637 }638639 /// Returns EVM address for refungible token640 ///641 /// @param token ID of the token642 /// @dev EVM selector for this function is: 0xab76fac6,643 /// or in textual repr: tokenContractAddress(uint256)644 function tokenContractAddress(uint256 token) public view returns (address) {645 require(false, stub_error);646 token;647 dummy;648 return 0x0000000000000000000000000000000000000000;649 }650}651652/// @dev anonymous struct653struct Tuple8 {654 uint256 field_0;655 string field_1;656}657658/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension659/// @dev See https://eips.ethereum.org/EIPS/eip-721660/// @dev the ERC-165 identifier for this interface is 0x780e9d63661contract ERC721Enumerable is Dummy, ERC165 {662 /// @notice Enumerate valid RFTs663 /// @param index A counter less than `totalSupply()`664 /// @return The token identifier for the `index`th NFT,665 /// (sort order not specified)666 /// @dev EVM selector for this function is: 0x4f6ccce7,667 /// or in textual repr: tokenByIndex(uint256)668 function tokenByIndex(uint256 index) public view returns (uint256) {669 require(false, stub_error);670 index;671 dummy;672 return 0;673 }674675 /// Not implemented676 /// @dev EVM selector for this function is: 0x2f745c59,677 /// or in textual repr: tokenOfOwnerByIndex(address,uint256)678 function tokenOfOwnerByIndex(address owner, uint256 index)679 public680 view681 returns (uint256)682 {683 require(false, stub_error);684 owner;685 index;686 dummy;687 return 0;688 }689690 /// @notice Count RFTs tracked by this contract691 /// @return A count of valid RFTs tracked by this contract, where each one of692 /// them has an assigned and queryable owner not equal to the zero address693 /// @dev EVM selector for this function is: 0x18160ddd,694 /// or in textual repr: totalSupply()695 function totalSupply() public view returns (uint256) {696 require(false, stub_error);697 dummy;698 return 0;699 }700}701702/// @dev the ERC-165 identifier for this interface is 0x5b5e139f703contract ERC721Metadata is Dummy, ERC165 {704 /// @notice A descriptive name for a collection of RFTs in this contract705 /// @dev EVM selector for this function is: 0x06fdde03,706 /// or in textual repr: name()707 function name() public view returns (string memory) {708 require(false, stub_error);709 dummy;710 return "";711 }712713 /// @notice An abbreviated name for RFTs in this contract714 /// @dev EVM selector for this function is: 0x95d89b41,715 /// or in textual repr: symbol()716 function symbol() public view returns (string memory) {717 require(false, stub_error);718 dummy;719 return "";720 }721722 /// @notice A distinct Uniform Resource Identifier (URI) for a given asset.723 ///724 /// @dev If the token has a `url` property and it is not empty, it is returned.725 /// Else If the collection does not have a property with key `schemaName` or its value is not equal to `ERC721Metadata`, it return an error `tokenURI not set`.726 /// If the collection property `baseURI` is empty or absent, return "" (empty string)727 /// otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix728 /// otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).729 ///730 /// @return token's const_metadata731 /// @dev EVM selector for this function is: 0xc87b56dd,732 /// or in textual repr: tokenURI(uint256)733 function tokenURI(uint256 tokenId) public view returns (string memory) {734 require(false, stub_error);735 tokenId;736 dummy;737 return "";738 }739}740741/// @dev inlined interface742contract ERC721Events {743 event Transfer(744 address indexed from,745 address indexed to,746 uint256 indexed tokenId747 );748 event Approval(749 address indexed owner,750 address indexed approved,751 uint256 indexed tokenId752 );753 event ApprovalForAll(754 address indexed owner,755 address indexed operator,756 bool approved757 );758}759760/// @title ERC-721 Non-Fungible Token Standard761/// @dev See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md762/// @dev the ERC-165 identifier for this interface is 0x58800161763contract ERC721 is Dummy, ERC165, ERC721Events {764 /// @notice Count all RFTs assigned to an owner765 /// @dev RFTs assigned to the zero address are considered invalid, and this766 /// function throws for queries about the zero address.767 /// @param owner An address for whom to query the balance768 /// @return The number of RFTs owned by `owner`, possibly zero769 /// @dev EVM selector for this function is: 0x70a08231,770 /// or in textual repr: balanceOf(address)771 function balanceOf(address owner) public view returns (uint256) {772 require(false, stub_error);773 owner;774 dummy;775 return 0;776 }777778 /// @notice Find the owner of an RFT779 /// @dev RFTs assigned to zero address are considered invalid, and queries780 /// about them do throw.781 /// Returns special 0xffffffffffffffffffffffffffffffffffffffff address for782 /// the tokens that are partially owned.783 /// @param tokenId The identifier for an RFT784 /// @return The address of the owner of the RFT785 /// @dev EVM selector for this function is: 0x6352211e,786 /// or in textual repr: ownerOf(uint256)787 function ownerOf(uint256 tokenId) public view returns (address) {788 require(false, stub_error);789 tokenId;790 dummy;791 return 0x0000000000000000000000000000000000000000;792 }793794 /// @dev Not implemented795 /// @dev EVM selector for this function is: 0x60a11672,796 /// or in textual repr: safeTransferFromWithData(address,address,uint256,bytes)797 function safeTransferFromWithData(798 address from,799 address to,800 uint256 tokenId,801 bytes memory data802 ) public {803 require(false, stub_error);804 from;805 to;806 tokenId;807 data;808 dummy = 0;809 }810811 /// @dev Not implemented812 /// @dev EVM selector for this function is: 0x42842e0e,813 /// or in textual repr: safeTransferFrom(address,address,uint256)814 function safeTransferFrom(815 address from,816 address to,817 uint256 tokenId818 ) public {819 require(false, stub_error);820 from;821 to;822 tokenId;823 dummy = 0;824 }825826 /// @notice Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE827 /// TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE828 /// THEY MAY BE PERMANENTLY LOST829 /// @dev Throws unless `msg.sender` is the current owner or an authorized830 /// operator for this RFT. Throws if `from` is not the current owner. Throws831 /// if `to` is the zero address. Throws if `tokenId` is not a valid RFT.832 /// Throws if RFT pieces have multiple owners.833 /// @param from The current owner of the NFT834 /// @param to The new owner835 /// @param tokenId The NFT to transfer836 /// @dev EVM selector for this function is: 0x23b872dd,837 /// or in textual repr: transferFrom(address,address,uint256)838 function transferFrom(839 address from,840 address to,841 uint256 tokenId842 ) public {843 require(false, stub_error);844 from;845 to;846 tokenId;847 dummy = 0;848 }849850 /// @dev Not implemented851 /// @dev EVM selector for this function is: 0x095ea7b3,852 /// or in textual repr: approve(address,uint256)853 function approve(address approved, uint256 tokenId) public {854 require(false, stub_error);855 approved;856 tokenId;857 dummy = 0;858 }859860 /// @dev Not implemented861 /// @dev EVM selector for this function is: 0xa22cb465,862 /// or in textual repr: setApprovalForAll(address,bool)863 function setApprovalForAll(address operator, bool approved) public {864 require(false, stub_error);865 operator;866 approved;867 dummy = 0;868 }869870 /// @dev Not implemented871 /// @dev EVM selector for this function is: 0x081812fc,872 /// or in textual repr: getApproved(uint256)873 function getApproved(uint256 tokenId) public view returns (address) {874 require(false, stub_error);875 tokenId;876 dummy;877 return 0x0000000000000000000000000000000000000000;878 }879880 /// @dev Not implemented881 /// @dev EVM selector for this function is: 0xe985e9c5,882 /// or in textual repr: isApprovedForAll(address,address)883 function isApprovedForAll(address owner, address operator)884 public885 view886 returns (address)887 {888 require(false, stub_error);889 owner;890 operator;891 dummy;892 return 0x0000000000000000000000000000000000000000;893 }894}895896contract UniqueRefungible is897 Dummy,898 ERC165,899 ERC721,900 ERC721Metadata,901 ERC721Enumerable,902 ERC721UniqueExtensions,903 ERC721Mintable,904 ERC721Burnable,905 Collection,906 TokenProperties907{}1// SPDX-License-Identifier: OTHER2// This code is automatically generated34pragma solidity >=0.8.0 <0.9.0;56/// @dev common stubs holder7contract Dummy {8 uint8 dummy;9 string stub_error = "this contract is implemented in native";10}1112contract ERC165 is Dummy {13 function supportsInterface(bytes4 interfaceID) external view returns (bool) {14 require(false, stub_error);15 interfaceID;16 return true;17 }18}1920/// @title A contract that allows to set and delete token properties and change token property permissions.21/// @dev the ERC-165 identifier for this interface is 0x4136937722contract TokenProperties is Dummy, ERC165 {23 /// @notice Set permissions for token property.24 /// @dev Throws error if `msg.sender` is not admin or owner of the collection.25 /// @param key Property key.26 /// @param isMutable Permission to mutate property.27 /// @param collectionAdmin Permission to mutate property by collection admin if property is mutable.28 /// @param tokenOwner Permission to mutate property by token owner if property is mutable.29 /// @dev EVM selector for this function is: 0x222d97fa,30 /// or in textual repr: setTokenPropertyPermission(string,bool,bool,bool)31 function setTokenPropertyPermission(32 string memory key,33 bool isMutable,34 bool collectionAdmin,35 bool tokenOwner36 ) public {37 require(false, stub_error);38 key;39 isMutable;40 collectionAdmin;41 tokenOwner;42 dummy = 0;43 }4445 /// @notice Set token property value.46 /// @dev Throws error if `msg.sender` has no permission to edit the property.47 /// @param tokenId ID of the token.48 /// @param key Property key.49 /// @param value Property value.50 /// @dev EVM selector for this function is: 0x1752d67b,51 /// or in textual repr: setProperty(uint256,string,bytes)52 function setProperty(53 uint256 tokenId,54 string memory key,55 bytes memory value56 ) public {57 require(false, stub_error);58 tokenId;59 key;60 value;61 dummy = 0;62 }6364 /// @notice Delete token property value.65 /// @dev Throws error if `msg.sender` has no permission to edit the property.66 /// @param tokenId ID of the token.67 /// @param key Property key.68 /// @dev EVM selector for this function is: 0x066111d1,69 /// or in textual repr: deleteProperty(uint256,string)70 function deleteProperty(uint256 tokenId, string memory key) public {71 require(false, stub_error);72 tokenId;73 key;74 dummy = 0;75 }7677 /// @notice Get token property value.78 /// @dev Throws error if key not found79 /// @param tokenId ID of the token.80 /// @param key Property key.81 /// @return Property value bytes82 /// @dev EVM selector for this function is: 0x7228c327,83 /// or in textual repr: property(uint256,string)84 function property(uint256 tokenId, string memory key) public view returns (bytes memory) {85 require(false, stub_error);86 tokenId;87 key;88 dummy;89 return hex"";90 }91}9293/// @title A contract that allows you to work with collections.94/// @dev the ERC-165 identifier for this interface is 0x47dbc10595contract Collection is Dummy, ERC165 {96 /// Set collection property.97 ///98 /// @param key Property key.99 /// @param value Propery value.100 /// @dev EVM selector for this function is: 0x2f073f66,101 /// or in textual repr: setCollectionProperty(string,bytes)102 function setCollectionProperty(string memory key, bytes memory value) public {103 require(false, stub_error);104 key;105 value;106 dummy = 0;107 }108109 /// Delete collection property.110 ///111 /// @param key Property key.112 /// @dev EVM selector for this function is: 0x7b7debce,113 /// or in textual repr: deleteCollectionProperty(string)114 function deleteCollectionProperty(string memory key) public {115 require(false, stub_error);116 key;117 dummy = 0;118 }119120 /// Get collection property.121 ///122 /// @dev Throws error if key not found.123 ///124 /// @param key Property key.125 /// @return bytes The property corresponding to the key.126 /// @dev EVM selector for this function is: 0xcf24fd6d,127 /// or in textual repr: collectionProperty(string)128 function collectionProperty(string memory key) public view returns (bytes memory) {129 require(false, stub_error);130 key;131 dummy;132 return hex"";133 }134135 /// Set the sponsor of the collection.136 ///137 /// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.138 ///139 /// @param sponsor Address of the sponsor from whose account funds will be debited for operations with the contract.140 /// @dev EVM selector for this function is: 0x7623402e,141 /// or in textual repr: setCollectionSponsor(address)142 function setCollectionSponsor(address sponsor) public {143 require(false, stub_error);144 sponsor;145 dummy = 0;146 }147148 /// Set the substrate sponsor of the collection.149 ///150 /// @dev In order for sponsorship to work, it must be confirmed on behalf of the sponsor.151 ///152 /// @param sponsor Substrate address of the sponsor from whose account funds will be debited for operations with the contract.153 /// @dev EVM selector for this function is: 0xc74d6751,154 /// or in textual repr: setCollectionSponsorSubstrate(uint256)155 function setCollectionSponsorSubstrate(uint256 sponsor) public {156 require(false, stub_error);157 sponsor;158 dummy = 0;159 }160161 /// Whether there is a pending sponsor.162 /// @dev EVM selector for this function is: 0x058ac185,163 /// or in textual repr: hasCollectionPendingSponsor()164 function hasCollectionPendingSponsor() public view returns (bool) {165 require(false, stub_error);166 dummy;167 return false;168 }169170 /// Collection sponsorship confirmation.171 ///172 /// @dev After setting the sponsor for the collection, it must be confirmed with this function.173 /// @dev EVM selector for this function is: 0x3c50e97a,174 /// or in textual repr: confirmCollectionSponsorship()175 function confirmCollectionSponsorship() public {176 require(false, stub_error);177 dummy = 0;178 }179180 /// Remove collection sponsor.181 /// @dev EVM selector for this function is: 0x6e0326a3,182 /// or in textual repr: removeCollectionSponsor()183 function removeCollectionSponsor() public {184 require(false, stub_error);185 dummy = 0;186 }187188 /// Get current sponsor.189 ///190 /// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.191 /// @dev EVM selector for this function is: 0x6ec0a9f1,192 /// or in textual repr: collectionSponsor()193 function collectionSponsor() public view returns (Tuple17 memory) {194 require(false, stub_error);195 dummy;196 return Tuple17(0x0000000000000000000000000000000000000000, 0);197 }198199 /// Set limits for the collection.200 /// @dev Throws error if limit not found.201 /// @param limit Name of the limit. Valid names:202 /// "accountTokenOwnershipLimit",203 /// "sponsoredDataSize",204 /// "sponsoredDataRateLimit",205 /// "tokenLimit",206 /// "sponsorTransferTimeout",207 /// "sponsorApproveTimeout"208 /// @param value Value of the limit.209 /// @dev EVM selector for this function is: 0x6a3841db,210 /// or in textual repr: setCollectionLimit(string,uint32)211 function setCollectionLimit(string memory limit, uint32 value) public {212 require(false, stub_error);213 limit;214 value;215 dummy = 0;216 }217218 /// Set limits for the collection.219 /// @dev Throws error if limit not found.220 /// @param limit Name of the limit. Valid names:221 /// "ownerCanTransfer",222 /// "ownerCanDestroy",223 /// "transfersEnabled"224 /// @param value Value of the limit.225 /// @dev EVM selector for this function is: 0x993b7fba,226 /// or in textual repr: setCollectionLimit(string,bool)227 function setCollectionLimit(string memory limit, bool value) public {228 require(false, stub_error);229 limit;230 value;231 dummy = 0;232 }233234 /// Get contract address.235 /// @dev EVM selector for this function is: 0xf6b4dfb4,236 /// or in textual repr: contractAddress()237 function contractAddress() public view returns (address) {238 require(false, stub_error);239 dummy;240 return 0x0000000000000000000000000000000000000000;241 }242243 /// Add collection admin by substrate address.244 /// @param newAdmin Substrate administrator address.245 /// @dev EVM selector for this function is: 0x5730062b,246 /// or in textual repr: addCollectionAdminSubstrate(uint256)247 function addCollectionAdminSubstrate(uint256 newAdmin) public {248 require(false, stub_error);249 newAdmin;250 dummy = 0;251 }252253 /// Remove collection admin by substrate address.254 /// @param admin Substrate administrator address.255 /// @dev EVM selector for this function is: 0x4048fcf9,256 /// or in textual repr: removeCollectionAdminSubstrate(uint256)257 function removeCollectionAdminSubstrate(uint256 admin) public {258 require(false, stub_error);259 admin;260 dummy = 0;261 }262263 /// Add collection admin.264 /// @param newAdmin Address of the added administrator.265 /// @dev EVM selector for this function is: 0x92e462c7,266 /// or in textual repr: addCollectionAdmin(address)267 function addCollectionAdmin(address newAdmin) public {268 require(false, stub_error);269 newAdmin;270 dummy = 0;271 }272273 /// Remove collection admin.274 ///275 /// @param admin Address of the removed administrator.276 /// @dev EVM selector for this function is: 0xfafd7b42,277 /// or in textual repr: removeCollectionAdmin(address)278 function removeCollectionAdmin(address admin) public {279 require(false, stub_error);280 admin;281 dummy = 0;282 }283284 /// Toggle accessibility of collection nesting.285 ///286 /// @param enable If "true" degenerates to nesting: 'Owner' else to nesting: 'Disabled'287 /// @dev EVM selector for this function is: 0x112d4586,288 /// or in textual repr: setCollectionNesting(bool)289 function setCollectionNesting(bool enable) public {290 require(false, stub_error);291 enable;292 dummy = 0;293 }294295 /// Toggle accessibility of collection nesting.296 ///297 /// @param enable If "true" degenerates to nesting: {OwnerRestricted: [1, 2, 3]} else to nesting: 'Disabled'298 /// @param collections Addresses of collections that will be available for nesting.299 /// @dev EVM selector for this function is: 0x64872396,300 /// or in textual repr: setCollectionNesting(bool,address[])301 function setCollectionNesting(bool enable, address[] memory collections) public {302 require(false, stub_error);303 enable;304 collections;305 dummy = 0;306 }307308 /// Set the collection access method.309 /// @param mode Access mode310 /// 0 for Normal311 /// 1 for AllowList312 /// @dev EVM selector for this function is: 0x41835d4c,313 /// or in textual repr: setCollectionAccess(uint8)314 function setCollectionAccess(uint8 mode) public {315 require(false, stub_error);316 mode;317 dummy = 0;318 }319320 /// Checks that user allowed to operate with collection.321 ///322 /// @param user User address to check.323 /// @dev EVM selector for this function is: 0xd63a8e11,324 /// or in textual repr: allowed(address)325 function allowed(address user) public view returns (bool) {326 require(false, stub_error);327 user;328 dummy;329 return false;330 }331332 /// Add the user to the allowed list.333 ///334 /// @param user Address of a trusted user.335 /// @dev EVM selector for this function is: 0x67844fe6,336 /// or in textual repr: addToCollectionAllowList(address)337 function addToCollectionAllowList(address user) public {338 require(false, stub_error);339 user;340 dummy = 0;341 }342343 /// Add substrate user to allowed list.344 ///345 /// @param user User substrate address.346 /// @dev EVM selector for this function is: 0xd06ad267,347 /// or in textual repr: addToCollectionAllowListSubstrate(uint256)348 function addToCollectionAllowListSubstrate(uint256 user) public {349 require(false, stub_error);350 user;351 dummy = 0;352 }353354 /// Remove the user from the allowed list.355 ///356 /// @param user Address of a removed user.357 /// @dev EVM selector for this function is: 0x85c51acb,358 /// or in textual repr: removeFromCollectionAllowList(address)359 function removeFromCollectionAllowList(address user) public {360 require(false, stub_error);361 user;362 dummy = 0;363 }364365 /// Remove substrate user from allowed list.366 ///367 /// @param user User substrate address.368 /// @dev EVM selector for this function is: 0xa31913ed,369 /// or in textual repr: removeFromCollectionAllowListSubstrate(uint256)370 function removeFromCollectionAllowListSubstrate(uint256 user) public {371 require(false, stub_error);372 user;373 dummy = 0;374 }375376 /// Switch permission for minting.377 ///378 /// @param mode Enable if "true".379 /// @dev EVM selector for this function is: 0x00018e84,380 /// or in textual repr: setCollectionMintMode(bool)381 function setCollectionMintMode(bool mode) public {382 require(false, stub_error);383 mode;384 dummy = 0;385 }386387 /// Check that account is the owner or admin of the collection388 ///389 /// @param user account to verify390 /// @return "true" if account is the owner or admin391 /// @dev EVM selector for this function is: 0x9811b0c7,392 /// or in textual repr: isOwnerOrAdmin(address)393 function isOwnerOrAdmin(address user) public view returns (bool) {394 require(false, stub_error);395 user;396 dummy;397 return false;398 }399400 /// Check that substrate account is the owner or admin of the collection401 ///402 /// @param user account to verify403 /// @return "true" if account is the owner or admin404 /// @dev EVM selector for this function is: 0x68910e00,405 /// or in textual repr: isOwnerOrAdminSubstrate(uint256)406 function isOwnerOrAdminSubstrate(uint256 user) public view returns (bool) {407 require(false, stub_error);408 user;409 dummy;410 return false;411 }412413 /// Returns collection type414 ///415 /// @return `Fungible` or `NFT` or `ReFungible`416 /// @dev EVM selector for this function is: 0xd34b55b8,417 /// or in textual repr: uniqueCollectionType()418 function uniqueCollectionType() public view returns (string memory) {419 require(false, stub_error);420 dummy;421 return "";422 }423424 /// Get collection owner.425 ///426 /// @return Tuble with sponsor address and his substrate mirror.427 /// If address is canonical then substrate mirror is zero and vice versa.428 /// @dev EVM selector for this function is: 0xdf727d3b,429 /// or in textual repr: collectionOwner()430 function collectionOwner() public view returns (Tuple17 memory) {431 require(false, stub_error);432 dummy;433 return Tuple17(0x0000000000000000000000000000000000000000, 0);434 }435436 /// Changes collection owner to another account437 ///438 /// @dev Owner can be changed only by current owner439 /// @param newOwner new owner account440 /// @dev EVM selector for this function is: 0x13af4035,441 /// or in textual repr: setOwner(address)442 function setOwner(address newOwner) public {443 require(false, stub_error);444 newOwner;445 dummy = 0;446 }447448 /// Changes collection owner to another substrate account449 ///450 /// @dev Owner can be changed only by current owner451 /// @param newOwner new owner substrate account452 /// @dev EVM selector for this function is: 0xb212138f,453 /// or in textual repr: setOwnerSubstrate(uint256)454 function setOwnerSubstrate(uint256 newOwner) public {455 require(false, stub_error);456 newOwner;457 dummy = 0;458 }459}460461/// @dev anonymous struct462struct Tuple17 {463 address field_0;464 uint256 field_1;465}466467/// @title ERC721 Token that can be irreversibly burned (destroyed).468/// @dev the ERC-165 identifier for this interface is 0x42966c68469contract ERC721Burnable is Dummy, ERC165 {470 /// @notice Burns a specific ERC721 token.471 /// @dev Throws unless `msg.sender` is the current RFT owner, or an authorized472 /// operator of the current owner.473 /// @param tokenId The RFT to approve474 /// @dev EVM selector for this function is: 0x42966c68,475 /// or in textual repr: burn(uint256)476 function burn(uint256 tokenId) public {477 require(false, stub_error);478 tokenId;479 dummy = 0;480 }481}482483/// @dev inlined interface484contract ERC721MintableEvents {485 event MintingFinished();486}487488/// @title ERC721 minting logic.489/// @dev the ERC-165 identifier for this interface is 0x68ccfe89490contract ERC721Mintable is Dummy, ERC165, ERC721MintableEvents {491 /// @dev EVM selector for this function is: 0x05d2035b,492 /// or in textual repr: mintingFinished()493 function mintingFinished() public view returns (bool) {494 require(false, stub_error);495 dummy;496 return false;497 }498499 /// @notice Function to mint token.500 /// @dev `tokenId` should be obtained with `nextTokenId` method,501 /// unlike standard, you can't specify it manually502 /// @param to The new owner503 /// @param tokenId ID of the minted RFT504 /// @dev EVM selector for this function is: 0x40c10f19,505 /// or in textual repr: mint(address,uint256)506 function mint(address to, uint256 tokenId) public returns (bool) {507 require(false, stub_error);508 to;509 tokenId;510 dummy = 0;511 return false;512 }513514 /// @notice Function to mint token with the given tokenUri.515 /// @dev `tokenId` should be obtained with `nextTokenId` method,516 /// unlike standard, you can't specify it manually517 /// @param to The new owner518 /// @param tokenId ID of the minted RFT519 /// @param tokenUri Token URI that would be stored in the RFT properties520 /// @dev EVM selector for this function is: 0x50bb4e7f,521 /// or in textual repr: mintWithTokenURI(address,uint256,string)522 function mintWithTokenURI(523 address to,524 uint256 tokenId,525 string memory tokenUri526 ) public returns (bool) {527 require(false, stub_error);528 to;529 tokenId;530 tokenUri;531 dummy = 0;532 return false;533 }534535 /// @dev Not implemented536 /// @dev EVM selector for this function is: 0x7d64bcb4,537 /// or in textual repr: finishMinting()538 function finishMinting() public returns (bool) {539 require(false, stub_error);540 dummy = 0;541 return false;542 }543}544545/// @title Unique extensions for ERC721.546/// @dev the ERC-165 identifier for this interface is 0x7c3bef89547contract ERC721UniqueExtensions is Dummy, ERC165 {548 /// @notice Transfer ownership of an RFT549 /// @dev Throws unless `msg.sender` is the current owner. Throws if `to`550 /// is the zero address. Throws if `tokenId` is not a valid RFT.551 /// Throws if RFT pieces have multiple owners.552 /// @param to The new owner553 /// @param tokenId The RFT to transfer554 /// @dev EVM selector for this function is: 0xa9059cbb,555 /// or in textual repr: transfer(address,uint256)556 function transfer(address to, uint256 tokenId) public {557 require(false, stub_error);558 to;559 tokenId;560 dummy = 0;561 }562563 /// @notice Burns a specific ERC721 token.564 /// @dev Throws unless `msg.sender` is the current owner or an authorized565 /// operator for this RFT. Throws if `from` is not the current owner. Throws566 /// if `to` is the zero address. Throws if `tokenId` is not a valid RFT.567 /// Throws if RFT pieces have multiple owners.568 /// @param from The current owner of the RFT569 /// @param tokenId The RFT to transfer570 /// @dev EVM selector for this function is: 0x79cc6790,571 /// or in textual repr: burnFrom(address,uint256)572 function burnFrom(address from, uint256 tokenId) public {573 require(false, stub_error);574 from;575 tokenId;576 dummy = 0;577 }578579 /// @notice Returns next free RFT ID.580 /// @dev EVM selector for this function is: 0x75794a3c,581 /// or in textual repr: nextTokenId()582 function nextTokenId() public view returns (uint256) {583 require(false, stub_error);584 dummy;585 return 0;586 }587588 /// @notice Function to mint multiple tokens.589 /// @dev `tokenIds` should be an array of consecutive numbers and first number590 /// should be obtained with `nextTokenId` method591 /// @param to The new owner592 /// @param tokenIds IDs of the minted RFTs593 /// @dev EVM selector for this function is: 0x44a9945e,594 /// or in textual repr: mintBulk(address,uint256[])595 function mintBulk(address to, uint256[] memory tokenIds) public returns (bool) {596 require(false, stub_error);597 to;598 tokenIds;599 dummy = 0;600 return false;601 }602603 /// @notice Function to mint multiple tokens with the given tokenUris.604 /// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive605 /// numbers and first number should be obtained with `nextTokenId` method606 /// @param to The new owner607 /// @param tokens array of pairs of token ID and token URI for minted tokens608 /// @dev EVM selector for this function is: 0x36543006,609 /// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])610 function mintBulkWithTokenURI(address to, Tuple8[] memory tokens) public returns (bool) {611 require(false, stub_error);612 to;613 tokens;614 dummy = 0;615 return false;616 }617618 /// Returns EVM address for refungible token619 ///620 /// @param token ID of the token621 /// @dev EVM selector for this function is: 0xab76fac6,622 /// or in textual repr: tokenContractAddress(uint256)623 function tokenContractAddress(uint256 token) public view returns (address) {624 require(false, stub_error);625 token;626 dummy;627 return 0x0000000000000000000000000000000000000000;628 }629}630631/// @dev anonymous struct632struct Tuple8 {633 uint256 field_0;634 string field_1;635}636637/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension638/// @dev See https://eips.ethereum.org/EIPS/eip-721639/// @dev the ERC-165 identifier for this interface is 0x780e9d63640contract ERC721Enumerable is Dummy, ERC165 {641 /// @notice Enumerate valid RFTs642 /// @param index A counter less than `totalSupply()`643 /// @return The token identifier for the `index`th NFT,644 /// (sort order not specified)645 /// @dev EVM selector for this function is: 0x4f6ccce7,646 /// or in textual repr: tokenByIndex(uint256)647 function tokenByIndex(uint256 index) public view returns (uint256) {648 require(false, stub_error);649 index;650 dummy;651 return 0;652 }653654 /// Not implemented655 /// @dev EVM selector for this function is: 0x2f745c59,656 /// or in textual repr: tokenOfOwnerByIndex(address,uint256)657 function tokenOfOwnerByIndex(address owner, uint256 index) public view returns (uint256) {658 require(false, stub_error);659 owner;660 index;661 dummy;662 return 0;663 }664665 /// @notice Count RFTs tracked by this contract666 /// @return A count of valid RFTs tracked by this contract, where each one of667 /// them has an assigned and queryable owner not equal to the zero address668 /// @dev EVM selector for this function is: 0x18160ddd,669 /// or in textual repr: totalSupply()670 function totalSupply() public view returns (uint256) {671 require(false, stub_error);672 dummy;673 return 0;674 }675}676677/// @dev the ERC-165 identifier for this interface is 0x5b5e139f678contract ERC721Metadata is Dummy, ERC165 {679 /// @notice A descriptive name for a collection of RFTs in this contract680 /// @dev EVM selector for this function is: 0x06fdde03,681 /// or in textual repr: name()682 function name() public view returns (string memory) {683 require(false, stub_error);684 dummy;685 return "";686 }687688 /// @notice An abbreviated name for RFTs in this contract689 /// @dev EVM selector for this function is: 0x95d89b41,690 /// or in textual repr: symbol()691 function symbol() public view returns (string memory) {692 require(false, stub_error);693 dummy;694 return "";695 }696697 /// @notice A distinct Uniform Resource Identifier (URI) for a given asset.698 ///699 /// @dev If the token has a `url` property and it is not empty, it is returned.700 /// Else If the collection does not have a property with key `schemaName` or its value is not equal to `ERC721Metadata`, it return an error `tokenURI not set`.701 /// If the collection property `baseURI` is empty or absent, return "" (empty string)702 /// otherwise, if token property `suffix` present and is non-empty, return concatenation of baseURI and suffix703 /// otherwise, return concatenation of `baseURI` and stringified token id (decimal stringifying, without paddings).704 ///705 /// @return token's const_metadata706 /// @dev EVM selector for this function is: 0xc87b56dd,707 /// or in textual repr: tokenURI(uint256)708 function tokenURI(uint256 tokenId) public view returns (string memory) {709 require(false, stub_error);710 tokenId;711 dummy;712 return "";713 }714}715716/// @dev inlined interface717contract ERC721Events {718 event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);719 event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);720 event ApprovalForAll(address indexed owner, address indexed operator, bool approved);721}722723/// @title ERC-721 Non-Fungible Token Standard724/// @dev See https://github.com/ethereum/EIPs/blob/master/EIPS/eip-721.md725/// @dev the ERC-165 identifier for this interface is 0x58800161726contract ERC721 is Dummy, ERC165, ERC721Events {727 /// @notice Count all RFTs assigned to an owner728 /// @dev RFTs assigned to the zero address are considered invalid, and this729 /// function throws for queries about the zero address.730 /// @param owner An address for whom to query the balance731 /// @return The number of RFTs owned by `owner`, possibly zero732 /// @dev EVM selector for this function is: 0x70a08231,733 /// or in textual repr: balanceOf(address)734 function balanceOf(address owner) public view returns (uint256) {735 require(false, stub_error);736 owner;737 dummy;738 return 0;739 }740741 /// @notice Find the owner of an RFT742 /// @dev RFTs assigned to zero address are considered invalid, and queries743 /// about them do throw.744 /// Returns special 0xffffffffffffffffffffffffffffffffffffffff address for745 /// the tokens that are partially owned.746 /// @param tokenId The identifier for an RFT747 /// @return The address of the owner of the RFT748 /// @dev EVM selector for this function is: 0x6352211e,749 /// or in textual repr: ownerOf(uint256)750 function ownerOf(uint256 tokenId) public view returns (address) {751 require(false, stub_error);752 tokenId;753 dummy;754 return 0x0000000000000000000000000000000000000000;755 }756757 /// @dev Not implemented758 /// @dev EVM selector for this function is: 0x60a11672,759 /// or in textual repr: safeTransferFromWithData(address,address,uint256,bytes)760 function safeTransferFromWithData(761 address from,762 address to,763 uint256 tokenId,764 bytes memory data765 ) public {766 require(false, stub_error);767 from;768 to;769 tokenId;770 data;771 dummy = 0;772 }773774 /// @dev Not implemented775 /// @dev EVM selector for this function is: 0x42842e0e,776 /// or in textual repr: safeTransferFrom(address,address,uint256)777 function safeTransferFrom(778 address from,779 address to,780 uint256 tokenId781 ) public {782 require(false, stub_error);783 from;784 to;785 tokenId;786 dummy = 0;787 }788789 /// @notice Transfer ownership of an RFT -- THE CALLER IS RESPONSIBLE790 /// TO CONFIRM THAT `to` IS CAPABLE OF RECEIVING NFTS OR ELSE791 /// THEY MAY BE PERMANENTLY LOST792 /// @dev Throws unless `msg.sender` is the current owner or an authorized793 /// operator for this RFT. Throws if `from` is not the current owner. Throws794 /// if `to` is the zero address. Throws if `tokenId` is not a valid RFT.795 /// Throws if RFT pieces have multiple owners.796 /// @param from The current owner of the NFT797 /// @param to The new owner798 /// @param tokenId The NFT to transfer799 /// @dev EVM selector for this function is: 0x23b872dd,800 /// or in textual repr: transferFrom(address,address,uint256)801 function transferFrom(802 address from,803 address to,804 uint256 tokenId805 ) public {806 require(false, stub_error);807 from;808 to;809 tokenId;810 dummy = 0;811 }812813 /// @dev Not implemented814 /// @dev EVM selector for this function is: 0x095ea7b3,815 /// or in textual repr: approve(address,uint256)816 function approve(address approved, uint256 tokenId) public {817 require(false, stub_error);818 approved;819 tokenId;820 dummy = 0;821 }822823 /// @dev Not implemented824 /// @dev EVM selector for this function is: 0xa22cb465,825 /// or in textual repr: setApprovalForAll(address,bool)826 function setApprovalForAll(address operator, bool approved) public {827 require(false, stub_error);828 operator;829 approved;830 dummy = 0;831 }832833 /// @dev Not implemented834 /// @dev EVM selector for this function is: 0x081812fc,835 /// or in textual repr: getApproved(uint256)836 function getApproved(uint256 tokenId) public view returns (address) {837 require(false, stub_error);838 tokenId;839 dummy;840 return 0x0000000000000000000000000000000000000000;841 }842843 /// @dev Not implemented844 /// @dev EVM selector for this function is: 0xe985e9c5,845 /// or in textual repr: isApprovedForAll(address,address)846 function isApprovedForAll(address owner, address operator) public view returns (address) {847 require(false, stub_error);848 owner;849 operator;850 dummy;851 return 0x0000000000000000000000000000000000000000;852 }853}854855contract UniqueRefungible is856 Dummy,857 ERC165,858 ERC721,859 ERC721Metadata,860 ERC721Enumerable,861 ERC721UniqueExtensions,862 ERC721Mintable,863 ERC721Burnable,864 Collection,865 TokenProperties866{}pallets/refungible/src/stubs/UniqueRefungibleToken.rawdiffbeforeafterbothbinary blob — no preview
pallets/refungible/src/stubs/UniqueRefungibleToken.soldiffbeforeafterboth--- a/pallets/refungible/src/stubs/UniqueRefungibleToken.sol
+++ b/pallets/refungible/src/stubs/UniqueRefungibleToken.sol
@@ -10,11 +10,7 @@
}
contract ERC165 is Dummy {
- function supportsInterface(bytes4 interfaceID)
- external
- view
- returns (bool)
- {
+ function supportsInterface(bytes4 interfaceID) external view returns (bool) {
require(false, stub_error);
interfaceID;
return true;
@@ -72,11 +68,7 @@
/// @dev inlined interface
contract ERC20Events {
event Transfer(address indexed from, address indexed to, uint256 value);
- event Approval(
- address indexed owner,
- address indexed spender,
- uint256 value
- );
+ event Approval(address indexed owner, address indexed spender, uint256 value);
}
/// @title Standard ERC20 token
@@ -188,11 +180,7 @@
/// @return A uint256 specifying the amount of tokens still available for the spender.
/// @dev EVM selector for this function is: 0xdd62ed3e,
/// or in textual repr: allowance(address,address)
- function allowance(address owner, address spender)
- public
- view
- returns (uint256)
- {
+ function allowance(address owner, address spender) public view returns (uint256) {
require(false, stub_error);
owner;
spender;
@@ -201,10 +189,4 @@
}
}
-contract UniqueRefungibleToken is
- Dummy,
- ERC165,
- ERC20,
- ERC20UniqueExtensions,
- ERC1633
-{}
+contract UniqueRefungibleToken is Dummy, ERC165, ERC20, ERC20UniqueExtensions, ERC1633 {}
pallets/unique/src/eth/stubs/CollectionHelpers.rawdiffbeforeafterbothbinary blob — no preview
tests/src/eth/api/ContractHelpers.soldiffbeforeafterboth--- a/tests/src/eth/api/ContractHelpers.sol
+++ b/tests/src/eth/api/ContractHelpers.sol
@@ -15,15 +15,12 @@
/// @dev inlined interface
interface ContractHelpersEvents {
event ContractSponsorSet(address indexed contractAddress, address sponsor);
- event ContractSponsorshipConfirmed(
- address indexed contractAddress,
- address sponsor
- );
+ event ContractSponsorshipConfirmed(address indexed contractAddress, address sponsor);
event ContractSponsorRemoved(address indexed contractAddress);
}
/// @title Magic contract, which allows users to reconfigure other contracts
-/// @dev the ERC-165 identifier for this interface is 0x172cb4fb
+/// @dev the ERC-165 identifier for this interface is 0x30afad04
interface ContractHelpers is Dummy, ERC165, ContractHelpersEvents {
/// Get user, which deployed specified contract
/// @dev May return zero address in case if contract is deployed
@@ -34,10 +31,7 @@
/// @return address Owner of contract
/// @dev EVM selector for this function is: 0x5152b14c,
/// or in textual repr: contractOwner(address)
- function contractOwner(address contractAddress)
- external
- view
- returns (address);
+ function contractOwner(address contractAddress) external view returns (address);
/// Set sponsor.
/// @param contractAddress Contract for which a sponsor is being established.
@@ -73,12 +67,9 @@
///
/// @param contractAddress The contract for which a sponsor is requested.
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- /// @dev EVM selector for this function is: 0x743fc745,
- /// or in textual repr: getSponsor(address)
- function getSponsor(address contractAddress)
- external
- view
- returns (Tuple0 memory);
+ /// @dev EVM selector for this function is: 0x766c4f37,
+ /// or in textual repr: sponsor(address)
+ function sponsor(address contractAddress) external view returns (Tuple0 memory);
/// Check tat contract has confirmed sponsor.
///
@@ -94,17 +85,11 @@
/// @return **true** if contract has pending sponsor.
/// @dev EVM selector for this function is: 0x39b9b242,
/// or in textual repr: hasPendingSponsor(address)
- function hasPendingSponsor(address contractAddress)
- external
- view
- returns (bool);
+ function hasPendingSponsor(address contractAddress) external view returns (bool);
/// @dev EVM selector for this function is: 0x6027dc61,
/// or in textual repr: sponsoringEnabled(address)
- function sponsoringEnabled(address contractAddress)
- external
- view
- returns (bool);
+ function sponsoringEnabled(address contractAddress) external view returns (bool);
/// @dev EVM selector for this function is: 0xfde8a560,
/// or in textual repr: setSponsoringMode(address,uint8)
@@ -113,12 +98,9 @@
/// Get current contract sponsoring rate limit
/// @param contractAddress Contract to get sponsoring rate limit of
/// @return uint32 Amount of blocks between two sponsored transactions
- /// @dev EVM selector for this function is: 0x610cfabd,
- /// or in textual repr: getSponsoringRateLimit(address)
- function getSponsoringRateLimit(address contractAddress)
- external
- view
- returns (uint32);
+ /// @dev EVM selector for this function is: 0xf29694d8,
+ /// or in textual repr: sponsoringRateLimit(address)
+ function sponsoringRateLimit(address contractAddress) external view returns (uint32);
/// Set contract sponsoring rate limit
/// @dev Sponsoring rate limit - is a minimum amount of blocks that should
@@ -128,8 +110,7 @@
/// @dev Only contract owner can change this setting
/// @dev EVM selector for this function is: 0x77b6c908,
/// or in textual repr: setSponsoringRateLimit(address,uint32)
- function setSponsoringRateLimit(address contractAddress, uint32 rateLimit)
- external;
+ function setSponsoringRateLimit(address contractAddress, uint32 rateLimit) external;
/// Set contract sponsoring fee limit
/// @dev Sponsoring fee limit - is maximum fee that could be spent by
@@ -139,19 +120,15 @@
/// @dev Only contract owner can change this setting
/// @dev EVM selector for this function is: 0x03aed665,
/// or in textual repr: setSponsoringFeeLimit(address,uint256)
- function setSponsoringFeeLimit(address contractAddress, uint256 feeLimit)
- external;
+ function setSponsoringFeeLimit(address contractAddress, uint256 feeLimit) external;
/// Get current contract sponsoring fee limit
/// @param contractAddress Contract to get sponsoring fee limit of
/// @return uint256 Maximum amount of fee that could be spent by single
/// transaction
- /// @dev EVM selector for this function is: 0xc3fdc9ee,
- /// or in textual repr: getSponsoringFeeLimit(address)
- function getSponsoringFeeLimit(address contractAddress)
- external
- view
- returns (uint256);
+ /// @dev EVM selector for this function is: 0x75b73606,
+ /// or in textual repr: sponsoringFeeLimit(address)
+ function sponsoringFeeLimit(address contractAddress) external view returns (uint256);
/// Is specified user present in contract allow list
/// @dev Contract owner always implicitly included
@@ -160,10 +137,7 @@
/// @return bool Is specified users exists in contract allowlist
/// @dev EVM selector for this function is: 0x5c658165,
/// or in textual repr: allowed(address,address)
- function allowed(address contractAddress, address user)
- external
- view
- returns (bool);
+ function allowed(address contractAddress, address user) external view returns (bool);
/// Toggle user presence in contract allowlist
/// @param contractAddress Contract to change allowlist of
@@ -187,10 +161,7 @@
/// @return bool Is specified contract has allowlist access enabled
/// @dev EVM selector for this function is: 0xc772ef6c,
/// or in textual repr: allowlistEnabled(address)
- function allowlistEnabled(address contractAddress)
- external
- view
- returns (bool);
+ function allowlistEnabled(address contractAddress) external view returns (bool);
/// Toggle contract allowlist access
/// @param contractAddress Contract to change allowlist access of
tests/src/eth/api/UniqueFungible.soldiffbeforeafterboth--- a/tests/src/eth/api/UniqueFungible.sol
+++ b/tests/src/eth/api/UniqueFungible.sol
@@ -13,7 +13,7 @@
}
/// @title A contract that allows you to work with collections.
-/// @dev the ERC-165 identifier for this interface is 0x9f70d4e0
+/// @dev the ERC-165 identifier for this interface is 0x47dbc105
interface Collection is Dummy, ERC165 {
/// Set collection property.
///
@@ -21,8 +21,7 @@
/// @param value Propery value.
/// @dev EVM selector for this function is: 0x2f073f66,
/// or in textual repr: setCollectionProperty(string,bytes)
- function setCollectionProperty(string memory key, bytes memory value)
- external;
+ function setCollectionProperty(string memory key, bytes memory value) external;
/// Delete collection property.
///
@@ -39,10 +38,7 @@
/// @return bytes The property corresponding to the key.
/// @dev EVM selector for this function is: 0xcf24fd6d,
/// or in textual repr: collectionProperty(string)
- function collectionProperty(string memory key)
- external
- view
- returns (bytes memory);
+ function collectionProperty(string memory key) external view returns (bytes memory);
/// Set the sponsor of the collection.
///
@@ -62,6 +58,7 @@
/// or in textual repr: setCollectionSponsorSubstrate(uint256)
function setCollectionSponsorSubstrate(uint256 sponsor) external;
+ /// Whether there is a pending sponsor.
/// @dev EVM selector for this function is: 0x058ac185,
/// or in textual repr: hasCollectionPendingSponsor()
function hasCollectionPendingSponsor() external view returns (bool);
@@ -81,9 +78,9 @@
/// Get current sponsor.
///
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- /// @dev EVM selector for this function is: 0xb66bbc14,
- /// or in textual repr: getCollectionSponsor()
- function getCollectionSponsor() external view returns (Tuple6 memory);
+ /// @dev EVM selector for this function is: 0x6ec0a9f1,
+ /// or in textual repr: collectionSponsor()
+ function collectionSponsor() external view returns (Tuple6 memory);
/// Set limits for the collection.
/// @dev Throws error if limit not found.
@@ -153,8 +150,7 @@
/// @param collections Addresses of collections that will be available for nesting.
/// @dev EVM selector for this function is: 0x64872396,
/// or in textual repr: setCollectionNesting(bool,address[])
- function setCollectionNesting(bool enable, address[] memory collections)
- external;
+ function setCollectionNesting(bool enable, address[] memory collections) external;
/// Set the collection access method.
/// @param mode Access mode
@@ -227,7 +223,7 @@
/// @return `Fungible` or `NFT` or `ReFungible`
/// @dev EVM selector for this function is: 0xd34b55b8,
/// or in textual repr: uniqueCollectionType()
- function uniqueCollectionType() external returns (string memory);
+ function uniqueCollectionType() external view returns (string memory);
/// Get collection owner.
///
@@ -291,11 +287,7 @@
/// @dev inlined interface
interface ERC20Events {
event Transfer(address indexed from, address indexed to, uint256 value);
- event Approval(
- address indexed owner,
- address indexed spender,
- uint256 value
- );
+ event Approval(address indexed owner, address indexed spender, uint256 value);
}
/// @dev the ERC-165 identifier for this interface is 0x942e8b22
@@ -338,17 +330,7 @@
/// @dev EVM selector for this function is: 0xdd62ed3e,
/// or in textual repr: allowance(address,address)
- function allowance(address owner, address spender)
- external
- view
- returns (uint256);
+ function allowance(address owner, address spender) external view returns (uint256);
}
-interface UniqueFungible is
- Dummy,
- ERC165,
- ERC20,
- ERC20Mintable,
- ERC20UniqueExtensions,
- Collection
-{}
+interface UniqueFungible is Dummy, ERC165, ERC20, ERC20Mintable, ERC20UniqueExtensions, Collection {}
tests/src/eth/api/UniqueNFT.soldiffbeforeafterboth--- a/tests/src/eth/api/UniqueNFT.sol
+++ b/tests/src/eth/api/UniqueNFT.sol
@@ -58,14 +58,11 @@
/// @return Property value bytes
/// @dev EVM selector for this function is: 0x7228c327,
/// or in textual repr: property(uint256,string)
- function property(uint256 tokenId, string memory key)
- external
- view
- returns (bytes memory);
+ function property(uint256 tokenId, string memory key) external view returns (bytes memory);
}
/// @title A contract that allows you to work with collections.
-/// @dev the ERC-165 identifier for this interface is 0x9f70d4e0
+/// @dev the ERC-165 identifier for this interface is 0x47dbc105
interface Collection is Dummy, ERC165 {
/// Set collection property.
///
@@ -73,8 +70,7 @@
/// @param value Propery value.
/// @dev EVM selector for this function is: 0x2f073f66,
/// or in textual repr: setCollectionProperty(string,bytes)
- function setCollectionProperty(string memory key, bytes memory value)
- external;
+ function setCollectionProperty(string memory key, bytes memory value) external;
/// Delete collection property.
///
@@ -91,10 +87,7 @@
/// @return bytes The property corresponding to the key.
/// @dev EVM selector for this function is: 0xcf24fd6d,
/// or in textual repr: collectionProperty(string)
- function collectionProperty(string memory key)
- external
- view
- returns (bytes memory);
+ function collectionProperty(string memory key) external view returns (bytes memory);
/// Set the sponsor of the collection.
///
@@ -114,6 +107,7 @@
/// or in textual repr: setCollectionSponsorSubstrate(uint256)
function setCollectionSponsorSubstrate(uint256 sponsor) external;
+ /// Whether there is a pending sponsor.
/// @dev EVM selector for this function is: 0x058ac185,
/// or in textual repr: hasCollectionPendingSponsor()
function hasCollectionPendingSponsor() external view returns (bool);
@@ -133,9 +127,9 @@
/// Get current sponsor.
///
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- /// @dev EVM selector for this function is: 0xb66bbc14,
- /// or in textual repr: getCollectionSponsor()
- function getCollectionSponsor() external view returns (Tuple17 memory);
+ /// @dev EVM selector for this function is: 0x6ec0a9f1,
+ /// or in textual repr: collectionSponsor()
+ function collectionSponsor() external view returns (Tuple17 memory);
/// Set limits for the collection.
/// @dev Throws error if limit not found.
@@ -205,8 +199,7 @@
/// @param collections Addresses of collections that will be available for nesting.
/// @dev EVM selector for this function is: 0x64872396,
/// or in textual repr: setCollectionNesting(bool,address[])
- function setCollectionNesting(bool enable, address[] memory collections)
- external;
+ function setCollectionNesting(bool enable, address[] memory collections) external;
/// Set the collection access method.
/// @param mode Access mode
@@ -279,7 +272,7 @@
/// @return `Fungible` or `NFT` or `ReFungible`
/// @dev EVM selector for this function is: 0xd34b55b8,
/// or in textual repr: uniqueCollectionType()
- function uniqueCollectionType() external returns (string memory);
+ function uniqueCollectionType() external view returns (string memory);
/// Get collection owner.
///
@@ -399,9 +392,7 @@
/// @param tokenIds IDs of the minted NFTs
/// @dev EVM selector for this function is: 0x44a9945e,
/// or in textual repr: mintBulk(address,uint256[])
- function mintBulk(address to, uint256[] memory tokenIds)
- external
- returns (bool);
+ function mintBulk(address to, uint256[] memory tokenIds) external returns (bool);
/// @notice Function to mint multiple tokens with the given tokenUris.
/// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive
@@ -410,9 +401,7 @@
/// @param tokens array of pairs of token ID and token URI for minted tokens
/// @dev EVM selector for this function is: 0x36543006,
/// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])
- function mintBulkWithTokenURI(address to, Tuple8[] memory tokens)
- external
- returns (bool);
+ function mintBulkWithTokenURI(address to, Tuple8[] memory tokens) external returns (bool);
}
/// @dev anonymous struct
@@ -436,10 +425,7 @@
/// @dev Not implemented
/// @dev EVM selector for this function is: 0x2f745c59,
/// or in textual repr: tokenOfOwnerByIndex(address,uint256)
- function tokenOfOwnerByIndex(address owner, uint256 index)
- external
- view
- returns (uint256);
+ function tokenOfOwnerByIndex(address owner, uint256 index) external view returns (uint256);
/// @notice Count NFTs tracked by this contract
/// @return A count of valid NFTs tracked by this contract, where each one of
@@ -479,21 +465,9 @@
/// @dev inlined interface
interface ERC721Events {
- event Transfer(
- address indexed from,
- address indexed to,
- uint256 indexed tokenId
- );
- event Approval(
- address indexed owner,
- address indexed approved,
- uint256 indexed tokenId
- );
- event ApprovalForAll(
- address indexed owner,
- address indexed operator,
- bool approved
- );
+ event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
+ event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
+ event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
}
/// @title ERC-721 Non-Fungible Token Standard
@@ -577,10 +551,7 @@
/// @dev Not implemented
/// @dev EVM selector for this function is: 0xe985e9c5,
/// or in textual repr: isApprovedForAll(address,address)
- function isApprovedForAll(address owner, address operator)
- external
- view
- returns (address);
+ function isApprovedForAll(address owner, address operator) external view returns (address);
}
interface UniqueNFT is
tests/src/eth/api/UniqueRefungible.soldiffbeforeafterboth--- a/tests/src/eth/api/UniqueRefungible.sol
+++ b/tests/src/eth/api/UniqueRefungible.sol
@@ -58,14 +58,11 @@
/// @return Property value bytes
/// @dev EVM selector for this function is: 0x7228c327,
/// or in textual repr: property(uint256,string)
- function property(uint256 tokenId, string memory key)
- external
- view
- returns (bytes memory);
+ function property(uint256 tokenId, string memory key) external view returns (bytes memory);
}
/// @title A contract that allows you to work with collections.
-/// @dev the ERC-165 identifier for this interface is 0x9f70d4e0
+/// @dev the ERC-165 identifier for this interface is 0x47dbc105
interface Collection is Dummy, ERC165 {
/// Set collection property.
///
@@ -73,8 +70,7 @@
/// @param value Propery value.
/// @dev EVM selector for this function is: 0x2f073f66,
/// or in textual repr: setCollectionProperty(string,bytes)
- function setCollectionProperty(string memory key, bytes memory value)
- external;
+ function setCollectionProperty(string memory key, bytes memory value) external;
/// Delete collection property.
///
@@ -91,10 +87,7 @@
/// @return bytes The property corresponding to the key.
/// @dev EVM selector for this function is: 0xcf24fd6d,
/// or in textual repr: collectionProperty(string)
- function collectionProperty(string memory key)
- external
- view
- returns (bytes memory);
+ function collectionProperty(string memory key) external view returns (bytes memory);
/// Set the sponsor of the collection.
///
@@ -114,6 +107,7 @@
/// or in textual repr: setCollectionSponsorSubstrate(uint256)
function setCollectionSponsorSubstrate(uint256 sponsor) external;
+ /// Whether there is a pending sponsor.
/// @dev EVM selector for this function is: 0x058ac185,
/// or in textual repr: hasCollectionPendingSponsor()
function hasCollectionPendingSponsor() external view returns (bool);
@@ -133,9 +127,9 @@
/// Get current sponsor.
///
/// @return Tuble with sponsor address and his substrate mirror. If there is no confirmed sponsor error "Contract has no sponsor" throw.
- /// @dev EVM selector for this function is: 0xb66bbc14,
- /// or in textual repr: getCollectionSponsor()
- function getCollectionSponsor() external view returns (Tuple17 memory);
+ /// @dev EVM selector for this function is: 0x6ec0a9f1,
+ /// or in textual repr: collectionSponsor()
+ function collectionSponsor() external view returns (Tuple17 memory);
/// Set limits for the collection.
/// @dev Throws error if limit not found.
@@ -205,8 +199,7 @@
/// @param collections Addresses of collections that will be available for nesting.
/// @dev EVM selector for this function is: 0x64872396,
/// or in textual repr: setCollectionNesting(bool,address[])
- function setCollectionNesting(bool enable, address[] memory collections)
- external;
+ function setCollectionNesting(bool enable, address[] memory collections) external;
/// Set the collection access method.
/// @param mode Access mode
@@ -279,7 +272,7 @@
/// @return `Fungible` or `NFT` or `ReFungible`
/// @dev EVM selector for this function is: 0xd34b55b8,
/// or in textual repr: uniqueCollectionType()
- function uniqueCollectionType() external returns (string memory);
+ function uniqueCollectionType() external view returns (string memory);
/// Get collection owner.
///
@@ -401,9 +394,7 @@
/// @param tokenIds IDs of the minted RFTs
/// @dev EVM selector for this function is: 0x44a9945e,
/// or in textual repr: mintBulk(address,uint256[])
- function mintBulk(address to, uint256[] memory tokenIds)
- external
- returns (bool);
+ function mintBulk(address to, uint256[] memory tokenIds) external returns (bool);
/// @notice Function to mint multiple tokens with the given tokenUris.
/// @dev `tokenIds` is array of pairs of token ID and token URI. Token IDs should be consecutive
@@ -412,19 +403,14 @@
/// @param tokens array of pairs of token ID and token URI for minted tokens
/// @dev EVM selector for this function is: 0x36543006,
/// or in textual repr: mintBulkWithTokenURI(address,(uint256,string)[])
- function mintBulkWithTokenURI(address to, Tuple8[] memory tokens)
- external
- returns (bool);
+ function mintBulkWithTokenURI(address to, Tuple8[] memory tokens) external returns (bool);
/// Returns EVM address for refungible token
///
/// @param token ID of the token
/// @dev EVM selector for this function is: 0xab76fac6,
/// or in textual repr: tokenContractAddress(uint256)
- function tokenContractAddress(uint256 token)
- external
- view
- returns (address);
+ function tokenContractAddress(uint256 token) external view returns (address);
}
/// @dev anonymous struct
@@ -448,10 +434,7 @@
/// Not implemented
/// @dev EVM selector for this function is: 0x2f745c59,
/// or in textual repr: tokenOfOwnerByIndex(address,uint256)
- function tokenOfOwnerByIndex(address owner, uint256 index)
- external
- view
- returns (uint256);
+ function tokenOfOwnerByIndex(address owner, uint256 index) external view returns (uint256);
/// @notice Count RFTs tracked by this contract
/// @return A count of valid RFTs tracked by this contract, where each one of
@@ -489,21 +472,9 @@
/// @dev inlined interface
interface ERC721Events {
- event Transfer(
- address indexed from,
- address indexed to,
- uint256 indexed tokenId
- );
- event Approval(
- address indexed owner,
- address indexed approved,
- uint256 indexed tokenId
- );
- event ApprovalForAll(
- address indexed owner,
- address indexed operator,
- bool approved
- );
+ event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
+ event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
+ event ApprovalForAll(address indexed owner, address indexed operator, bool approved);
}
/// @title ERC-721 Non-Fungible Token Standard
@@ -585,10 +556,7 @@
/// @dev Not implemented
/// @dev EVM selector for this function is: 0xe985e9c5,
/// or in textual repr: isApprovedForAll(address,address)
- function isApprovedForAll(address owner, address operator)
- external
- view
- returns (address);
+ function isApprovedForAll(address owner, address operator) external view returns (address);
}
interface UniqueRefungible is
tests/src/eth/api/UniqueRefungibleToken.soldiffbeforeafterboth--- a/tests/src/eth/api/UniqueRefungibleToken.sol
+++ b/tests/src/eth/api/UniqueRefungibleToken.sol
@@ -44,11 +44,7 @@
/// @dev inlined interface
interface ERC20Events {
event Transfer(address indexed from, address indexed to, uint256 value);
- event Approval(
- address indexed owner,
- address indexed spender,
- uint256 value
- );
+ event Approval(address indexed owner, address indexed spender, uint256 value);
}
/// @title Standard ERC20 token
@@ -120,16 +116,7 @@
/// @return A uint256 specifying the amount of tokens still available for the spender.
/// @dev EVM selector for this function is: 0xdd62ed3e,
/// or in textual repr: allowance(address,address)
- function allowance(address owner, address spender)
- external
- view
- returns (uint256);
+ function allowance(address owner, address spender) external view returns (uint256);
}
-interface UniqueRefungibleToken is
- Dummy,
- ERC165,
- ERC20,
- ERC20UniqueExtensions,
- ERC1633
-{}
+interface UniqueRefungibleToken is Dummy, ERC165, ERC20, ERC20UniqueExtensions, ERC1633 {}
tests/src/eth/collectionSponsoring.test.tsdiffbeforeafterboth--- a/tests/src/eth/collectionSponsoring.test.ts
+++ b/tests/src/eth/collectionSponsoring.test.ts
@@ -56,7 +56,7 @@
await submitTransactionAsync(sponsor, confirmTx);
expect(await collectionEvm.methods.hasCollectionPendingSponsor().call({from: owner})).to.be.false;
- const sponsorTuple = await collectionEvm.methods.getCollectionSponsor().call({from: owner});
+ const sponsorTuple = await collectionEvm.methods.collectionSponsor().call({from: owner});
expect(bigIntToSub(api, BigInt(sponsorTuple[1]))).to.be.eq(sponsor.address);
});
@@ -77,7 +77,7 @@
await collectionEvm.methods.removeCollectionSponsor().send({from: owner});
- const sponsorTuple = await collectionEvm.methods.getCollectionSponsor().call({from: owner});
+ const sponsorTuple = await collectionEvm.methods.collectionSponsor().call({from: owner});
expect(sponsorTuple.field_0).to.be.eq('0x0000000000000000000000000000000000000000');
});
tests/src/eth/contractSponsoring.test.tsdiffbeforeafterboth--- a/tests/src/eth/contractSponsoring.test.ts
+++ b/tests/src/eth/contractSponsoring.test.ts
@@ -223,7 +223,7 @@
const helpers = contractHelpers(web3, owner);
await helpers.methods.selfSponsoredEnable(flipper.options.address).send();
- const result = await helpers.methods.getSponsor(flipper.options.address).call();
+ const result = await helpers.methods.sponsor(flipper.options.address).call();
expect(result[0]).to.be.eq(flipper.options.address);
expect(result[1]).to.be.eq('0');
@@ -237,7 +237,7 @@
await helpers.methods.setSponsor(flipper.options.address, sponsor).send();
await helpers.methods.confirmSponsorship(flipper.options.address).send({from: sponsor});
- const result = await helpers.methods.getSponsor(flipper.options.address).call();
+ const result = await helpers.methods.sponsor(flipper.options.address).call();
expect(result[0]).to.be.eq(sponsor);
expect(result[1]).to.be.eq('0');
@@ -482,7 +482,7 @@
const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);
const flipper = await deployFlipper(web3, owner);
const helpers = contractHelpers(web3, owner);
- expect(await helpers.methods.getSponsoringRateLimit(flipper.options.address).call()).to.be.equals('7200');
+ expect(await helpers.methods.sponsoringRateLimit(flipper.options.address).call()).to.be.equals('7200');
});
});
@@ -551,7 +551,7 @@
const owner = await createEthAccountWithBalance(api, web3, privateKeyWrapper);
const flipper = await deployFlipper(web3, owner);
const helpers = contractHelpers(web3, owner);
- expect(await helpers.methods.getSponsoringFeeLimit(flipper.options.address).call()).to.be.equals('115792089237316195423570985008687907853269984665640564039457584007913129639935');
+ expect(await helpers.methods.sponsoringFeeLimit(flipper.options.address).call()).to.be.equals('115792089237316195423570985008687907853269984665640564039457584007913129639935');
});
itWeb3('Set fee limit', async ({api, web3, privateKeyWrapper}) => {
@@ -559,7 +559,7 @@
const flipper = await deployFlipper(web3, owner);
const helpers = contractHelpers(web3, owner);
await helpers.methods.setSponsoringFeeLimit(flipper.options.address, 100).send();
- expect(await helpers.methods.getSponsoringFeeLimit(flipper.options.address).call()).to.be.equals('100');
+ expect(await helpers.methods.sponsoringFeeLimit(flipper.options.address).call()).to.be.equals('100');
});
itWeb3('Negative test - set fee limit by non-owner', async ({api, web3, privateKeyWrapper}) => {
tests/src/eth/fungibleAbi.jsondiffbeforeafterboth--- a/tests/src/eth/fungibleAbi.json
+++ b/tests/src/eth/fungibleAbi.json
@@ -159,6 +159,23 @@
},
{
"inputs": [],
+ "name": "collectionSponsor",
+ "outputs": [
+ {
+ "components": [
+ { "internalType": "address", "name": "field_0", "type": "address" },
+ { "internalType": "uint256", "name": "field_1", "type": "uint256" }
+ ],
+ "internalType": "struct Tuple6",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
"name": "confirmCollectionSponsorship",
"outputs": [],
"stateMutability": "nonpayable",
@@ -183,23 +200,6 @@
"name": "deleteCollectionProperty",
"outputs": [],
"stateMutability": "nonpayable",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getCollectionSponsor",
- "outputs": [
- {
- "components": [
- { "internalType": "address", "name": "field_0", "type": "address" },
- { "internalType": "uint256", "name": "field_1", "type": "uint256" }
- ],
- "internalType": "struct Tuple6",
- "name": "",
- "type": "tuple"
- }
- ],
- "stateMutability": "view",
"type": "function"
},
{
@@ -453,7 +453,7 @@
"inputs": [],
"name": "uniqueCollectionType",
"outputs": [{ "internalType": "string", "name": "", "type": "string" }],
- "stateMutability": "nonpayable",
+ "stateMutability": "view",
"type": "function"
}
]
tests/src/eth/nonFungibleAbi.jsondiffbeforeafterboth--- a/tests/src/eth/nonFungibleAbi.json
+++ b/tests/src/eth/nonFungibleAbi.json
@@ -189,6 +189,23 @@
},
{
"inputs": [],
+ "name": "collectionSponsor",
+ "outputs": [
+ {
+ "components": [
+ { "internalType": "address", "name": "field_0", "type": "address" },
+ { "internalType": "uint256", "name": "field_1", "type": "uint256" }
+ ],
+ "internalType": "struct Tuple17",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
"name": "confirmCollectionSponsorship",
"outputs": [],
"stateMutability": "nonpayable",
@@ -231,23 +248,6 @@
],
"name": "getApproved",
"outputs": [{ "internalType": "address", "name": "", "type": "address" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getCollectionSponsor",
- "outputs": [
- {
- "components": [
- { "internalType": "address", "name": "field_0", "type": "address" },
- { "internalType": "uint256", "name": "field_1", "type": "uint256" }
- ],
- "internalType": "struct Tuple17",
- "name": "",
- "type": "tuple"
- }
- ],
"stateMutability": "view",
"type": "function"
},
@@ -651,7 +651,7 @@
"inputs": [],
"name": "uniqueCollectionType",
"outputs": [{ "internalType": "string", "name": "", "type": "string" }],
- "stateMutability": "nonpayable",
+ "stateMutability": "view",
"type": "function"
}
]
tests/src/eth/reFungibleAbi.jsondiffbeforeafterboth--- a/tests/src/eth/reFungibleAbi.json
+++ b/tests/src/eth/reFungibleAbi.json
@@ -189,6 +189,23 @@
},
{
"inputs": [],
+ "name": "collectionSponsor",
+ "outputs": [
+ {
+ "components": [
+ { "internalType": "address", "name": "field_0", "type": "address" },
+ { "internalType": "uint256", "name": "field_1", "type": "uint256" }
+ ],
+ "internalType": "struct Tuple17",
+ "name": "",
+ "type": "tuple"
+ }
+ ],
+ "stateMutability": "view",
+ "type": "function"
+ },
+ {
+ "inputs": [],
"name": "confirmCollectionSponsorship",
"outputs": [],
"stateMutability": "nonpayable",
@@ -231,23 +248,6 @@
],
"name": "getApproved",
"outputs": [{ "internalType": "address", "name": "", "type": "address" }],
- "stateMutability": "view",
- "type": "function"
- },
- {
- "inputs": [],
- "name": "getCollectionSponsor",
- "outputs": [
- {
- "components": [
- { "internalType": "address", "name": "field_0", "type": "address" },
- { "internalType": "uint256", "name": "field_1", "type": "uint256" }
- ],
- "internalType": "struct Tuple17",
- "name": "",
- "type": "tuple"
- }
- ],
"stateMutability": "view",
"type": "function"
},
@@ -660,7 +660,7 @@
"inputs": [],
"name": "uniqueCollectionType",
"outputs": [{ "internalType": "string", "name": "", "type": "string" }],
- "stateMutability": "nonpayable",
+ "stateMutability": "view",
"type": "function"
}
]
tests/src/eth/util/contractHelpersAbi.jsondiffbeforeafterboth--- a/tests/src/eth/util/contractHelpersAbi.json
+++ b/tests/src/eth/util/contractHelpersAbi.json
@@ -111,18 +111,8 @@
"type": "address"
}
],
- "name": "getSponsor",
- "outputs": [
- {
- "components": [
- { "internalType": "address", "name": "field_0", "type": "address" },
- { "internalType": "uint256", "name": "field_1", "type": "uint256" }
- ],
- "internalType": "struct Tuple0",
- "name": "",
- "type": "tuple"
- }
- ],
+ "name": "hasPendingSponsor",
+ "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
"stateMutability": "view",
"type": "function"
},
@@ -134,8 +124,8 @@
"type": "address"
}
],
- "name": "getSponsoringFeeLimit",
- "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
+ "name": "hasSponsor",
+ "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
"stateMutability": "view",
"type": "function"
},
@@ -147,9 +137,9 @@
"type": "address"
}
],
- "name": "getSponsoringRateLimit",
- "outputs": [{ "internalType": "uint32", "name": "", "type": "uint32" }],
- "stateMutability": "view",
+ "name": "removeSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
"type": "function"
},
{
@@ -160,9 +150,9 @@
"type": "address"
}
],
- "name": "hasPendingSponsor",
- "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
- "stateMutability": "view",
+ "name": "selfSponsoredEnable",
+ "outputs": [],
+ "stateMutability": "nonpayable",
"type": "function"
},
{
@@ -171,11 +161,12 @@
"internalType": "address",
"name": "contractAddress",
"type": "address"
- }
+ },
+ { "internalType": "address", "name": "sponsor", "type": "address" }
],
- "name": "hasSponsor",
- "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
- "stateMutability": "view",
+ "name": "setSponsor",
+ "outputs": [],
+ "stateMutability": "nonpayable",
"type": "function"
},
{
@@ -184,9 +175,10 @@
"internalType": "address",
"name": "contractAddress",
"type": "address"
- }
+ },
+ { "internalType": "uint256", "name": "feeLimit", "type": "uint256" }
],
- "name": "removeSponsor",
+ "name": "setSponsoringFeeLimit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
@@ -197,9 +189,10 @@
"internalType": "address",
"name": "contractAddress",
"type": "address"
- }
+ },
+ { "internalType": "uint8", "name": "mode", "type": "uint8" }
],
- "name": "selfSponsoredEnable",
+ "name": "setSponsoringMode",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
@@ -211,9 +204,9 @@
"name": "contractAddress",
"type": "address"
},
- { "internalType": "address", "name": "sponsor", "type": "address" }
+ { "internalType": "uint32", "name": "rateLimit", "type": "uint32" }
],
- "name": "setSponsor",
+ "name": "setSponsoringRateLimit",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
@@ -224,12 +217,21 @@
"internalType": "address",
"name": "contractAddress",
"type": "address"
- },
- { "internalType": "uint256", "name": "feeLimit", "type": "uint256" }
+ }
+ ],
+ "name": "sponsor",
+ "outputs": [
+ {
+ "components": [
+ { "internalType": "address", "name": "field_0", "type": "address" },
+ { "internalType": "uint256", "name": "field_1", "type": "uint256" }
+ ],
+ "internalType": "struct Tuple0",
+ "name": "",
+ "type": "tuple"
+ }
],
- "name": "setSponsoringFeeLimit",
- "outputs": [],
- "stateMutability": "nonpayable",
+ "stateMutability": "view",
"type": "function"
},
{
@@ -238,12 +240,11 @@
"internalType": "address",
"name": "contractAddress",
"type": "address"
- },
- { "internalType": "uint8", "name": "mode", "type": "uint8" }
+ }
],
- "name": "setSponsoringMode",
- "outputs": [],
- "stateMutability": "nonpayable",
+ "name": "sponsoringEnabled",
+ "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
+ "stateMutability": "view",
"type": "function"
},
{
@@ -252,12 +253,11 @@
"internalType": "address",
"name": "contractAddress",
"type": "address"
- },
- { "internalType": "uint32", "name": "rateLimit", "type": "uint32" }
+ }
],
- "name": "setSponsoringRateLimit",
- "outputs": [],
- "stateMutability": "nonpayable",
+ "name": "sponsoringFeeLimit",
+ "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
+ "stateMutability": "view",
"type": "function"
},
{
@@ -268,8 +268,8 @@
"type": "address"
}
],
- "name": "sponsoringEnabled",
- "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],
+ "name": "sponsoringRateLimit",
+ "outputs": [{ "internalType": "uint32", "name": "", "type": "uint32" }],
"stateMutability": "view",
"type": "function"
},