difftreelog
name anonymous tuples
in: master
15 files changed
pallets/common/src/eth.rsdiffbeforeafterboth--- a/pallets/common/src/eth.rs
+++ b/pallets/common/src/eth.rs
@@ -18,7 +18,10 @@
use alloc::format;
use sp_std::{vec, vec::Vec};
-use evm_coder::{AbiCoder, types::Address};
+use evm_coder::{
+ AbiCoder,
+ types::{Address, String},
+};
pub use pallet_evm::{Config, account::CrossAccountId};
use sp_core::{H160, U256};
use up_data_structs::CollectionId;
@@ -390,6 +393,16 @@
}
}
+/// Data for creation token with uri.
+#[derive(Debug, AbiCoder)]
+pub struct TokenUri {
+ /// Id of new token.
+ pub id: U256,
+
+ /// Uri of new token.
+ pub uri: String,
+}
+
/// Nested collections.
#[derive(Debug, Default, AbiCoder)]
pub struct CollectionNesting {
pallets/fungible/src/erc.rsdiffbeforeafterboth--- a/pallets/fungible/src/erc.rs
+++ b/pallets/fungible/src/erc.rs
@@ -6,7 +6,7 @@
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
-// Unique Network is distributed in the hope that it will be useful,
+// Unique Network is disaddress: tod in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
@@ -19,6 +19,7 @@
extern crate alloc;
use core::char::{REPLACEMENT_CHARACTER, decode_utf16};
use core::convert::TryInto;
+use evm_coder::AbiCoder;
use evm_coder::{
abi::AbiType, ToLog, execution::*, generate_stubgen, solidity, solidity_interface, types::*,
weight,
@@ -57,6 +58,12 @@
},
}
+#[derive(AbiCoder, Debug)]
+pub struct AmountForAddress {
+ to: Address,
+ amount: U256,
+}
+
#[solidity_interface(name = ERC20, events(ERC20Events), expect_selector = 0x942e8b22)]
impl<T: Config> FungibleHandle<T> {
fn name(&self) -> Result<String> {
@@ -264,14 +271,14 @@
/// Mint tokens for multiple accounts.
/// @param amounts array of pairs of account address and amount
#[weight(<SelfWeightOf<T>>::create_multiple_items_ex(amounts.len() as u32))]
- fn mint_bulk(&mut self, caller: Caller, amounts: Vec<(Address, U256)>) -> Result<bool> {
+ fn mint_bulk(&mut self, caller: Caller, amounts: Vec<AmountForAddress>) -> Result<bool> {
let caller = T::CrossAccountId::from_eth(caller);
let budget = self
.recorder
.weight_calls_budget(<StructureWeight<T>>::find_parent());
let amounts = amounts
.into_iter()
- .map(|(to, amount)| {
+ .map(|AmountForAddress { to, amount }| {
Ok((
T::CrossAccountId::from_eth(to),
amount.try_into().map_err(|_| "amount overflow")?,
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
@@ -590,7 +590,7 @@
/// @param amounts array of pairs of account address and amount
/// @dev EVM selector for this function is: 0x1acf2d55,
/// or in textual repr: mintBulk((address,uint256)[])
- function mintBulk(Tuple11[] memory amounts) public returns (bool) {
+ function mintBulk(AmountForAddress[] memory amounts) public returns (bool) {
require(false, stub_error);
amounts;
dummy = 0;
@@ -632,10 +632,9 @@
}
}
-/// @dev anonymous struct
-struct Tuple11 {
- address field_0;
- uint256 field_1;
+struct AmountForAddress {
+ address to;
+ uint256 amount;
}
/// @dev the ERC-165 identifier for this interface is 0x40c10f19
pallets/nonfungible/src/erc.rsdiffbeforeafterboth--- a/pallets/nonfungible/src/erc.rs
+++ b/pallets/nonfungible/src/erc.rs
@@ -38,7 +38,7 @@
use pallet_common::{
CollectionHandle, CollectionPropertyPermissions, CommonCollectionOperations,
erc::{CommonEvmHandler, PrecompileResult, CollectionCall, static_property::key},
- eth,
+ eth::{self, TokenUri},
};
use pallet_evm::{account::CrossAccountId, PrecompileHandle};
use pallet_evm_coder_substrate::call;
@@ -948,7 +948,7 @@
&mut self,
caller: Caller,
to: Address,
- tokens: Vec<(U256, String)>,
+ tokens: Vec<TokenUri>,
) -> Result<bool> {
let key = key::url();
let caller = T::CrossAccountId::from_eth(caller);
@@ -961,7 +961,7 @@
.weight_calls_budget(<StructureWeight<T>>::find_parent());
let mut data = Vec::with_capacity(tokens.len());
- for (id, token_uri) in tokens {
+ for TokenUri { id, uri } in tokens {
let id: u32 = id.try_into().map_err(|_| "token id overflow")?;
if id != expected_index {
return Err("item id should be next".into());
@@ -972,7 +972,7 @@
properties
.try_push(Property {
key: key.clone(),
- value: token_uri
+ value: uri
.into_bytes()
.try_into()
.map_err(|_| "token uri is too long")?,
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
@@ -949,7 +949,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, Tuple15[] memory tokens) public returns (bool) {
+ // function mintBulkWithTokenURI(address to, TokenUri[] memory tokens) public returns (bool) {
// require(false, stub_error);
// to;
// tokens;
@@ -981,10 +981,12 @@
}
}
-/// @dev anonymous struct
-struct Tuple15 {
- uint256 field_0;
- string field_1;
+/// Data for creation token with uri.
+struct TokenUri {
+ /// Id of new token.
+ uint256 id;
+ /// Uri of new token.
+ string uri;
}
/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension
pallets/refungible/src/erc.rsdiffbeforeafterboth--- a/pallets/refungible/src/erc.rs
+++ b/pallets/refungible/src/erc.rs
@@ -34,7 +34,7 @@
CollectionHandle, CollectionPropertyPermissions, CommonCollectionOperations,
Error as CommonError,
erc::{CommonEvmHandler, CollectionCall, static_property::key},
- eth,
+ eth::{self, TokenUri},
};
use pallet_evm::{account::CrossAccountId, PrecompileHandle};
use pallet_evm_coder_substrate::{call, dispatch_to_evm};
@@ -999,7 +999,7 @@
&mut self,
caller: Caller,
to: Address,
- tokens: Vec<(U256, String)>,
+ tokens: Vec<TokenUri>,
) -> Result<bool> {
let key = key::url();
let caller = T::CrossAccountId::from_eth(caller);
@@ -1017,7 +1017,7 @@
.collect::<BTreeMap<_, _>>()
.try_into()
.unwrap();
- for (id, token_uri) in tokens {
+ for TokenUri { id, uri } in tokens {
let id: u32 = id.try_into().map_err(|_| "token id overflow")?;
if id != expected_index {
return Err("item id should be next".into());
@@ -1028,7 +1028,7 @@
properties
.try_push(Property {
key: key.clone(),
- value: token_uri
+ value: uri
.into_bytes()
.try_into()
.map_err(|_| "token uri is too long")?,
pallets/refungible/src/stubs/UniqueRefungible.rawdiffbeforeafterbothbinary blob — no preview
pallets/refungible/src/stubs/UniqueRefungible.soldiffbeforeafterboth--- a/pallets/refungible/src/stubs/UniqueRefungible.sol
+++ b/pallets/refungible/src/stubs/UniqueRefungible.sol
@@ -938,7 +938,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, Tuple14[] memory tokens) public returns (bool) {
+ // function mintBulkWithTokenURI(address to, TokenUri[] memory tokens) public returns (bool) {
// require(false, stub_error);
// to;
// tokens;
@@ -982,10 +982,12 @@
}
}
-/// @dev anonymous struct
-struct Tuple14 {
- uint256 field_0;
- string field_1;
+/// Data for creation token with uri.
+struct TokenUri {
+ /// Id of new token.
+ uint256 id;
+ /// Uri of new token.
+ string uri;
}
/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension
tests/src/eth/abi/fungible.jsondiffbeforeafterboth1[2 {3 "anonymous": false,4 "inputs": [5 {6 "indexed": true,7 "internalType": "address",8 "name": "owner",9 "type": "address"10 },11 {12 "indexed": true,13 "internalType": "address",14 "name": "spender",15 "type": "address"16 },17 {18 "indexed": false,19 "internalType": "uint256",20 "name": "value",21 "type": "uint256"22 }23 ],24 "name": "Approval",25 "type": "event"26 },27 {28 "anonymous": false,29 "inputs": [30 {31 "indexed": true,32 "internalType": "address",33 "name": "from",34 "type": "address"35 },36 {37 "indexed": true,38 "internalType": "address",39 "name": "to",40 "type": "address"41 },42 {43 "indexed": false,44 "internalType": "uint256",45 "name": "value",46 "type": "uint256"47 }48 ],49 "name": "Transfer",50 "type": "event"51 },52 {53 "inputs": [54 {55 "components": [56 { "internalType": "address", "name": "eth", "type": "address" },57 { "internalType": "uint256", "name": "sub", "type": "uint256" }58 ],59 "internalType": "struct CrossAddress",60 "name": "newAdmin",61 "type": "tuple"62 }63 ],64 "name": "addCollectionAdminCross",65 "outputs": [],66 "stateMutability": "nonpayable",67 "type": "function"68 },69 {70 "inputs": [71 {72 "components": [73 { "internalType": "address", "name": "eth", "type": "address" },74 { "internalType": "uint256", "name": "sub", "type": "uint256" }75 ],76 "internalType": "struct CrossAddress",77 "name": "user",78 "type": "tuple"79 }80 ],81 "name": "addToCollectionAllowListCross",82 "outputs": [],83 "stateMutability": "nonpayable",84 "type": "function"85 },86 {87 "inputs": [88 { "internalType": "address", "name": "owner", "type": "address" },89 { "internalType": "address", "name": "spender", "type": "address" }90 ],91 "name": "allowance",92 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],93 "stateMutability": "view",94 "type": "function"95 },96 {97 "inputs": [98 {99 "components": [100 { "internalType": "address", "name": "eth", "type": "address" },101 { "internalType": "uint256", "name": "sub", "type": "uint256" }102 ],103 "internalType": "struct CrossAddress",104 "name": "owner",105 "type": "tuple"106 },107 {108 "components": [109 { "internalType": "address", "name": "eth", "type": "address" },110 { "internalType": "uint256", "name": "sub", "type": "uint256" }111 ],112 "internalType": "struct CrossAddress",113 "name": "spender",114 "type": "tuple"115 }116 ],117 "name": "allowanceCross",118 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],119 "stateMutability": "view",120 "type": "function"121 },122 {123 "inputs": [124 {125 "components": [126 { "internalType": "address", "name": "eth", "type": "address" },127 { "internalType": "uint256", "name": "sub", "type": "uint256" }128 ],129 "internalType": "struct CrossAddress",130 "name": "user",131 "type": "tuple"132 }133 ],134 "name": "allowlistedCross",135 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],136 "stateMutability": "view",137 "type": "function"138 },139 {140 "inputs": [141 { "internalType": "address", "name": "spender", "type": "address" },142 { "internalType": "uint256", "name": "amount", "type": "uint256" }143 ],144 "name": "approve",145 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],146 "stateMutability": "nonpayable",147 "type": "function"148 },149 {150 "inputs": [151 {152 "components": [153 { "internalType": "address", "name": "eth", "type": "address" },154 { "internalType": "uint256", "name": "sub", "type": "uint256" }155 ],156 "internalType": "struct CrossAddress",157 "name": "spender",158 "type": "tuple"159 },160 { "internalType": "uint256", "name": "amount", "type": "uint256" }161 ],162 "name": "approveCross",163 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],164 "stateMutability": "nonpayable",165 "type": "function"166 },167 {168 "inputs": [169 { "internalType": "address", "name": "owner", "type": "address" }170 ],171 "name": "balanceOf",172 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],173 "stateMutability": "view",174 "type": "function"175 },176 {177 "inputs": [178 {179 "components": [180 { "internalType": "address", "name": "eth", "type": "address" },181 { "internalType": "uint256", "name": "sub", "type": "uint256" }182 ],183 "internalType": "struct CrossAddress",184 "name": "from",185 "type": "tuple"186 },187 { "internalType": "uint256", "name": "amount", "type": "uint256" }188 ],189 "name": "burnFromCross",190 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],191 "stateMutability": "nonpayable",192 "type": "function"193 },194 {195 "inputs": [196 {197 "components": [198 { "internalType": "address", "name": "eth", "type": "address" },199 { "internalType": "uint256", "name": "sub", "type": "uint256" }200 ],201 "internalType": "struct CrossAddress",202 "name": "newOwner",203 "type": "tuple"204 }205 ],206 "name": "changeCollectionOwnerCross",207 "outputs": [],208 "stateMutability": "nonpayable",209 "type": "function"210 },211 {212 "inputs": [],213 "name": "collectionAdmins",214 "outputs": [215 {216 "components": [217 { "internalType": "address", "name": "eth", "type": "address" },218 { "internalType": "uint256", "name": "sub", "type": "uint256" }219 ],220 "internalType": "struct CrossAddress[]",221 "name": "",222 "type": "tuple[]"223 }224 ],225 "stateMutability": "view",226 "type": "function"227 },228 {229 "inputs": [],230 "name": "collectionHelperAddress",231 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],232 "stateMutability": "view",233 "type": "function"234 },235 {236 "inputs": [],237 "name": "collectionLimits",238 "outputs": [239 {240 "components": [241 {242 "internalType": "enum CollectionLimitField",243 "name": "field",244 "type": "uint8"245 },246 {247 "components": [248 { "internalType": "bool", "name": "status", "type": "bool" },249 { "internalType": "uint256", "name": "value", "type": "uint256" }250 ],251 "internalType": "struct OptionUint256",252 "name": "value",253 "type": "tuple"254 }255 ],256 "internalType": "struct CollectionLimit[]",257 "name": "",258 "type": "tuple[]"259 }260 ],261 "stateMutability": "view",262 "type": "function"263 },264 {265 "inputs": [],266 "name": "collectionNestingPermissions",267 "outputs": [268 {269 "components": [270 {271 "internalType": "enum CollectionPermissionField",272 "name": "field",273 "type": "uint8"274 },275 { "internalType": "bool", "name": "value", "type": "bool" }276 ],277 "internalType": "struct CollectionNestingPermission[]",278 "name": "",279 "type": "tuple[]"280 }281 ],282 "stateMutability": "view",283 "type": "function"284 },285 {286 "inputs": [],287 "name": "collectionNestingRestrictedCollectionIds",288 "outputs": [289 {290 "components": [291 { "internalType": "bool", "name": "token_owner", "type": "bool" },292 { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }293 ],294 "internalType": "struct CollectionNesting",295 "name": "",296 "type": "tuple"297 }298 ],299 "stateMutability": "view",300 "type": "function"301 },302 {303 "inputs": [],304 "name": "collectionOwner",305 "outputs": [306 {307 "components": [308 { "internalType": "address", "name": "eth", "type": "address" },309 { "internalType": "uint256", "name": "sub", "type": "uint256" }310 ],311 "internalType": "struct CrossAddress",312 "name": "",313 "type": "tuple"314 }315 ],316 "stateMutability": "view",317 "type": "function"318 },319 {320 "inputs": [321 { "internalType": "string[]", "name": "keys", "type": "string[]" }322 ],323 "name": "collectionProperties",324 "outputs": [325 {326 "components": [327 { "internalType": "string", "name": "key", "type": "string" },328 { "internalType": "bytes", "name": "value", "type": "bytes" }329 ],330 "internalType": "struct Property[]",331 "name": "",332 "type": "tuple[]"333 }334 ],335 "stateMutability": "view",336 "type": "function"337 },338 {339 "inputs": [{ "internalType": "string", "name": "key", "type": "string" }],340 "name": "collectionProperty",341 "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }],342 "stateMutability": "view",343 "type": "function"344 },345 {346 "inputs": [],347 "name": "collectionSponsor",348 "outputs": [349 {350 "components": [351 { "internalType": "address", "name": "eth", "type": "address" },352 { "internalType": "uint256", "name": "sub", "type": "uint256" }353 ],354 "internalType": "struct CrossAddress",355 "name": "",356 "type": "tuple"357 }358 ],359 "stateMutability": "view",360 "type": "function"361 },362 {363 "inputs": [],364 "name": "confirmCollectionSponsorship",365 "outputs": [],366 "stateMutability": "nonpayable",367 "type": "function"368 },369 {370 "inputs": [],371 "name": "contractAddress",372 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],373 "stateMutability": "view",374 "type": "function"375 },376 {377 "inputs": [],378 "name": "decimals",379 "outputs": [{ "internalType": "uint8", "name": "", "type": "uint8" }],380 "stateMutability": "view",381 "type": "function"382 },383 {384 "inputs": [385 { "internalType": "string[]", "name": "keys", "type": "string[]" }386 ],387 "name": "deleteCollectionProperties",388 "outputs": [],389 "stateMutability": "nonpayable",390 "type": "function"391 },392 {393 "inputs": [],394 "name": "description",395 "outputs": [{ "internalType": "string", "name": "", "type": "string" }],396 "stateMutability": "view",397 "type": "function"398 },399 {400 "inputs": [],401 "name": "hasCollectionPendingSponsor",402 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],403 "stateMutability": "view",404 "type": "function"405 },406 {407 "inputs": [408 {409 "components": [410 { "internalType": "address", "name": "eth", "type": "address" },411 { "internalType": "uint256", "name": "sub", "type": "uint256" }412 ],413 "internalType": "struct CrossAddress",414 "name": "user",415 "type": "tuple"416 }417 ],418 "name": "isOwnerOrAdminCross",419 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],420 "stateMutability": "view",421 "type": "function"422 },423 {424 "inputs": [425 { "internalType": "address", "name": "to", "type": "address" },426 { "internalType": "uint256", "name": "amount", "type": "uint256" }427 ],428 "name": "mint",429 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],430 "stateMutability": "nonpayable",431 "type": "function"432 },433 {434 "inputs": [435 {436 "components": [437 { "internalType": "address", "name": "field_0", "type": "address" },438 { "internalType": "uint256", "name": "field_1", "type": "uint256" }439 ],440 "internalType": "struct Tuple11[]",441 "name": "amounts",442 "type": "tuple[]"443 }444 ],445 "name": "mintBulk",446 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],447 "stateMutability": "nonpayable",448 "type": "function"449 },450 {451 "inputs": [452 {453 "components": [454 { "internalType": "address", "name": "eth", "type": "address" },455 { "internalType": "uint256", "name": "sub", "type": "uint256" }456 ],457 "internalType": "struct CrossAddress",458 "name": "to",459 "type": "tuple"460 },461 { "internalType": "uint256", "name": "amount", "type": "uint256" }462 ],463 "name": "mintCross",464 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],465 "stateMutability": "nonpayable",466 "type": "function"467 },468 {469 "inputs": [],470 "name": "name",471 "outputs": [{ "internalType": "string", "name": "", "type": "string" }],472 "stateMutability": "view",473 "type": "function"474 },475 {476 "inputs": [477 {478 "components": [479 { "internalType": "address", "name": "eth", "type": "address" },480 { "internalType": "uint256", "name": "sub", "type": "uint256" }481 ],482 "internalType": "struct CrossAddress",483 "name": "admin",484 "type": "tuple"485 }486 ],487 "name": "removeCollectionAdminCross",488 "outputs": [],489 "stateMutability": "nonpayable",490 "type": "function"491 },492 {493 "inputs": [],494 "name": "removeCollectionSponsor",495 "outputs": [],496 "stateMutability": "nonpayable",497 "type": "function"498 },499 {500 "inputs": [501 {502 "components": [503 { "internalType": "address", "name": "eth", "type": "address" },504 { "internalType": "uint256", "name": "sub", "type": "uint256" }505 ],506 "internalType": "struct CrossAddress",507 "name": "user",508 "type": "tuple"509 }510 ],511 "name": "removeFromCollectionAllowListCross",512 "outputs": [],513 "stateMutability": "nonpayable",514 "type": "function"515 },516 {517 "inputs": [518 { "internalType": "enum AccessMode", "name": "mode", "type": "uint8" }519 ],520 "name": "setCollectionAccess",521 "outputs": [],522 "stateMutability": "nonpayable",523 "type": "function"524 },525 {526 "inputs": [527 {528 "components": [529 {530 "internalType": "enum CollectionLimitField",531 "name": "field",532 "type": "uint8"533 },534 {535 "components": [536 { "internalType": "bool", "name": "status", "type": "bool" },537 { "internalType": "uint256", "name": "value", "type": "uint256" }538 ],539 "internalType": "struct OptionUint256",540 "name": "value",541 "type": "tuple"542 }543 ],544 "internalType": "struct CollectionLimit",545 "name": "limit",546 "type": "tuple"547 }548 ],549 "name": "setCollectionLimit",550 "outputs": [],551 "stateMutability": "nonpayable",552 "type": "function"553 },554 {555 "inputs": [{ "internalType": "bool", "name": "mode", "type": "bool" }],556 "name": "setCollectionMintMode",557 "outputs": [],558 "stateMutability": "nonpayable",559 "type": "function"560 },561 {562 "inputs": [{ "internalType": "bool", "name": "enable", "type": "bool" }],563 "name": "setCollectionNesting",564 "outputs": [],565 "stateMutability": "nonpayable",566 "type": "function"567 },568 {569 "inputs": [570 { "internalType": "bool", "name": "enable", "type": "bool" },571 {572 "internalType": "address[]",573 "name": "collections",574 "type": "address[]"575 }576 ],577 "name": "setCollectionNesting",578 "outputs": [],579 "stateMutability": "nonpayable",580 "type": "function"581 },582 {583 "inputs": [584 {585 "components": [586 { "internalType": "string", "name": "key", "type": "string" },587 { "internalType": "bytes", "name": "value", "type": "bytes" }588 ],589 "internalType": "struct Property[]",590 "name": "properties",591 "type": "tuple[]"592 }593 ],594 "name": "setCollectionProperties",595 "outputs": [],596 "stateMutability": "nonpayable",597 "type": "function"598 },599 {600 "inputs": [601 {602 "components": [603 { "internalType": "address", "name": "eth", "type": "address" },604 { "internalType": "uint256", "name": "sub", "type": "uint256" }605 ],606 "internalType": "struct CrossAddress",607 "name": "sponsor",608 "type": "tuple"609 }610 ],611 "name": "setCollectionSponsorCross",612 "outputs": [],613 "stateMutability": "nonpayable",614 "type": "function"615 },616 {617 "inputs": [618 { "internalType": "bytes4", "name": "interfaceID", "type": "bytes4" }619 ],620 "name": "supportsInterface",621 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],622 "stateMutability": "view",623 "type": "function"624 },625 {626 "inputs": [],627 "name": "symbol",628 "outputs": [{ "internalType": "string", "name": "", "type": "string" }],629 "stateMutability": "view",630 "type": "function"631 },632 {633 "inputs": [],634 "name": "totalSupply",635 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],636 "stateMutability": "view",637 "type": "function"638 },639 {640 "inputs": [641 { "internalType": "address", "name": "to", "type": "address" },642 { "internalType": "uint256", "name": "amount", "type": "uint256" }643 ],644 "name": "transfer",645 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],646 "stateMutability": "nonpayable",647 "type": "function"648 },649 {650 "inputs": [651 {652 "components": [653 { "internalType": "address", "name": "eth", "type": "address" },654 { "internalType": "uint256", "name": "sub", "type": "uint256" }655 ],656 "internalType": "struct CrossAddress",657 "name": "to",658 "type": "tuple"659 },660 { "internalType": "uint256", "name": "amount", "type": "uint256" }661 ],662 "name": "transferCross",663 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],664 "stateMutability": "nonpayable",665 "type": "function"666 },667 {668 "inputs": [669 { "internalType": "address", "name": "from", "type": "address" },670 { "internalType": "address", "name": "to", "type": "address" },671 { "internalType": "uint256", "name": "amount", "type": "uint256" }672 ],673 "name": "transferFrom",674 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],675 "stateMutability": "nonpayable",676 "type": "function"677 },678 {679 "inputs": [680 {681 "components": [682 { "internalType": "address", "name": "eth", "type": "address" },683 { "internalType": "uint256", "name": "sub", "type": "uint256" }684 ],685 "internalType": "struct CrossAddress",686 "name": "from",687 "type": "tuple"688 },689 {690 "components": [691 { "internalType": "address", "name": "eth", "type": "address" },692 { "internalType": "uint256", "name": "sub", "type": "uint256" }693 ],694 "internalType": "struct CrossAddress",695 "name": "to",696 "type": "tuple"697 },698 { "internalType": "uint256", "name": "amount", "type": "uint256" }699 ],700 "name": "transferFromCross",701 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],702 "stateMutability": "nonpayable",703 "type": "function"704 },705 {706 "inputs": [],707 "name": "uniqueCollectionType",708 "outputs": [{ "internalType": "string", "name": "", "type": "string" }],709 "stateMutability": "view",710 "type": "function"711 }712]1[2 {3 "anonymous": false,4 "inputs": [5 {6 "indexed": true,7 "internalType": "address",8 "name": "owner",9 "type": "address"10 },11 {12 "indexed": true,13 "internalType": "address",14 "name": "spender",15 "type": "address"16 },17 {18 "indexed": false,19 "internalType": "uint256",20 "name": "value",21 "type": "uint256"22 }23 ],24 "name": "Approval",25 "type": "event"26 },27 {28 "anonymous": false,29 "inputs": [30 {31 "indexed": true,32 "internalType": "address",33 "name": "from",34 "type": "address"35 },36 {37 "indexed": true,38 "internalType": "address",39 "name": "to",40 "type": "address"41 },42 {43 "indexed": false,44 "internalType": "uint256",45 "name": "value",46 "type": "uint256"47 }48 ],49 "name": "Transfer",50 "type": "event"51 },52 {53 "inputs": [54 {55 "components": [56 { "internalType": "address", "name": "eth", "type": "address" },57 { "internalType": "uint256", "name": "sub", "type": "uint256" }58 ],59 "internalType": "struct CrossAddress",60 "name": "newAdmin",61 "type": "tuple"62 }63 ],64 "name": "addCollectionAdminCross",65 "outputs": [],66 "stateMutability": "nonpayable",67 "type": "function"68 },69 {70 "inputs": [71 {72 "components": [73 { "internalType": "address", "name": "eth", "type": "address" },74 { "internalType": "uint256", "name": "sub", "type": "uint256" }75 ],76 "internalType": "struct CrossAddress",77 "name": "user",78 "type": "tuple"79 }80 ],81 "name": "addToCollectionAllowListCross",82 "outputs": [],83 "stateMutability": "nonpayable",84 "type": "function"85 },86 {87 "inputs": [88 { "internalType": "address", "name": "owner", "type": "address" },89 { "internalType": "address", "name": "spender", "type": "address" }90 ],91 "name": "allowance",92 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],93 "stateMutability": "view",94 "type": "function"95 },96 {97 "inputs": [98 {99 "components": [100 { "internalType": "address", "name": "eth", "type": "address" },101 { "internalType": "uint256", "name": "sub", "type": "uint256" }102 ],103 "internalType": "struct CrossAddress",104 "name": "owner",105 "type": "tuple"106 },107 {108 "components": [109 { "internalType": "address", "name": "eth", "type": "address" },110 { "internalType": "uint256", "name": "sub", "type": "uint256" }111 ],112 "internalType": "struct CrossAddress",113 "name": "spender",114 "type": "tuple"115 }116 ],117 "name": "allowanceCross",118 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],119 "stateMutability": "view",120 "type": "function"121 },122 {123 "inputs": [124 {125 "components": [126 { "internalType": "address", "name": "eth", "type": "address" },127 { "internalType": "uint256", "name": "sub", "type": "uint256" }128 ],129 "internalType": "struct CrossAddress",130 "name": "user",131 "type": "tuple"132 }133 ],134 "name": "allowlistedCross",135 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],136 "stateMutability": "view",137 "type": "function"138 },139 {140 "inputs": [141 { "internalType": "address", "name": "spender", "type": "address" },142 { "internalType": "uint256", "name": "amount", "type": "uint256" }143 ],144 "name": "approve",145 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],146 "stateMutability": "nonpayable",147 "type": "function"148 },149 {150 "inputs": [151 {152 "components": [153 { "internalType": "address", "name": "eth", "type": "address" },154 { "internalType": "uint256", "name": "sub", "type": "uint256" }155 ],156 "internalType": "struct CrossAddress",157 "name": "spender",158 "type": "tuple"159 },160 { "internalType": "uint256", "name": "amount", "type": "uint256" }161 ],162 "name": "approveCross",163 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],164 "stateMutability": "nonpayable",165 "type": "function"166 },167 {168 "inputs": [169 { "internalType": "address", "name": "owner", "type": "address" }170 ],171 "name": "balanceOf",172 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],173 "stateMutability": "view",174 "type": "function"175 },176 {177 "inputs": [178 {179 "components": [180 { "internalType": "address", "name": "eth", "type": "address" },181 { "internalType": "uint256", "name": "sub", "type": "uint256" }182 ],183 "internalType": "struct CrossAddress",184 "name": "from",185 "type": "tuple"186 },187 { "internalType": "uint256", "name": "amount", "type": "uint256" }188 ],189 "name": "burnFromCross",190 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],191 "stateMutability": "nonpayable",192 "type": "function"193 },194 {195 "inputs": [196 {197 "components": [198 { "internalType": "address", "name": "eth", "type": "address" },199 { "internalType": "uint256", "name": "sub", "type": "uint256" }200 ],201 "internalType": "struct CrossAddress",202 "name": "newOwner",203 "type": "tuple"204 }205 ],206 "name": "changeCollectionOwnerCross",207 "outputs": [],208 "stateMutability": "nonpayable",209 "type": "function"210 },211 {212 "inputs": [],213 "name": "collectionAdmins",214 "outputs": [215 {216 "components": [217 { "internalType": "address", "name": "eth", "type": "address" },218 { "internalType": "uint256", "name": "sub", "type": "uint256" }219 ],220 "internalType": "struct CrossAddress[]",221 "name": "",222 "type": "tuple[]"223 }224 ],225 "stateMutability": "view",226 "type": "function"227 },228 {229 "inputs": [],230 "name": "collectionHelperAddress",231 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],232 "stateMutability": "view",233 "type": "function"234 },235 {236 "inputs": [],237 "name": "collectionLimits",238 "outputs": [239 {240 "components": [241 {242 "internalType": "enum CollectionLimitField",243 "name": "field",244 "type": "uint8"245 },246 {247 "components": [248 { "internalType": "bool", "name": "status", "type": "bool" },249 { "internalType": "uint256", "name": "value", "type": "uint256" }250 ],251 "internalType": "struct OptionUint256",252 "name": "value",253 "type": "tuple"254 }255 ],256 "internalType": "struct CollectionLimit[]",257 "name": "",258 "type": "tuple[]"259 }260 ],261 "stateMutability": "view",262 "type": "function"263 },264 {265 "inputs": [],266 "name": "collectionNestingPermissions",267 "outputs": [268 {269 "components": [270 {271 "internalType": "enum CollectionPermissionField",272 "name": "field",273 "type": "uint8"274 },275 { "internalType": "bool", "name": "value", "type": "bool" }276 ],277 "internalType": "struct CollectionNestingPermission[]",278 "name": "",279 "type": "tuple[]"280 }281 ],282 "stateMutability": "view",283 "type": "function"284 },285 {286 "inputs": [],287 "name": "collectionNestingRestrictedCollectionIds",288 "outputs": [289 {290 "components": [291 { "internalType": "bool", "name": "token_owner", "type": "bool" },292 { "internalType": "uint256[]", "name": "ids", "type": "uint256[]" }293 ],294 "internalType": "struct CollectionNesting",295 "name": "",296 "type": "tuple"297 }298 ],299 "stateMutability": "view",300 "type": "function"301 },302 {303 "inputs": [],304 "name": "collectionOwner",305 "outputs": [306 {307 "components": [308 { "internalType": "address", "name": "eth", "type": "address" },309 { "internalType": "uint256", "name": "sub", "type": "uint256" }310 ],311 "internalType": "struct CrossAddress",312 "name": "",313 "type": "tuple"314 }315 ],316 "stateMutability": "view",317 "type": "function"318 },319 {320 "inputs": [321 { "internalType": "string[]", "name": "keys", "type": "string[]" }322 ],323 "name": "collectionProperties",324 "outputs": [325 {326 "components": [327 { "internalType": "string", "name": "key", "type": "string" },328 { "internalType": "bytes", "name": "value", "type": "bytes" }329 ],330 "internalType": "struct Property[]",331 "name": "",332 "type": "tuple[]"333 }334 ],335 "stateMutability": "view",336 "type": "function"337 },338 {339 "inputs": [{ "internalType": "string", "name": "key", "type": "string" }],340 "name": "collectionProperty",341 "outputs": [{ "internalType": "bytes", "name": "", "type": "bytes" }],342 "stateMutability": "view",343 "type": "function"344 },345 {346 "inputs": [],347 "name": "collectionSponsor",348 "outputs": [349 {350 "components": [351 { "internalType": "address", "name": "eth", "type": "address" },352 { "internalType": "uint256", "name": "sub", "type": "uint256" }353 ],354 "internalType": "struct CrossAddress",355 "name": "",356 "type": "tuple"357 }358 ],359 "stateMutability": "view",360 "type": "function"361 },362 {363 "inputs": [],364 "name": "confirmCollectionSponsorship",365 "outputs": [],366 "stateMutability": "nonpayable",367 "type": "function"368 },369 {370 "inputs": [],371 "name": "contractAddress",372 "outputs": [{ "internalType": "address", "name": "", "type": "address" }],373 "stateMutability": "view",374 "type": "function"375 },376 {377 "inputs": [],378 "name": "decimals",379 "outputs": [{ "internalType": "uint8", "name": "", "type": "uint8" }],380 "stateMutability": "view",381 "type": "function"382 },383 {384 "inputs": [385 { "internalType": "string[]", "name": "keys", "type": "string[]" }386 ],387 "name": "deleteCollectionProperties",388 "outputs": [],389 "stateMutability": "nonpayable",390 "type": "function"391 },392 {393 "inputs": [],394 "name": "description",395 "outputs": [{ "internalType": "string", "name": "", "type": "string" }],396 "stateMutability": "view",397 "type": "function"398 },399 {400 "inputs": [],401 "name": "hasCollectionPendingSponsor",402 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],403 "stateMutability": "view",404 "type": "function"405 },406 {407 "inputs": [408 {409 "components": [410 { "internalType": "address", "name": "eth", "type": "address" },411 { "internalType": "uint256", "name": "sub", "type": "uint256" }412 ],413 "internalType": "struct CrossAddress",414 "name": "user",415 "type": "tuple"416 }417 ],418 "name": "isOwnerOrAdminCross",419 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],420 "stateMutability": "view",421 "type": "function"422 },423 {424 "inputs": [425 { "internalType": "address", "name": "to", "type": "address" },426 { "internalType": "uint256", "name": "amount", "type": "uint256" }427 ],428 "name": "mint",429 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],430 "stateMutability": "nonpayable",431 "type": "function"432 },433 {434 "inputs": [435 {436 "components": [437 { "internalType": "address", "name": "to", "type": "address" },438 { "internalType": "uint256", "name": "amount", "type": "uint256" }439 ],440 "internalType": "struct AmountForAddress[]",441 "name": "amounts",442 "type": "tuple[]"443 }444 ],445 "name": "mintBulk",446 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],447 "stateMutability": "nonpayable",448 "type": "function"449 },450 {451 "inputs": [452 {453 "components": [454 { "internalType": "address", "name": "eth", "type": "address" },455 { "internalType": "uint256", "name": "sub", "type": "uint256" }456 ],457 "internalType": "struct CrossAddress",458 "name": "to",459 "type": "tuple"460 },461 { "internalType": "uint256", "name": "amount", "type": "uint256" }462 ],463 "name": "mintCross",464 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],465 "stateMutability": "nonpayable",466 "type": "function"467 },468 {469 "inputs": [],470 "name": "name",471 "outputs": [{ "internalType": "string", "name": "", "type": "string" }],472 "stateMutability": "view",473 "type": "function"474 },475 {476 "inputs": [477 {478 "components": [479 { "internalType": "address", "name": "eth", "type": "address" },480 { "internalType": "uint256", "name": "sub", "type": "uint256" }481 ],482 "internalType": "struct CrossAddress",483 "name": "admin",484 "type": "tuple"485 }486 ],487 "name": "removeCollectionAdminCross",488 "outputs": [],489 "stateMutability": "nonpayable",490 "type": "function"491 },492 {493 "inputs": [],494 "name": "removeCollectionSponsor",495 "outputs": [],496 "stateMutability": "nonpayable",497 "type": "function"498 },499 {500 "inputs": [501 {502 "components": [503 { "internalType": "address", "name": "eth", "type": "address" },504 { "internalType": "uint256", "name": "sub", "type": "uint256" }505 ],506 "internalType": "struct CrossAddress",507 "name": "user",508 "type": "tuple"509 }510 ],511 "name": "removeFromCollectionAllowListCross",512 "outputs": [],513 "stateMutability": "nonpayable",514 "type": "function"515 },516 {517 "inputs": [518 { "internalType": "enum AccessMode", "name": "mode", "type": "uint8" }519 ],520 "name": "setCollectionAccess",521 "outputs": [],522 "stateMutability": "nonpayable",523 "type": "function"524 },525 {526 "inputs": [527 {528 "components": [529 {530 "internalType": "enum CollectionLimitField",531 "name": "field",532 "type": "uint8"533 },534 {535 "components": [536 { "internalType": "bool", "name": "status", "type": "bool" },537 { "internalType": "uint256", "name": "value", "type": "uint256" }538 ],539 "internalType": "struct OptionUint256",540 "name": "value",541 "type": "tuple"542 }543 ],544 "internalType": "struct CollectionLimit",545 "name": "limit",546 "type": "tuple"547 }548 ],549 "name": "setCollectionLimit",550 "outputs": [],551 "stateMutability": "nonpayable",552 "type": "function"553 },554 {555 "inputs": [{ "internalType": "bool", "name": "mode", "type": "bool" }],556 "name": "setCollectionMintMode",557 "outputs": [],558 "stateMutability": "nonpayable",559 "type": "function"560 },561 {562 "inputs": [{ "internalType": "bool", "name": "enable", "type": "bool" }],563 "name": "setCollectionNesting",564 "outputs": [],565 "stateMutability": "nonpayable",566 "type": "function"567 },568 {569 "inputs": [570 { "internalType": "bool", "name": "enable", "type": "bool" },571 {572 "internalType": "address[]",573 "name": "collections",574 "type": "address[]"575 }576 ],577 "name": "setCollectionNesting",578 "outputs": [],579 "stateMutability": "nonpayable",580 "type": "function"581 },582 {583 "inputs": [584 {585 "components": [586 { "internalType": "string", "name": "key", "type": "string" },587 { "internalType": "bytes", "name": "value", "type": "bytes" }588 ],589 "internalType": "struct Property[]",590 "name": "properties",591 "type": "tuple[]"592 }593 ],594 "name": "setCollectionProperties",595 "outputs": [],596 "stateMutability": "nonpayable",597 "type": "function"598 },599 {600 "inputs": [601 {602 "components": [603 { "internalType": "address", "name": "eth", "type": "address" },604 { "internalType": "uint256", "name": "sub", "type": "uint256" }605 ],606 "internalType": "struct CrossAddress",607 "name": "sponsor",608 "type": "tuple"609 }610 ],611 "name": "setCollectionSponsorCross",612 "outputs": [],613 "stateMutability": "nonpayable",614 "type": "function"615 },616 {617 "inputs": [618 { "internalType": "bytes4", "name": "interfaceID", "type": "bytes4" }619 ],620 "name": "supportsInterface",621 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],622 "stateMutability": "view",623 "type": "function"624 },625 {626 "inputs": [],627 "name": "symbol",628 "outputs": [{ "internalType": "string", "name": "", "type": "string" }],629 "stateMutability": "view",630 "type": "function"631 },632 {633 "inputs": [],634 "name": "totalSupply",635 "outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],636 "stateMutability": "view",637 "type": "function"638 },639 {640 "inputs": [641 { "internalType": "address", "name": "to", "type": "address" },642 { "internalType": "uint256", "name": "amount", "type": "uint256" }643 ],644 "name": "transfer",645 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],646 "stateMutability": "nonpayable",647 "type": "function"648 },649 {650 "inputs": [651 {652 "components": [653 { "internalType": "address", "name": "eth", "type": "address" },654 { "internalType": "uint256", "name": "sub", "type": "uint256" }655 ],656 "internalType": "struct CrossAddress",657 "name": "to",658 "type": "tuple"659 },660 { "internalType": "uint256", "name": "amount", "type": "uint256" }661 ],662 "name": "transferCross",663 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],664 "stateMutability": "nonpayable",665 "type": "function"666 },667 {668 "inputs": [669 { "internalType": "address", "name": "from", "type": "address" },670 { "internalType": "address", "name": "to", "type": "address" },671 { "internalType": "uint256", "name": "amount", "type": "uint256" }672 ],673 "name": "transferFrom",674 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],675 "stateMutability": "nonpayable",676 "type": "function"677 },678 {679 "inputs": [680 {681 "components": [682 { "internalType": "address", "name": "eth", "type": "address" },683 { "internalType": "uint256", "name": "sub", "type": "uint256" }684 ],685 "internalType": "struct CrossAddress",686 "name": "from",687 "type": "tuple"688 },689 {690 "components": [691 { "internalType": "address", "name": "eth", "type": "address" },692 { "internalType": "uint256", "name": "sub", "type": "uint256" }693 ],694 "internalType": "struct CrossAddress",695 "name": "to",696 "type": "tuple"697 },698 { "internalType": "uint256", "name": "amount", "type": "uint256" }699 ],700 "name": "transferFromCross",701 "outputs": [{ "internalType": "bool", "name": "", "type": "bool" }],702 "stateMutability": "nonpayable",703 "type": "function"704 },705 {706 "inputs": [],707 "name": "uniqueCollectionType",708 "outputs": [{ "internalType": "string", "name": "", "type": "string" }],709 "stateMutability": "view",710 "type": "function"711 }712]tests/src/eth/api/UniqueFungible.soldiffbeforeafterboth--- a/tests/src/eth/api/UniqueFungible.sol
+++ b/tests/src/eth/api/UniqueFungible.sol
@@ -398,7 +398,7 @@
/// @param amounts array of pairs of account address and amount
/// @dev EVM selector for this function is: 0x1acf2d55,
/// or in textual repr: mintBulk((address,uint256)[])
- function mintBulk(Tuple11[] memory amounts) external returns (bool);
+ function mintBulk(AmountForAddress[] memory amounts) external returns (bool);
/// @dev EVM selector for this function is: 0x2ada85ff,
/// or in textual repr: transferCross((address,uint256),uint256)
@@ -418,10 +418,9 @@
function collectionHelperAddress() external view returns (address);
}
-/// @dev anonymous struct
-struct Tuple11 {
- address field_0;
- uint256 field_1;
+struct AmountForAddress {
+ address to;
+ uint256 amount;
}
/// @dev the ERC-165 identifier for this interface is 0x40c10f19
tests/src/eth/api/UniqueNFT.soldiffbeforeafterboth--- a/tests/src/eth/api/UniqueNFT.sol
+++ b/tests/src/eth/api/UniqueNFT.sol
@@ -644,7 +644,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, Tuple13[] memory tokens) external returns (bool);
+ // function mintBulkWithTokenURI(address to, TokenUri[] memory tokens) external returns (bool);
/// @notice Function to mint a token.
/// @param to The new owner crossAccountId
@@ -660,10 +660,12 @@
function collectionHelperAddress() external view returns (address);
}
-/// @dev anonymous struct
-struct Tuple13 {
- uint256 field_0;
- string field_1;
+/// Data for creation token with uri.
+struct TokenUri {
+ /// Id of new token.
+ uint256 id;
+ /// Uri of new token.
+ string uri;
}
/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension
tests/src/eth/api/UniqueRefungible.soldiffbeforeafterboth--- a/tests/src/eth/api/UniqueRefungible.sol
+++ b/tests/src/eth/api/UniqueRefungible.sol
@@ -638,7 +638,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, Tuple12[] memory tokens) external returns (bool);
+ // function mintBulkWithTokenURI(address to, TokenUri[] memory tokens) external returns (bool);
/// @notice Function to mint a token.
/// @param to The new owner crossAccountId
@@ -661,10 +661,12 @@
function collectionHelperAddress() external view returns (address);
}
-/// @dev anonymous struct
-struct Tuple12 {
- uint256 field_0;
- string field_1;
+/// Data for creation token with uri.
+struct TokenUri {
+ /// Id of new token.
+ uint256 id;
+ /// Uri of new token.
+ string uri;
}
/// @title ERC-721 Non-Fungible Token Standard, optional enumeration extension
tests/src/eth/proxy/UniqueNFTProxy.soldiffbeforeafterboth--- a/tests/src/eth/proxy/UniqueNFTProxy.sol
+++ b/tests/src/eth/proxy/UniqueNFTProxy.sol
@@ -168,7 +168,7 @@
return proxied.mintBulk(to, tokenIds);
}
- function mintBulkWithTokenURI(address to, Tuple6[] memory tokens)
+ function mintBulkWithTokenURI(address to, TokenUri[] memory tokens)
external
override
returns (bool)