1pub use erc1155_burnable::*;
2#[allow(
5 clippy::enum_variant_names,
6 clippy::too_many_arguments,
7 clippy::upper_case_acronyms,
8 clippy::type_complexity,
9 dead_code,
10 non_camel_case_types,
11)]
12pub mod erc1155_burnable {
13 #[rustfmt::skip]
14 const __ABI: &str = "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"ApprovalForAll\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\",\"components\":[],\"indexed\":false},{\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"TransferBatch\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\",\"components\":[],\"indexed\":false},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[],\"indexed\":false}],\"type\":\"event\",\"name\":\"TransferSingle\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"value\",\"type\":\"string\",\"components\":[],\"indexed\":false},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\",\"components\":[],\"indexed\":true}],\"type\":\"event\",\"name\":\"URI\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address[]\",\"name\":\"accounts\",\"type\":\"address[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOfBatch\",\"outputs\":[{\"internalType\":\"uint256[]\",\"name\":\"\",\"type\":\"uint256[]\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"burn\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"values\",\"type\":\"uint256[]\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"burnBatch\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"account\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"ids\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"uint256[]\",\"name\":\"amounts\",\"type\":\"uint256[]\",\"components\":[]},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"safeBatchTransferFrom\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"id\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\",\"components\":[]},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"safeTransferFrom\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"bool\",\"name\":\"approved\",\"type\":\"bool\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"setApprovalForAll\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"uri\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]}]";
15 pub static ERC1155BURNABLE_ABI: ::ethers_contract::Lazy<::ethers_core::abi::Abi> = ::ethers_contract::Lazy::new(||
17 ::ethers_core::utils::__serde_json::from_str(__ABI).expect("ABI is always valid"));
18 pub struct ERC1155Burnable<M>(::ethers_contract::Contract<M>);
19 impl<M> ::core::clone::Clone for ERC1155Burnable<M> {
20 fn clone(&self) -> Self {
21 Self(::core::clone::Clone::clone(&self.0))
22 }
23 }
24 impl<M> ::core::ops::Deref for ERC1155Burnable<M> {
25 type Target = ::ethers_contract::Contract<M>;
26 fn deref(&self) -> &Self::Target {
27 &self.0
28 }
29 }
30 impl<M> ::core::ops::DerefMut for ERC1155Burnable<M> {
31 fn deref_mut(&mut self) -> &mut Self::Target {
32 &mut self.0
33 }
34 }
35 impl<M> ::core::fmt::Debug for ERC1155Burnable<M> {
36 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
37 f.debug_tuple(stringify!(ERC1155Burnable)).field(&self.address()).finish()
38 }
39 }
40 impl<M: ::ethers_providers::Middleware> ERC1155Burnable<M> {
41 pub fn new<T: Into<::ethers_core::types::Address>>(
44 address: T,
45 client: ::std::sync::Arc<M>,
46 ) -> Self {
47 Self(
48 ::ethers_contract::Contract::new(
49 address.into(),
50 ERC1155BURNABLE_ABI.clone(),
51 client,
52 ),
53 )
54 }
55 pub fn balance_of(
57 &self,
58 account: ::ethers_core::types::Address,
59 id: ::ethers_core::types::U256,
60 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
61 self.0
62 .method_hash([0, 253, 213, 142], (account, id))
63 .expect("method not found (this should never happen)")
64 }
65 pub fn balance_of_batch(
67 &self,
68 accounts: ::std::vec::Vec<::ethers_core::types::Address>,
69 ids: ::std::vec::Vec<::ethers_core::types::U256>,
70 ) -> ::ethers_contract::builders::ContractCall<
71 M,
72 ::std::vec::Vec<::ethers_core::types::U256>,
73 > {
74 self.0
75 .method_hash([78, 18, 115, 244], (accounts, ids))
76 .expect("method not found (this should never happen)")
77 }
78 pub fn burn(
80 &self,
81 account: ::ethers_core::types::Address,
82 id: ::ethers_core::types::U256,
83 value: ::ethers_core::types::U256,
84 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
85 self.0
86 .method_hash([245, 41, 138, 202], (account, id, value))
87 .expect("method not found (this should never happen)")
88 }
89 pub fn burn_batch(
91 &self,
92 account: ::ethers_core::types::Address,
93 ids: ::std::vec::Vec<::ethers_core::types::U256>,
94 values: ::std::vec::Vec<::ethers_core::types::U256>,
95 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
96 self.0
97 .method_hash([107, 32, 196, 84], (account, ids, values))
98 .expect("method not found (this should never happen)")
99 }
100 pub fn is_approved_for_all(
102 &self,
103 account: ::ethers_core::types::Address,
104 operator: ::ethers_core::types::Address,
105 ) -> ::ethers_contract::builders::ContractCall<M, bool> {
106 self.0
107 .method_hash([233, 133, 233, 197], (account, operator))
108 .expect("method not found (this should never happen)")
109 }
110 pub fn safe_batch_transfer_from(
112 &self,
113 from: ::ethers_core::types::Address,
114 to: ::ethers_core::types::Address,
115 ids: ::std::vec::Vec<::ethers_core::types::U256>,
116 amounts: ::std::vec::Vec<::ethers_core::types::U256>,
117 data: ::ethers_core::types::Bytes,
118 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
119 self.0
120 .method_hash([46, 178, 194, 214], (from, to, ids, amounts, data))
121 .expect("method not found (this should never happen)")
122 }
123 pub fn safe_transfer_from(
125 &self,
126 from: ::ethers_core::types::Address,
127 to: ::ethers_core::types::Address,
128 id: ::ethers_core::types::U256,
129 amount: ::ethers_core::types::U256,
130 data: ::ethers_core::types::Bytes,
131 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
132 self.0
133 .method_hash([242, 66, 67, 42], (from, to, id, amount, data))
134 .expect("method not found (this should never happen)")
135 }
136 pub fn set_approval_for_all(
138 &self,
139 operator: ::ethers_core::types::Address,
140 approved: bool,
141 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
142 self.0
143 .method_hash([162, 44, 180, 101], (operator, approved))
144 .expect("method not found (this should never happen)")
145 }
146 pub fn supports_interface(
148 &self,
149 interface_id: [u8; 4],
150 ) -> ::ethers_contract::builders::ContractCall<M, bool> {
151 self.0
152 .method_hash([1, 255, 201, 167], interface_id)
153 .expect("method not found (this should never happen)")
154 }
155 pub fn uri(
157 &self,
158 p0: ::ethers_core::types::U256,
159 ) -> ::ethers_contract::builders::ContractCall<M, ::std::string::String> {
160 self.0
161 .method_hash([14, 137, 52, 28], p0)
162 .expect("method not found (this should never happen)")
163 }
164 pub fn approval_for_all_filter(
166 &self,
167 ) -> ::ethers_contract::builders::Event<
168 ::std::sync::Arc<M>,
169 M,
170 ApprovalForAllFilter,
171 > {
172 self.0.event()
173 }
174 pub fn transfer_batch_filter(
176 &self,
177 ) -> ::ethers_contract::builders::Event<
178 ::std::sync::Arc<M>,
179 M,
180 TransferBatchFilter,
181 > {
182 self.0.event()
183 }
184 pub fn transfer_single_filter(
186 &self,
187 ) -> ::ethers_contract::builders::Event<
188 ::std::sync::Arc<M>,
189 M,
190 TransferSingleFilter,
191 > {
192 self.0.event()
193 }
194 pub fn uri_filter(
196 &self,
197 ) -> ::ethers_contract::builders::Event<::std::sync::Arc<M>, M, UriFilter> {
198 self.0.event()
199 }
200 pub fn events(
202 &self,
203 ) -> ::ethers_contract::builders::Event<
204 ::std::sync::Arc<M>,
205 M,
206 ERC1155BurnableEvents,
207 > {
208 self.0.event_with_filter(::core::default::Default::default())
209 }
210 }
211 impl<M: ::ethers_providers::Middleware> From<::ethers_contract::Contract<M>>
212 for ERC1155Burnable<M> {
213 fn from(contract: ::ethers_contract::Contract<M>) -> Self {
214 Self::new(contract.address(), contract.client())
215 }
216 }
217 #[derive(
218 Clone,
219 ::ethers_contract::EthEvent,
220 ::ethers_contract::EthDisplay,
221 Default,
222 Debug,
223 PartialEq,
224 Eq,
225 Hash
226 )]
227 #[ethevent(name = "ApprovalForAll", abi = "ApprovalForAll(address,address,bool)")]
228 pub struct ApprovalForAllFilter {
229 #[ethevent(indexed)]
230 pub account: ::ethers_core::types::Address,
231 #[ethevent(indexed)]
232 pub operator: ::ethers_core::types::Address,
233 pub approved: bool,
234 }
235 #[derive(
236 Clone,
237 ::ethers_contract::EthEvent,
238 ::ethers_contract::EthDisplay,
239 Default,
240 Debug,
241 PartialEq,
242 Eq,
243 Hash
244 )]
245 #[ethevent(
246 name = "TransferBatch",
247 abi = "TransferBatch(address,address,address,uint256[],uint256[])"
248 )]
249 pub struct TransferBatchFilter {
250 #[ethevent(indexed)]
251 pub operator: ::ethers_core::types::Address,
252 #[ethevent(indexed)]
253 pub from: ::ethers_core::types::Address,
254 #[ethevent(indexed)]
255 pub to: ::ethers_core::types::Address,
256 pub ids: ::std::vec::Vec<::ethers_core::types::U256>,
257 pub values: ::std::vec::Vec<::ethers_core::types::U256>,
258 }
259 #[derive(
260 Clone,
261 ::ethers_contract::EthEvent,
262 ::ethers_contract::EthDisplay,
263 Default,
264 Debug,
265 PartialEq,
266 Eq,
267 Hash
268 )]
269 #[ethevent(
270 name = "TransferSingle",
271 abi = "TransferSingle(address,address,address,uint256,uint256)"
272 )]
273 pub struct TransferSingleFilter {
274 #[ethevent(indexed)]
275 pub operator: ::ethers_core::types::Address,
276 #[ethevent(indexed)]
277 pub from: ::ethers_core::types::Address,
278 #[ethevent(indexed)]
279 pub to: ::ethers_core::types::Address,
280 pub id: ::ethers_core::types::U256,
281 pub value: ::ethers_core::types::U256,
282 }
283 #[derive(
284 Clone,
285 ::ethers_contract::EthEvent,
286 ::ethers_contract::EthDisplay,
287 Default,
288 Debug,
289 PartialEq,
290 Eq,
291 Hash
292 )]
293 #[ethevent(name = "URI", abi = "URI(string,uint256)")]
294 pub struct UriFilter {
295 pub value: ::std::string::String,
296 #[ethevent(indexed)]
297 pub id: ::ethers_core::types::U256,
298 }
299 #[derive(Clone, ::ethers_contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
301 pub enum ERC1155BurnableEvents {
302 ApprovalForAllFilter(ApprovalForAllFilter),
303 TransferBatchFilter(TransferBatchFilter),
304 TransferSingleFilter(TransferSingleFilter),
305 UriFilter(UriFilter),
306 }
307 impl ::ethers_contract::EthLogDecode for ERC1155BurnableEvents {
308 fn decode_log(
309 log: &::ethers_core::abi::RawLog,
310 ) -> ::core::result::Result<Self, ::ethers_core::abi::Error> {
311 if let Ok(decoded) = ApprovalForAllFilter::decode_log(log) {
312 return Ok(ERC1155BurnableEvents::ApprovalForAllFilter(decoded));
313 }
314 if let Ok(decoded) = TransferBatchFilter::decode_log(log) {
315 return Ok(ERC1155BurnableEvents::TransferBatchFilter(decoded));
316 }
317 if let Ok(decoded) = TransferSingleFilter::decode_log(log) {
318 return Ok(ERC1155BurnableEvents::TransferSingleFilter(decoded));
319 }
320 if let Ok(decoded) = UriFilter::decode_log(log) {
321 return Ok(ERC1155BurnableEvents::UriFilter(decoded));
322 }
323 Err(::ethers_core::abi::Error::InvalidData)
324 }
325 }
326 impl ::core::fmt::Display for ERC1155BurnableEvents {
327 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
328 match self {
329 Self::ApprovalForAllFilter(element) => {
330 ::core::fmt::Display::fmt(element, f)
331 }
332 Self::TransferBatchFilter(element) => {
333 ::core::fmt::Display::fmt(element, f)
334 }
335 Self::TransferSingleFilter(element) => {
336 ::core::fmt::Display::fmt(element, f)
337 }
338 Self::UriFilter(element) => ::core::fmt::Display::fmt(element, f),
339 }
340 }
341 }
342 impl ::core::convert::From<ApprovalForAllFilter> for ERC1155BurnableEvents {
343 fn from(value: ApprovalForAllFilter) -> Self {
344 Self::ApprovalForAllFilter(value)
345 }
346 }
347 impl ::core::convert::From<TransferBatchFilter> for ERC1155BurnableEvents {
348 fn from(value: TransferBatchFilter) -> Self {
349 Self::TransferBatchFilter(value)
350 }
351 }
352 impl ::core::convert::From<TransferSingleFilter> for ERC1155BurnableEvents {
353 fn from(value: TransferSingleFilter) -> Self {
354 Self::TransferSingleFilter(value)
355 }
356 }
357 impl ::core::convert::From<UriFilter> for ERC1155BurnableEvents {
358 fn from(value: UriFilter) -> Self {
359 Self::UriFilter(value)
360 }
361 }
362 #[derive(
364 Clone,
365 ::ethers_contract::EthCall,
366 ::ethers_contract::EthDisplay,
367 Default,
368 Debug,
369 PartialEq,
370 Eq,
371 Hash
372 )]
373 #[ethcall(name = "balanceOf", abi = "balanceOf(address,uint256)")]
374 pub struct BalanceOfCall {
375 pub account: ::ethers_core::types::Address,
376 pub id: ::ethers_core::types::U256,
377 }
378 #[derive(
380 Clone,
381 ::ethers_contract::EthCall,
382 ::ethers_contract::EthDisplay,
383 Default,
384 Debug,
385 PartialEq,
386 Eq,
387 Hash
388 )]
389 #[ethcall(name = "balanceOfBatch", abi = "balanceOfBatch(address[],uint256[])")]
390 pub struct BalanceOfBatchCall {
391 pub accounts: ::std::vec::Vec<::ethers_core::types::Address>,
392 pub ids: ::std::vec::Vec<::ethers_core::types::U256>,
393 }
394 #[derive(
396 Clone,
397 ::ethers_contract::EthCall,
398 ::ethers_contract::EthDisplay,
399 Default,
400 Debug,
401 PartialEq,
402 Eq,
403 Hash
404 )]
405 #[ethcall(name = "burn", abi = "burn(address,uint256,uint256)")]
406 pub struct BurnCall {
407 pub account: ::ethers_core::types::Address,
408 pub id: ::ethers_core::types::U256,
409 pub value: ::ethers_core::types::U256,
410 }
411 #[derive(
413 Clone,
414 ::ethers_contract::EthCall,
415 ::ethers_contract::EthDisplay,
416 Default,
417 Debug,
418 PartialEq,
419 Eq,
420 Hash
421 )]
422 #[ethcall(name = "burnBatch", abi = "burnBatch(address,uint256[],uint256[])")]
423 pub struct BurnBatchCall {
424 pub account: ::ethers_core::types::Address,
425 pub ids: ::std::vec::Vec<::ethers_core::types::U256>,
426 pub values: ::std::vec::Vec<::ethers_core::types::U256>,
427 }
428 #[derive(
430 Clone,
431 ::ethers_contract::EthCall,
432 ::ethers_contract::EthDisplay,
433 Default,
434 Debug,
435 PartialEq,
436 Eq,
437 Hash
438 )]
439 #[ethcall(name = "isApprovedForAll", abi = "isApprovedForAll(address,address)")]
440 pub struct IsApprovedForAllCall {
441 pub account: ::ethers_core::types::Address,
442 pub operator: ::ethers_core::types::Address,
443 }
444 #[derive(
446 Clone,
447 ::ethers_contract::EthCall,
448 ::ethers_contract::EthDisplay,
449 Default,
450 Debug,
451 PartialEq,
452 Eq,
453 Hash
454 )]
455 #[ethcall(
456 name = "safeBatchTransferFrom",
457 abi = "safeBatchTransferFrom(address,address,uint256[],uint256[],bytes)"
458 )]
459 pub struct SafeBatchTransferFromCall {
460 pub from: ::ethers_core::types::Address,
461 pub to: ::ethers_core::types::Address,
462 pub ids: ::std::vec::Vec<::ethers_core::types::U256>,
463 pub amounts: ::std::vec::Vec<::ethers_core::types::U256>,
464 pub data: ::ethers_core::types::Bytes,
465 }
466 #[derive(
468 Clone,
469 ::ethers_contract::EthCall,
470 ::ethers_contract::EthDisplay,
471 Default,
472 Debug,
473 PartialEq,
474 Eq,
475 Hash
476 )]
477 #[ethcall(
478 name = "safeTransferFrom",
479 abi = "safeTransferFrom(address,address,uint256,uint256,bytes)"
480 )]
481 pub struct SafeTransferFromCall {
482 pub from: ::ethers_core::types::Address,
483 pub to: ::ethers_core::types::Address,
484 pub id: ::ethers_core::types::U256,
485 pub amount: ::ethers_core::types::U256,
486 pub data: ::ethers_core::types::Bytes,
487 }
488 #[derive(
490 Clone,
491 ::ethers_contract::EthCall,
492 ::ethers_contract::EthDisplay,
493 Default,
494 Debug,
495 PartialEq,
496 Eq,
497 Hash
498 )]
499 #[ethcall(name = "setApprovalForAll", abi = "setApprovalForAll(address,bool)")]
500 pub struct SetApprovalForAllCall {
501 pub operator: ::ethers_core::types::Address,
502 pub approved: bool,
503 }
504 #[derive(
506 Clone,
507 ::ethers_contract::EthCall,
508 ::ethers_contract::EthDisplay,
509 Default,
510 Debug,
511 PartialEq,
512 Eq,
513 Hash
514 )]
515 #[ethcall(name = "supportsInterface", abi = "supportsInterface(bytes4)")]
516 pub struct SupportsInterfaceCall {
517 pub interface_id: [u8; 4],
518 }
519 #[derive(
521 Clone,
522 ::ethers_contract::EthCall,
523 ::ethers_contract::EthDisplay,
524 Default,
525 Debug,
526 PartialEq,
527 Eq,
528 Hash
529 )]
530 #[ethcall(name = "uri", abi = "uri(uint256)")]
531 pub struct UriCall(pub ::ethers_core::types::U256);
532 #[derive(Clone, ::ethers_contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
534 pub enum ERC1155BurnableCalls {
535 BalanceOf(BalanceOfCall),
536 BalanceOfBatch(BalanceOfBatchCall),
537 Burn(BurnCall),
538 BurnBatch(BurnBatchCall),
539 IsApprovedForAll(IsApprovedForAllCall),
540 SafeBatchTransferFrom(SafeBatchTransferFromCall),
541 SafeTransferFrom(SafeTransferFromCall),
542 SetApprovalForAll(SetApprovalForAllCall),
543 SupportsInterface(SupportsInterfaceCall),
544 Uri(UriCall),
545 }
546 impl ::ethers_core::abi::AbiDecode for ERC1155BurnableCalls {
547 fn decode(
548 data: impl AsRef<[u8]>,
549 ) -> ::core::result::Result<Self, ::ethers_core::abi::AbiError> {
550 let data = data.as_ref();
551 if let Ok(decoded)
552 = <BalanceOfCall as ::ethers_core::abi::AbiDecode>::decode(data) {
553 return Ok(Self::BalanceOf(decoded));
554 }
555 if let Ok(decoded)
556 = <BalanceOfBatchCall as ::ethers_core::abi::AbiDecode>::decode(data) {
557 return Ok(Self::BalanceOfBatch(decoded));
558 }
559 if let Ok(decoded)
560 = <BurnCall as ::ethers_core::abi::AbiDecode>::decode(data) {
561 return Ok(Self::Burn(decoded));
562 }
563 if let Ok(decoded)
564 = <BurnBatchCall as ::ethers_core::abi::AbiDecode>::decode(data) {
565 return Ok(Self::BurnBatch(decoded));
566 }
567 if let Ok(decoded)
568 = <IsApprovedForAllCall as ::ethers_core::abi::AbiDecode>::decode(data) {
569 return Ok(Self::IsApprovedForAll(decoded));
570 }
571 if let Ok(decoded)
572 = <SafeBatchTransferFromCall as ::ethers_core::abi::AbiDecode>::decode(
573 data,
574 ) {
575 return Ok(Self::SafeBatchTransferFrom(decoded));
576 }
577 if let Ok(decoded)
578 = <SafeTransferFromCall as ::ethers_core::abi::AbiDecode>::decode(data) {
579 return Ok(Self::SafeTransferFrom(decoded));
580 }
581 if let Ok(decoded)
582 = <SetApprovalForAllCall as ::ethers_core::abi::AbiDecode>::decode(
583 data,
584 ) {
585 return Ok(Self::SetApprovalForAll(decoded));
586 }
587 if let Ok(decoded)
588 = <SupportsInterfaceCall as ::ethers_core::abi::AbiDecode>::decode(
589 data,
590 ) {
591 return Ok(Self::SupportsInterface(decoded));
592 }
593 if let Ok(decoded)
594 = <UriCall as ::ethers_core::abi::AbiDecode>::decode(data) {
595 return Ok(Self::Uri(decoded));
596 }
597 Err(::ethers_core::abi::Error::InvalidData.into())
598 }
599 }
600 impl ::ethers_core::abi::AbiEncode for ERC1155BurnableCalls {
601 fn encode(self) -> Vec<u8> {
602 match self {
603 Self::BalanceOf(element) => {
604 ::ethers_core::abi::AbiEncode::encode(element)
605 }
606 Self::BalanceOfBatch(element) => {
607 ::ethers_core::abi::AbiEncode::encode(element)
608 }
609 Self::Burn(element) => ::ethers_core::abi::AbiEncode::encode(element),
610 Self::BurnBatch(element) => {
611 ::ethers_core::abi::AbiEncode::encode(element)
612 }
613 Self::IsApprovedForAll(element) => {
614 ::ethers_core::abi::AbiEncode::encode(element)
615 }
616 Self::SafeBatchTransferFrom(element) => {
617 ::ethers_core::abi::AbiEncode::encode(element)
618 }
619 Self::SafeTransferFrom(element) => {
620 ::ethers_core::abi::AbiEncode::encode(element)
621 }
622 Self::SetApprovalForAll(element) => {
623 ::ethers_core::abi::AbiEncode::encode(element)
624 }
625 Self::SupportsInterface(element) => {
626 ::ethers_core::abi::AbiEncode::encode(element)
627 }
628 Self::Uri(element) => ::ethers_core::abi::AbiEncode::encode(element),
629 }
630 }
631 }
632 impl ::core::fmt::Display for ERC1155BurnableCalls {
633 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
634 match self {
635 Self::BalanceOf(element) => ::core::fmt::Display::fmt(element, f),
636 Self::BalanceOfBatch(element) => ::core::fmt::Display::fmt(element, f),
637 Self::Burn(element) => ::core::fmt::Display::fmt(element, f),
638 Self::BurnBatch(element) => ::core::fmt::Display::fmt(element, f),
639 Self::IsApprovedForAll(element) => ::core::fmt::Display::fmt(element, f),
640 Self::SafeBatchTransferFrom(element) => {
641 ::core::fmt::Display::fmt(element, f)
642 }
643 Self::SafeTransferFrom(element) => ::core::fmt::Display::fmt(element, f),
644 Self::SetApprovalForAll(element) => ::core::fmt::Display::fmt(element, f),
645 Self::SupportsInterface(element) => ::core::fmt::Display::fmt(element, f),
646 Self::Uri(element) => ::core::fmt::Display::fmt(element, f),
647 }
648 }
649 }
650 impl ::core::convert::From<BalanceOfCall> for ERC1155BurnableCalls {
651 fn from(value: BalanceOfCall) -> Self {
652 Self::BalanceOf(value)
653 }
654 }
655 impl ::core::convert::From<BalanceOfBatchCall> for ERC1155BurnableCalls {
656 fn from(value: BalanceOfBatchCall) -> Self {
657 Self::BalanceOfBatch(value)
658 }
659 }
660 impl ::core::convert::From<BurnCall> for ERC1155BurnableCalls {
661 fn from(value: BurnCall) -> Self {
662 Self::Burn(value)
663 }
664 }
665 impl ::core::convert::From<BurnBatchCall> for ERC1155BurnableCalls {
666 fn from(value: BurnBatchCall) -> Self {
667 Self::BurnBatch(value)
668 }
669 }
670 impl ::core::convert::From<IsApprovedForAllCall> for ERC1155BurnableCalls {
671 fn from(value: IsApprovedForAllCall) -> Self {
672 Self::IsApprovedForAll(value)
673 }
674 }
675 impl ::core::convert::From<SafeBatchTransferFromCall> for ERC1155BurnableCalls {
676 fn from(value: SafeBatchTransferFromCall) -> Self {
677 Self::SafeBatchTransferFrom(value)
678 }
679 }
680 impl ::core::convert::From<SafeTransferFromCall> for ERC1155BurnableCalls {
681 fn from(value: SafeTransferFromCall) -> Self {
682 Self::SafeTransferFrom(value)
683 }
684 }
685 impl ::core::convert::From<SetApprovalForAllCall> for ERC1155BurnableCalls {
686 fn from(value: SetApprovalForAllCall) -> Self {
687 Self::SetApprovalForAll(value)
688 }
689 }
690 impl ::core::convert::From<SupportsInterfaceCall> for ERC1155BurnableCalls {
691 fn from(value: SupportsInterfaceCall) -> Self {
692 Self::SupportsInterface(value)
693 }
694 }
695 impl ::core::convert::From<UriCall> for ERC1155BurnableCalls {
696 fn from(value: UriCall) -> Self {
697 Self::Uri(value)
698 }
699 }
700 #[derive(
702 Clone,
703 ::ethers_contract::EthAbiType,
704 ::ethers_contract::EthAbiCodec,
705 Default,
706 Debug,
707 PartialEq,
708 Eq,
709 Hash
710 )]
711 pub struct BalanceOfReturn(pub ::ethers_core::types::U256);
712 #[derive(
714 Clone,
715 ::ethers_contract::EthAbiType,
716 ::ethers_contract::EthAbiCodec,
717 Default,
718 Debug,
719 PartialEq,
720 Eq,
721 Hash
722 )]
723 pub struct BalanceOfBatchReturn(pub ::std::vec::Vec<::ethers_core::types::U256>);
724 #[derive(
726 Clone,
727 ::ethers_contract::EthAbiType,
728 ::ethers_contract::EthAbiCodec,
729 Default,
730 Debug,
731 PartialEq,
732 Eq,
733 Hash
734 )]
735 pub struct IsApprovedForAllReturn(pub bool);
736 #[derive(
738 Clone,
739 ::ethers_contract::EthAbiType,
740 ::ethers_contract::EthAbiCodec,
741 Default,
742 Debug,
743 PartialEq,
744 Eq,
745 Hash
746 )]
747 pub struct SupportsInterfaceReturn(pub bool);
748 #[derive(
750 Clone,
751 ::ethers_contract::EthAbiType,
752 ::ethers_contract::EthAbiCodec,
753 Default,
754 Debug,
755 PartialEq,
756 Eq,
757 Hash
758 )]
759 pub struct UriReturn(pub ::std::string::String);
760}