1pub use erc721_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 erc721_burnable {
13 #[rustfmt::skip]
14 const __ABI: &str = "[{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"approved\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[],\"indexed\":true}],\"type\":\"event\",\"name\":\"Approval\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"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\":\"from\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[],\"indexed\":true},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[],\"indexed\":true}],\"type\":\"event\",\"name\":\"Transfer\",\"outputs\":[],\"anonymous\":false},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"approve\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"balanceOf\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"burn\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"getApproved\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"owner\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"operator\",\"type\":\"address\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"isApprovedForAll\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\",\"components\":[]}]},{\"inputs\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"name\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"ownerOf\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"safeTransferFrom\",\"outputs\":[]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"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\":[],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"symbol\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"view\",\"type\":\"function\",\"name\":\"tokenURI\",\"outputs\":[{\"internalType\":\"string\",\"name\":\"\",\"type\":\"string\",\"components\":[]}]},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"from\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"address\",\"name\":\"to\",\"type\":\"address\",\"components\":[]},{\"internalType\":\"uint256\",\"name\":\"tokenId\",\"type\":\"uint256\",\"components\":[]}],\"stateMutability\":\"nonpayable\",\"type\":\"function\",\"name\":\"transferFrom\",\"outputs\":[]}]";
15 pub static ERC721BURNABLE_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 ERC721Burnable<M>(::ethers_contract::Contract<M>);
19 impl<M> ::core::clone::Clone for ERC721Burnable<M> {
20 fn clone(&self) -> Self {
21 Self(::core::clone::Clone::clone(&self.0))
22 }
23 }
24 impl<M> ::core::ops::Deref for ERC721Burnable<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 ERC721Burnable<M> {
31 fn deref_mut(&mut self) -> &mut Self::Target {
32 &mut self.0
33 }
34 }
35 impl<M> ::core::fmt::Debug for ERC721Burnable<M> {
36 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
37 f.debug_tuple(stringify!(ERC721Burnable)).field(&self.address()).finish()
38 }
39 }
40 impl<M: ::ethers_providers::Middleware> ERC721Burnable<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 ERC721BURNABLE_ABI.clone(),
51 client,
52 ),
53 )
54 }
55 pub fn approve(
57 &self,
58 to: ::ethers_core::types::Address,
59 token_id: ::ethers_core::types::U256,
60 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
61 self.0
62 .method_hash([9, 94, 167, 179], (to, token_id))
63 .expect("method not found (this should never happen)")
64 }
65 pub fn balance_of(
67 &self,
68 owner: ::ethers_core::types::Address,
69 ) -> ::ethers_contract::builders::ContractCall<M, ::ethers_core::types::U256> {
70 self.0
71 .method_hash([112, 160, 130, 49], owner)
72 .expect("method not found (this should never happen)")
73 }
74 pub fn burn(
76 &self,
77 token_id: ::ethers_core::types::U256,
78 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
79 self.0
80 .method_hash([66, 150, 108, 104], token_id)
81 .expect("method not found (this should never happen)")
82 }
83 pub fn get_approved(
85 &self,
86 token_id: ::ethers_core::types::U256,
87 ) -> ::ethers_contract::builders::ContractCall<
88 M,
89 ::ethers_core::types::Address,
90 > {
91 self.0
92 .method_hash([8, 24, 18, 252], token_id)
93 .expect("method not found (this should never happen)")
94 }
95 pub fn is_approved_for_all(
97 &self,
98 owner: ::ethers_core::types::Address,
99 operator: ::ethers_core::types::Address,
100 ) -> ::ethers_contract::builders::ContractCall<M, bool> {
101 self.0
102 .method_hash([233, 133, 233, 197], (owner, operator))
103 .expect("method not found (this should never happen)")
104 }
105 pub fn name(
107 &self,
108 ) -> ::ethers_contract::builders::ContractCall<M, ::std::string::String> {
109 self.0
110 .method_hash([6, 253, 222, 3], ())
111 .expect("method not found (this should never happen)")
112 }
113 pub fn owner_of(
115 &self,
116 token_id: ::ethers_core::types::U256,
117 ) -> ::ethers_contract::builders::ContractCall<
118 M,
119 ::ethers_core::types::Address,
120 > {
121 self.0
122 .method_hash([99, 82, 33, 30], token_id)
123 .expect("method not found (this should never happen)")
124 }
125 pub fn safe_transfer_from(
127 &self,
128 from: ::ethers_core::types::Address,
129 to: ::ethers_core::types::Address,
130 token_id: ::ethers_core::types::U256,
131 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
132 self.0
133 .method_hash([66, 132, 46, 14], (from, to, token_id))
134 .expect("method not found (this should never happen)")
135 }
136 pub fn safe_transfer_from_with_from_and_to_and_data(
138 &self,
139 from: ::ethers_core::types::Address,
140 to: ::ethers_core::types::Address,
141 token_id: ::ethers_core::types::U256,
142 data: ::ethers_core::types::Bytes,
143 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
144 self.0
145 .method_hash([184, 141, 79, 222], (from, to, token_id, data))
146 .expect("method not found (this should never happen)")
147 }
148 pub fn set_approval_for_all(
150 &self,
151 operator: ::ethers_core::types::Address,
152 approved: bool,
153 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
154 self.0
155 .method_hash([162, 44, 180, 101], (operator, approved))
156 .expect("method not found (this should never happen)")
157 }
158 pub fn supports_interface(
160 &self,
161 interface_id: [u8; 4],
162 ) -> ::ethers_contract::builders::ContractCall<M, bool> {
163 self.0
164 .method_hash([1, 255, 201, 167], interface_id)
165 .expect("method not found (this should never happen)")
166 }
167 pub fn symbol(
169 &self,
170 ) -> ::ethers_contract::builders::ContractCall<M, ::std::string::String> {
171 self.0
172 .method_hash([149, 216, 155, 65], ())
173 .expect("method not found (this should never happen)")
174 }
175 pub fn token_uri(
177 &self,
178 token_id: ::ethers_core::types::U256,
179 ) -> ::ethers_contract::builders::ContractCall<M, ::std::string::String> {
180 self.0
181 .method_hash([200, 123, 86, 221], token_id)
182 .expect("method not found (this should never happen)")
183 }
184 pub fn transfer_from(
186 &self,
187 from: ::ethers_core::types::Address,
188 to: ::ethers_core::types::Address,
189 token_id: ::ethers_core::types::U256,
190 ) -> ::ethers_contract::builders::ContractCall<M, ()> {
191 self.0
192 .method_hash([35, 184, 114, 221], (from, to, token_id))
193 .expect("method not found (this should never happen)")
194 }
195 pub fn approval_filter(
197 &self,
198 ) -> ::ethers_contract::builders::Event<::std::sync::Arc<M>, M, ApprovalFilter> {
199 self.0.event()
200 }
201 pub fn approval_for_all_filter(
203 &self,
204 ) -> ::ethers_contract::builders::Event<
205 ::std::sync::Arc<M>,
206 M,
207 ApprovalForAllFilter,
208 > {
209 self.0.event()
210 }
211 pub fn transfer_filter(
213 &self,
214 ) -> ::ethers_contract::builders::Event<::std::sync::Arc<M>, M, TransferFilter> {
215 self.0.event()
216 }
217 pub fn events(
219 &self,
220 ) -> ::ethers_contract::builders::Event<
221 ::std::sync::Arc<M>,
222 M,
223 ERC721BurnableEvents,
224 > {
225 self.0.event_with_filter(::core::default::Default::default())
226 }
227 }
228 impl<M: ::ethers_providers::Middleware> From<::ethers_contract::Contract<M>>
229 for ERC721Burnable<M> {
230 fn from(contract: ::ethers_contract::Contract<M>) -> Self {
231 Self::new(contract.address(), contract.client())
232 }
233 }
234 #[derive(
235 Clone,
236 ::ethers_contract::EthEvent,
237 ::ethers_contract::EthDisplay,
238 Default,
239 Debug,
240 PartialEq,
241 Eq,
242 Hash
243 )]
244 #[ethevent(name = "Approval", abi = "Approval(address,address,uint256)")]
245 pub struct ApprovalFilter {
246 #[ethevent(indexed)]
247 pub owner: ::ethers_core::types::Address,
248 #[ethevent(indexed)]
249 pub approved: ::ethers_core::types::Address,
250 #[ethevent(indexed)]
251 pub token_id: ::ethers_core::types::U256,
252 }
253 #[derive(
254 Clone,
255 ::ethers_contract::EthEvent,
256 ::ethers_contract::EthDisplay,
257 Default,
258 Debug,
259 PartialEq,
260 Eq,
261 Hash
262 )]
263 #[ethevent(name = "ApprovalForAll", abi = "ApprovalForAll(address,address,bool)")]
264 pub struct ApprovalForAllFilter {
265 #[ethevent(indexed)]
266 pub owner: ::ethers_core::types::Address,
267 #[ethevent(indexed)]
268 pub operator: ::ethers_core::types::Address,
269 pub approved: bool,
270 }
271 #[derive(
272 Clone,
273 ::ethers_contract::EthEvent,
274 ::ethers_contract::EthDisplay,
275 Default,
276 Debug,
277 PartialEq,
278 Eq,
279 Hash
280 )]
281 #[ethevent(name = "Transfer", abi = "Transfer(address,address,uint256)")]
282 pub struct TransferFilter {
283 #[ethevent(indexed)]
284 pub from: ::ethers_core::types::Address,
285 #[ethevent(indexed)]
286 pub to: ::ethers_core::types::Address,
287 #[ethevent(indexed)]
288 pub token_id: ::ethers_core::types::U256,
289 }
290 #[derive(Clone, ::ethers_contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
292 pub enum ERC721BurnableEvents {
293 ApprovalFilter(ApprovalFilter),
294 ApprovalForAllFilter(ApprovalForAllFilter),
295 TransferFilter(TransferFilter),
296 }
297 impl ::ethers_contract::EthLogDecode for ERC721BurnableEvents {
298 fn decode_log(
299 log: &::ethers_core::abi::RawLog,
300 ) -> ::core::result::Result<Self, ::ethers_core::abi::Error> {
301 if let Ok(decoded) = ApprovalFilter::decode_log(log) {
302 return Ok(ERC721BurnableEvents::ApprovalFilter(decoded));
303 }
304 if let Ok(decoded) = ApprovalForAllFilter::decode_log(log) {
305 return Ok(ERC721BurnableEvents::ApprovalForAllFilter(decoded));
306 }
307 if let Ok(decoded) = TransferFilter::decode_log(log) {
308 return Ok(ERC721BurnableEvents::TransferFilter(decoded));
309 }
310 Err(::ethers_core::abi::Error::InvalidData)
311 }
312 }
313 impl ::core::fmt::Display for ERC721BurnableEvents {
314 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
315 match self {
316 Self::ApprovalFilter(element) => ::core::fmt::Display::fmt(element, f),
317 Self::ApprovalForAllFilter(element) => {
318 ::core::fmt::Display::fmt(element, f)
319 }
320 Self::TransferFilter(element) => ::core::fmt::Display::fmt(element, f),
321 }
322 }
323 }
324 impl ::core::convert::From<ApprovalFilter> for ERC721BurnableEvents {
325 fn from(value: ApprovalFilter) -> Self {
326 Self::ApprovalFilter(value)
327 }
328 }
329 impl ::core::convert::From<ApprovalForAllFilter> for ERC721BurnableEvents {
330 fn from(value: ApprovalForAllFilter) -> Self {
331 Self::ApprovalForAllFilter(value)
332 }
333 }
334 impl ::core::convert::From<TransferFilter> for ERC721BurnableEvents {
335 fn from(value: TransferFilter) -> Self {
336 Self::TransferFilter(value)
337 }
338 }
339 #[derive(
341 Clone,
342 ::ethers_contract::EthCall,
343 ::ethers_contract::EthDisplay,
344 Default,
345 Debug,
346 PartialEq,
347 Eq,
348 Hash
349 )]
350 #[ethcall(name = "approve", abi = "approve(address,uint256)")]
351 pub struct ApproveCall {
352 pub to: ::ethers_core::types::Address,
353 pub token_id: ::ethers_core::types::U256,
354 }
355 #[derive(
357 Clone,
358 ::ethers_contract::EthCall,
359 ::ethers_contract::EthDisplay,
360 Default,
361 Debug,
362 PartialEq,
363 Eq,
364 Hash
365 )]
366 #[ethcall(name = "balanceOf", abi = "balanceOf(address)")]
367 pub struct BalanceOfCall {
368 pub owner: ::ethers_core::types::Address,
369 }
370 #[derive(
372 Clone,
373 ::ethers_contract::EthCall,
374 ::ethers_contract::EthDisplay,
375 Default,
376 Debug,
377 PartialEq,
378 Eq,
379 Hash
380 )]
381 #[ethcall(name = "burn", abi = "burn(uint256)")]
382 pub struct BurnCall {
383 pub token_id: ::ethers_core::types::U256,
384 }
385 #[derive(
387 Clone,
388 ::ethers_contract::EthCall,
389 ::ethers_contract::EthDisplay,
390 Default,
391 Debug,
392 PartialEq,
393 Eq,
394 Hash
395 )]
396 #[ethcall(name = "getApproved", abi = "getApproved(uint256)")]
397 pub struct GetApprovedCall {
398 pub token_id: ::ethers_core::types::U256,
399 }
400 #[derive(
402 Clone,
403 ::ethers_contract::EthCall,
404 ::ethers_contract::EthDisplay,
405 Default,
406 Debug,
407 PartialEq,
408 Eq,
409 Hash
410 )]
411 #[ethcall(name = "isApprovedForAll", abi = "isApprovedForAll(address,address)")]
412 pub struct IsApprovedForAllCall {
413 pub owner: ::ethers_core::types::Address,
414 pub operator: ::ethers_core::types::Address,
415 }
416 #[derive(
418 Clone,
419 ::ethers_contract::EthCall,
420 ::ethers_contract::EthDisplay,
421 Default,
422 Debug,
423 PartialEq,
424 Eq,
425 Hash
426 )]
427 #[ethcall(name = "name", abi = "name()")]
428 pub struct NameCall;
429 #[derive(
431 Clone,
432 ::ethers_contract::EthCall,
433 ::ethers_contract::EthDisplay,
434 Default,
435 Debug,
436 PartialEq,
437 Eq,
438 Hash
439 )]
440 #[ethcall(name = "ownerOf", abi = "ownerOf(uint256)")]
441 pub struct OwnerOfCall {
442 pub token_id: ::ethers_core::types::U256,
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 = "safeTransferFrom",
457 abi = "safeTransferFrom(address,address,uint256)"
458 )]
459 pub struct SafeTransferFromCall {
460 pub from: ::ethers_core::types::Address,
461 pub to: ::ethers_core::types::Address,
462 pub token_id: ::ethers_core::types::U256,
463 }
464 #[derive(
466 Clone,
467 ::ethers_contract::EthCall,
468 ::ethers_contract::EthDisplay,
469 Default,
470 Debug,
471 PartialEq,
472 Eq,
473 Hash
474 )]
475 #[ethcall(
476 name = "safeTransferFrom",
477 abi = "safeTransferFrom(address,address,uint256,bytes)"
478 )]
479 pub struct SafeTransferFromWithFromAndToAndDataCall {
480 pub from: ::ethers_core::types::Address,
481 pub to: ::ethers_core::types::Address,
482 pub token_id: ::ethers_core::types::U256,
483 pub data: ::ethers_core::types::Bytes,
484 }
485 #[derive(
487 Clone,
488 ::ethers_contract::EthCall,
489 ::ethers_contract::EthDisplay,
490 Default,
491 Debug,
492 PartialEq,
493 Eq,
494 Hash
495 )]
496 #[ethcall(name = "setApprovalForAll", abi = "setApprovalForAll(address,bool)")]
497 pub struct SetApprovalForAllCall {
498 pub operator: ::ethers_core::types::Address,
499 pub approved: bool,
500 }
501 #[derive(
503 Clone,
504 ::ethers_contract::EthCall,
505 ::ethers_contract::EthDisplay,
506 Default,
507 Debug,
508 PartialEq,
509 Eq,
510 Hash
511 )]
512 #[ethcall(name = "supportsInterface", abi = "supportsInterface(bytes4)")]
513 pub struct SupportsInterfaceCall {
514 pub interface_id: [u8; 4],
515 }
516 #[derive(
518 Clone,
519 ::ethers_contract::EthCall,
520 ::ethers_contract::EthDisplay,
521 Default,
522 Debug,
523 PartialEq,
524 Eq,
525 Hash
526 )]
527 #[ethcall(name = "symbol", abi = "symbol()")]
528 pub struct SymbolCall;
529 #[derive(
531 Clone,
532 ::ethers_contract::EthCall,
533 ::ethers_contract::EthDisplay,
534 Default,
535 Debug,
536 PartialEq,
537 Eq,
538 Hash
539 )]
540 #[ethcall(name = "tokenURI", abi = "tokenURI(uint256)")]
541 pub struct TokenURICall {
542 pub token_id: ::ethers_core::types::U256,
543 }
544 #[derive(
546 Clone,
547 ::ethers_contract::EthCall,
548 ::ethers_contract::EthDisplay,
549 Default,
550 Debug,
551 PartialEq,
552 Eq,
553 Hash
554 )]
555 #[ethcall(name = "transferFrom", abi = "transferFrom(address,address,uint256)")]
556 pub struct TransferFromCall {
557 pub from: ::ethers_core::types::Address,
558 pub to: ::ethers_core::types::Address,
559 pub token_id: ::ethers_core::types::U256,
560 }
561 #[derive(Clone, ::ethers_contract::EthAbiType, Debug, PartialEq, Eq, Hash)]
563 pub enum ERC721BurnableCalls {
564 Approve(ApproveCall),
565 BalanceOf(BalanceOfCall),
566 Burn(BurnCall),
567 GetApproved(GetApprovedCall),
568 IsApprovedForAll(IsApprovedForAllCall),
569 Name(NameCall),
570 OwnerOf(OwnerOfCall),
571 SafeTransferFrom(SafeTransferFromCall),
572 SafeTransferFromWithFromAndToAndData(SafeTransferFromWithFromAndToAndDataCall),
573 SetApprovalForAll(SetApprovalForAllCall),
574 SupportsInterface(SupportsInterfaceCall),
575 Symbol(SymbolCall),
576 TokenURI(TokenURICall),
577 TransferFrom(TransferFromCall),
578 }
579 impl ::ethers_core::abi::AbiDecode for ERC721BurnableCalls {
580 fn decode(
581 data: impl AsRef<[u8]>,
582 ) -> ::core::result::Result<Self, ::ethers_core::abi::AbiError> {
583 let data = data.as_ref();
584 if let Ok(decoded)
585 = <ApproveCall as ::ethers_core::abi::AbiDecode>::decode(data) {
586 return Ok(Self::Approve(decoded));
587 }
588 if let Ok(decoded)
589 = <BalanceOfCall as ::ethers_core::abi::AbiDecode>::decode(data) {
590 return Ok(Self::BalanceOf(decoded));
591 }
592 if let Ok(decoded)
593 = <BurnCall as ::ethers_core::abi::AbiDecode>::decode(data) {
594 return Ok(Self::Burn(decoded));
595 }
596 if let Ok(decoded)
597 = <GetApprovedCall as ::ethers_core::abi::AbiDecode>::decode(data) {
598 return Ok(Self::GetApproved(decoded));
599 }
600 if let Ok(decoded)
601 = <IsApprovedForAllCall as ::ethers_core::abi::AbiDecode>::decode(data) {
602 return Ok(Self::IsApprovedForAll(decoded));
603 }
604 if let Ok(decoded)
605 = <NameCall as ::ethers_core::abi::AbiDecode>::decode(data) {
606 return Ok(Self::Name(decoded));
607 }
608 if let Ok(decoded)
609 = <OwnerOfCall as ::ethers_core::abi::AbiDecode>::decode(data) {
610 return Ok(Self::OwnerOf(decoded));
611 }
612 if let Ok(decoded)
613 = <SafeTransferFromCall as ::ethers_core::abi::AbiDecode>::decode(data) {
614 return Ok(Self::SafeTransferFrom(decoded));
615 }
616 if let Ok(decoded)
617 = <SafeTransferFromWithFromAndToAndDataCall as ::ethers_core::abi::AbiDecode>::decode(
618 data,
619 ) {
620 return Ok(Self::SafeTransferFromWithFromAndToAndData(decoded));
621 }
622 if let Ok(decoded)
623 = <SetApprovalForAllCall as ::ethers_core::abi::AbiDecode>::decode(
624 data,
625 ) {
626 return Ok(Self::SetApprovalForAll(decoded));
627 }
628 if let Ok(decoded)
629 = <SupportsInterfaceCall as ::ethers_core::abi::AbiDecode>::decode(
630 data,
631 ) {
632 return Ok(Self::SupportsInterface(decoded));
633 }
634 if let Ok(decoded)
635 = <SymbolCall as ::ethers_core::abi::AbiDecode>::decode(data) {
636 return Ok(Self::Symbol(decoded));
637 }
638 if let Ok(decoded)
639 = <TokenURICall as ::ethers_core::abi::AbiDecode>::decode(data) {
640 return Ok(Self::TokenURI(decoded));
641 }
642 if let Ok(decoded)
643 = <TransferFromCall as ::ethers_core::abi::AbiDecode>::decode(data) {
644 return Ok(Self::TransferFrom(decoded));
645 }
646 Err(::ethers_core::abi::Error::InvalidData.into())
647 }
648 }
649 impl ::ethers_core::abi::AbiEncode for ERC721BurnableCalls {
650 fn encode(self) -> Vec<u8> {
651 match self {
652 Self::Approve(element) => ::ethers_core::abi::AbiEncode::encode(element),
653 Self::BalanceOf(element) => {
654 ::ethers_core::abi::AbiEncode::encode(element)
655 }
656 Self::Burn(element) => ::ethers_core::abi::AbiEncode::encode(element),
657 Self::GetApproved(element) => {
658 ::ethers_core::abi::AbiEncode::encode(element)
659 }
660 Self::IsApprovedForAll(element) => {
661 ::ethers_core::abi::AbiEncode::encode(element)
662 }
663 Self::Name(element) => ::ethers_core::abi::AbiEncode::encode(element),
664 Self::OwnerOf(element) => ::ethers_core::abi::AbiEncode::encode(element),
665 Self::SafeTransferFrom(element) => {
666 ::ethers_core::abi::AbiEncode::encode(element)
667 }
668 Self::SafeTransferFromWithFromAndToAndData(element) => {
669 ::ethers_core::abi::AbiEncode::encode(element)
670 }
671 Self::SetApprovalForAll(element) => {
672 ::ethers_core::abi::AbiEncode::encode(element)
673 }
674 Self::SupportsInterface(element) => {
675 ::ethers_core::abi::AbiEncode::encode(element)
676 }
677 Self::Symbol(element) => ::ethers_core::abi::AbiEncode::encode(element),
678 Self::TokenURI(element) => ::ethers_core::abi::AbiEncode::encode(element),
679 Self::TransferFrom(element) => {
680 ::ethers_core::abi::AbiEncode::encode(element)
681 }
682 }
683 }
684 }
685 impl ::core::fmt::Display for ERC721BurnableCalls {
686 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
687 match self {
688 Self::Approve(element) => ::core::fmt::Display::fmt(element, f),
689 Self::BalanceOf(element) => ::core::fmt::Display::fmt(element, f),
690 Self::Burn(element) => ::core::fmt::Display::fmt(element, f),
691 Self::GetApproved(element) => ::core::fmt::Display::fmt(element, f),
692 Self::IsApprovedForAll(element) => ::core::fmt::Display::fmt(element, f),
693 Self::Name(element) => ::core::fmt::Display::fmt(element, f),
694 Self::OwnerOf(element) => ::core::fmt::Display::fmt(element, f),
695 Self::SafeTransferFrom(element) => ::core::fmt::Display::fmt(element, f),
696 Self::SafeTransferFromWithFromAndToAndData(element) => {
697 ::core::fmt::Display::fmt(element, f)
698 }
699 Self::SetApprovalForAll(element) => ::core::fmt::Display::fmt(element, f),
700 Self::SupportsInterface(element) => ::core::fmt::Display::fmt(element, f),
701 Self::Symbol(element) => ::core::fmt::Display::fmt(element, f),
702 Self::TokenURI(element) => ::core::fmt::Display::fmt(element, f),
703 Self::TransferFrom(element) => ::core::fmt::Display::fmt(element, f),
704 }
705 }
706 }
707 impl ::core::convert::From<ApproveCall> for ERC721BurnableCalls {
708 fn from(value: ApproveCall) -> Self {
709 Self::Approve(value)
710 }
711 }
712 impl ::core::convert::From<BalanceOfCall> for ERC721BurnableCalls {
713 fn from(value: BalanceOfCall) -> Self {
714 Self::BalanceOf(value)
715 }
716 }
717 impl ::core::convert::From<BurnCall> for ERC721BurnableCalls {
718 fn from(value: BurnCall) -> Self {
719 Self::Burn(value)
720 }
721 }
722 impl ::core::convert::From<GetApprovedCall> for ERC721BurnableCalls {
723 fn from(value: GetApprovedCall) -> Self {
724 Self::GetApproved(value)
725 }
726 }
727 impl ::core::convert::From<IsApprovedForAllCall> for ERC721BurnableCalls {
728 fn from(value: IsApprovedForAllCall) -> Self {
729 Self::IsApprovedForAll(value)
730 }
731 }
732 impl ::core::convert::From<NameCall> for ERC721BurnableCalls {
733 fn from(value: NameCall) -> Self {
734 Self::Name(value)
735 }
736 }
737 impl ::core::convert::From<OwnerOfCall> for ERC721BurnableCalls {
738 fn from(value: OwnerOfCall) -> Self {
739 Self::OwnerOf(value)
740 }
741 }
742 impl ::core::convert::From<SafeTransferFromCall> for ERC721BurnableCalls {
743 fn from(value: SafeTransferFromCall) -> Self {
744 Self::SafeTransferFrom(value)
745 }
746 }
747 impl ::core::convert::From<SafeTransferFromWithFromAndToAndDataCall>
748 for ERC721BurnableCalls {
749 fn from(value: SafeTransferFromWithFromAndToAndDataCall) -> Self {
750 Self::SafeTransferFromWithFromAndToAndData(value)
751 }
752 }
753 impl ::core::convert::From<SetApprovalForAllCall> for ERC721BurnableCalls {
754 fn from(value: SetApprovalForAllCall) -> Self {
755 Self::SetApprovalForAll(value)
756 }
757 }
758 impl ::core::convert::From<SupportsInterfaceCall> for ERC721BurnableCalls {
759 fn from(value: SupportsInterfaceCall) -> Self {
760 Self::SupportsInterface(value)
761 }
762 }
763 impl ::core::convert::From<SymbolCall> for ERC721BurnableCalls {
764 fn from(value: SymbolCall) -> Self {
765 Self::Symbol(value)
766 }
767 }
768 impl ::core::convert::From<TokenURICall> for ERC721BurnableCalls {
769 fn from(value: TokenURICall) -> Self {
770 Self::TokenURI(value)
771 }
772 }
773 impl ::core::convert::From<TransferFromCall> for ERC721BurnableCalls {
774 fn from(value: TransferFromCall) -> Self {
775 Self::TransferFrom(value)
776 }
777 }
778 #[derive(
780 Clone,
781 ::ethers_contract::EthAbiType,
782 ::ethers_contract::EthAbiCodec,
783 Default,
784 Debug,
785 PartialEq,
786 Eq,
787 Hash
788 )]
789 pub struct BalanceOfReturn(pub ::ethers_core::types::U256);
790 #[derive(
792 Clone,
793 ::ethers_contract::EthAbiType,
794 ::ethers_contract::EthAbiCodec,
795 Default,
796 Debug,
797 PartialEq,
798 Eq,
799 Hash
800 )]
801 pub struct GetApprovedReturn(pub ::ethers_core::types::Address);
802 #[derive(
804 Clone,
805 ::ethers_contract::EthAbiType,
806 ::ethers_contract::EthAbiCodec,
807 Default,
808 Debug,
809 PartialEq,
810 Eq,
811 Hash
812 )]
813 pub struct IsApprovedForAllReturn(pub bool);
814 #[derive(
816 Clone,
817 ::ethers_contract::EthAbiType,
818 ::ethers_contract::EthAbiCodec,
819 Default,
820 Debug,
821 PartialEq,
822 Eq,
823 Hash
824 )]
825 pub struct NameReturn(pub ::std::string::String);
826 #[derive(
828 Clone,
829 ::ethers_contract::EthAbiType,
830 ::ethers_contract::EthAbiCodec,
831 Default,
832 Debug,
833 PartialEq,
834 Eq,
835 Hash
836 )]
837 pub struct OwnerOfReturn(pub ::ethers_core::types::Address);
838 #[derive(
840 Clone,
841 ::ethers_contract::EthAbiType,
842 ::ethers_contract::EthAbiCodec,
843 Default,
844 Debug,
845 PartialEq,
846 Eq,
847 Hash
848 )]
849 pub struct SupportsInterfaceReturn(pub bool);
850 #[derive(
852 Clone,
853 ::ethers_contract::EthAbiType,
854 ::ethers_contract::EthAbiCodec,
855 Default,
856 Debug,
857 PartialEq,
858 Eq,
859 Hash
860 )]
861 pub struct SymbolReturn(pub ::std::string::String);
862 #[derive(
864 Clone,
865 ::ethers_contract::EthAbiType,
866 ::ethers_contract::EthAbiCodec,
867 Default,
868 Debug,
869 PartialEq,
870 Eq,
871 Hash
872 )]
873 pub struct TokenURIReturn(pub ::std::string::String);
874}