1#[allow(
56 non_camel_case_types,
57 non_snake_case,
58 clippy::pub_underscore_fields,
59 clippy::style,
60 clippy::empty_structs_with_brackets
61)]
62pub mod Errors {
63 use super::*;
64 use alloy::sol_types as alloy_sol_types;
65 #[rustfmt::skip]
71 #[allow(clippy::all)]
72 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
73 b"`\x80\x80`@R4`\x17W`9\x90\x81`\x1C\x8290\x81PP\xF3[_\x80\xFD\xFE_\x80\xFD\xFE\xA2dipfsX\"\x12 (\xB5\"5\x18\xA8+o\x0Co\x80\xE0C\xB3}\xB2 \x89\xF8r\x18\xE6\x06\xA4\r>\xA5rq\x8E\xF3\x7FdsolcC\0\x08\x1C\x003",
74 );
75 #[rustfmt::skip]
81 #[allow(clippy::all)]
82 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
83 b"_\x80\xFD\xFE\xA2dipfsX\"\x12 (\xB5\"5\x18\xA8+o\x0Co\x80\xE0C\xB3}\xB2 \x89\xF8r\x18\xE6\x06\xA4\r>\xA5rq\x8E\xF3\x7FdsolcC\0\x08\x1C\x003",
84 );
85 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
90 #[derive(Clone)]
91 pub struct FailedCall {}
92 #[allow(
93 non_camel_case_types,
94 non_snake_case,
95 clippy::pub_underscore_fields,
96 clippy::style
97 )]
98 const _: () = {
99 use alloy::sol_types as alloy_sol_types;
100 #[doc(hidden)]
101 type UnderlyingSolTuple<'a> = ();
102 #[doc(hidden)]
103 type UnderlyingRustTuple<'a> = ();
104 #[cfg(test)]
105 #[allow(dead_code, unreachable_patterns)]
106 fn _type_assertion(
107 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
108 ) {
109 match _t {
110 alloy_sol_types::private::AssertTypeEq::<
111 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
112 >(_) => {}
113 }
114 }
115 #[automatically_derived]
116 #[doc(hidden)]
117 impl ::core::convert::From<FailedCall> for UnderlyingRustTuple<'_> {
118 fn from(value: FailedCall) -> Self {
119 ()
120 }
121 }
122 #[automatically_derived]
123 #[doc(hidden)]
124 impl ::core::convert::From<UnderlyingRustTuple<'_>> for FailedCall {
125 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
126 Self {}
127 }
128 }
129 #[automatically_derived]
130 impl alloy_sol_types::SolError for FailedCall {
131 type Parameters<'a> = UnderlyingSolTuple<'a>;
132 type Token<'a> = <Self::Parameters<
133 'a,
134 > as alloy_sol_types::SolType>::Token<'a>;
135 const SIGNATURE: &'static str = "FailedCall()";
136 const SELECTOR: [u8; 4] = [214u8, 189u8, 162u8, 117u8];
137 #[inline]
138 fn new<'a>(
139 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
140 ) -> Self {
141 tuple.into()
142 }
143 #[inline]
144 fn tokenize(&self) -> Self::Token<'_> {
145 ()
146 }
147 }
148 };
149 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
154 #[derive(Clone)]
155 pub struct FailedDeployment {}
156 #[allow(
157 non_camel_case_types,
158 non_snake_case,
159 clippy::pub_underscore_fields,
160 clippy::style
161 )]
162 const _: () = {
163 use alloy::sol_types as alloy_sol_types;
164 #[doc(hidden)]
165 type UnderlyingSolTuple<'a> = ();
166 #[doc(hidden)]
167 type UnderlyingRustTuple<'a> = ();
168 #[cfg(test)]
169 #[allow(dead_code, unreachable_patterns)]
170 fn _type_assertion(
171 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
172 ) {
173 match _t {
174 alloy_sol_types::private::AssertTypeEq::<
175 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
176 >(_) => {}
177 }
178 }
179 #[automatically_derived]
180 #[doc(hidden)]
181 impl ::core::convert::From<FailedDeployment> for UnderlyingRustTuple<'_> {
182 fn from(value: FailedDeployment) -> Self {
183 ()
184 }
185 }
186 #[automatically_derived]
187 #[doc(hidden)]
188 impl ::core::convert::From<UnderlyingRustTuple<'_>> for FailedDeployment {
189 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
190 Self {}
191 }
192 }
193 #[automatically_derived]
194 impl alloy_sol_types::SolError for FailedDeployment {
195 type Parameters<'a> = UnderlyingSolTuple<'a>;
196 type Token<'a> = <Self::Parameters<
197 'a,
198 > as alloy_sol_types::SolType>::Token<'a>;
199 const SIGNATURE: &'static str = "FailedDeployment()";
200 const SELECTOR: [u8; 4] = [176u8, 110u8, 191u8, 61u8];
201 #[inline]
202 fn new<'a>(
203 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
204 ) -> Self {
205 tuple.into()
206 }
207 #[inline]
208 fn tokenize(&self) -> Self::Token<'_> {
209 ()
210 }
211 }
212 };
213 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
218 #[derive(Clone)]
219 pub struct InsufficientBalance {
220 #[allow(missing_docs)]
221 pub balance: alloy::sol_types::private::primitives::aliases::U256,
222 #[allow(missing_docs)]
223 pub needed: alloy::sol_types::private::primitives::aliases::U256,
224 }
225 #[allow(
226 non_camel_case_types,
227 non_snake_case,
228 clippy::pub_underscore_fields,
229 clippy::style
230 )]
231 const _: () = {
232 use alloy::sol_types as alloy_sol_types;
233 #[doc(hidden)]
234 type UnderlyingSolTuple<'a> = (
235 alloy::sol_types::sol_data::Uint<256>,
236 alloy::sol_types::sol_data::Uint<256>,
237 );
238 #[doc(hidden)]
239 type UnderlyingRustTuple<'a> = (
240 alloy::sol_types::private::primitives::aliases::U256,
241 alloy::sol_types::private::primitives::aliases::U256,
242 );
243 #[cfg(test)]
244 #[allow(dead_code, unreachable_patterns)]
245 fn _type_assertion(
246 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
247 ) {
248 match _t {
249 alloy_sol_types::private::AssertTypeEq::<
250 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
251 >(_) => {}
252 }
253 }
254 #[automatically_derived]
255 #[doc(hidden)]
256 impl ::core::convert::From<InsufficientBalance> for UnderlyingRustTuple<'_> {
257 fn from(value: InsufficientBalance) -> Self {
258 (value.balance, value.needed)
259 }
260 }
261 #[automatically_derived]
262 #[doc(hidden)]
263 impl ::core::convert::From<UnderlyingRustTuple<'_>> for InsufficientBalance {
264 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
265 Self {
266 balance: tuple.0,
267 needed: tuple.1,
268 }
269 }
270 }
271 #[automatically_derived]
272 impl alloy_sol_types::SolError for InsufficientBalance {
273 type Parameters<'a> = UnderlyingSolTuple<'a>;
274 type Token<'a> = <Self::Parameters<
275 'a,
276 > as alloy_sol_types::SolType>::Token<'a>;
277 const SIGNATURE: &'static str = "InsufficientBalance(uint256,uint256)";
278 const SELECTOR: [u8; 4] = [207u8, 71u8, 145u8, 129u8];
279 #[inline]
280 fn new<'a>(
281 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
282 ) -> Self {
283 tuple.into()
284 }
285 #[inline]
286 fn tokenize(&self) -> Self::Token<'_> {
287 (
288 <alloy::sol_types::sol_data::Uint<
289 256,
290 > as alloy_sol_types::SolType>::tokenize(&self.balance),
291 <alloy::sol_types::sol_data::Uint<
292 256,
293 > as alloy_sol_types::SolType>::tokenize(&self.needed),
294 )
295 }
296 }
297 };
298 #[allow(non_camel_case_types, non_snake_case, clippy::pub_underscore_fields)]
303 #[derive(Clone)]
304 pub struct MissingPrecompile {
305 #[allow(missing_docs)]
306 pub _0: alloy::sol_types::private::Address,
307 }
308 #[allow(
309 non_camel_case_types,
310 non_snake_case,
311 clippy::pub_underscore_fields,
312 clippy::style
313 )]
314 const _: () = {
315 use alloy::sol_types as alloy_sol_types;
316 #[doc(hidden)]
317 type UnderlyingSolTuple<'a> = (alloy::sol_types::sol_data::Address,);
318 #[doc(hidden)]
319 type UnderlyingRustTuple<'a> = (alloy::sol_types::private::Address,);
320 #[cfg(test)]
321 #[allow(dead_code, unreachable_patterns)]
322 fn _type_assertion(
323 _t: alloy_sol_types::private::AssertTypeEq<UnderlyingRustTuple>,
324 ) {
325 match _t {
326 alloy_sol_types::private::AssertTypeEq::<
327 <UnderlyingSolTuple as alloy_sol_types::SolType>::RustType,
328 >(_) => {}
329 }
330 }
331 #[automatically_derived]
332 #[doc(hidden)]
333 impl ::core::convert::From<MissingPrecompile> for UnderlyingRustTuple<'_> {
334 fn from(value: MissingPrecompile) -> Self {
335 (value._0,)
336 }
337 }
338 #[automatically_derived]
339 #[doc(hidden)]
340 impl ::core::convert::From<UnderlyingRustTuple<'_>> for MissingPrecompile {
341 fn from(tuple: UnderlyingRustTuple<'_>) -> Self {
342 Self { _0: tuple.0 }
343 }
344 }
345 #[automatically_derived]
346 impl alloy_sol_types::SolError for MissingPrecompile {
347 type Parameters<'a> = UnderlyingSolTuple<'a>;
348 type Token<'a> = <Self::Parameters<
349 'a,
350 > as alloy_sol_types::SolType>::Token<'a>;
351 const SIGNATURE: &'static str = "MissingPrecompile(address)";
352 const SELECTOR: [u8; 4] = [66u8, 176u8, 27u8, 206u8];
353 #[inline]
354 fn new<'a>(
355 tuple: <Self::Parameters<'a> as alloy_sol_types::SolType>::RustType,
356 ) -> Self {
357 tuple.into()
358 }
359 #[inline]
360 fn tokenize(&self) -> Self::Token<'_> {
361 (
362 <alloy::sol_types::sol_data::Address as alloy_sol_types::SolType>::tokenize(
363 &self._0,
364 ),
365 )
366 }
367 }
368 };
369 pub enum ErrorsErrors {
371 #[allow(missing_docs)]
372 FailedCall(FailedCall),
373 #[allow(missing_docs)]
374 FailedDeployment(FailedDeployment),
375 #[allow(missing_docs)]
376 InsufficientBalance(InsufficientBalance),
377 #[allow(missing_docs)]
378 MissingPrecompile(MissingPrecompile),
379 }
380 #[automatically_derived]
381 impl ErrorsErrors {
382 pub const SELECTORS: &'static [[u8; 4usize]] = &[
389 [66u8, 176u8, 27u8, 206u8],
390 [176u8, 110u8, 191u8, 61u8],
391 [207u8, 71u8, 145u8, 129u8],
392 [214u8, 189u8, 162u8, 117u8],
393 ];
394 }
395 #[automatically_derived]
396 impl alloy_sol_types::SolInterface for ErrorsErrors {
397 const NAME: &'static str = "ErrorsErrors";
398 const MIN_DATA_LENGTH: usize = 0usize;
399 const COUNT: usize = 4usize;
400 #[inline]
401 fn selector(&self) -> [u8; 4] {
402 match self {
403 Self::FailedCall(_) => {
404 <FailedCall as alloy_sol_types::SolError>::SELECTOR
405 }
406 Self::FailedDeployment(_) => {
407 <FailedDeployment as alloy_sol_types::SolError>::SELECTOR
408 }
409 Self::InsufficientBalance(_) => {
410 <InsufficientBalance as alloy_sol_types::SolError>::SELECTOR
411 }
412 Self::MissingPrecompile(_) => {
413 <MissingPrecompile as alloy_sol_types::SolError>::SELECTOR
414 }
415 }
416 }
417 #[inline]
418 fn selector_at(i: usize) -> ::core::option::Option<[u8; 4]> {
419 Self::SELECTORS.get(i).copied()
420 }
421 #[inline]
422 fn valid_selector(selector: [u8; 4]) -> bool {
423 Self::SELECTORS.binary_search(&selector).is_ok()
424 }
425 #[inline]
426 #[allow(non_snake_case)]
427 fn abi_decode_raw(
428 selector: [u8; 4],
429 data: &[u8],
430 validate: bool,
431 ) -> alloy_sol_types::Result<Self> {
432 static DECODE_SHIMS: &[fn(
433 &[u8],
434 bool,
435 ) -> alloy_sol_types::Result<ErrorsErrors>] = &[
436 {
437 fn MissingPrecompile(
438 data: &[u8],
439 validate: bool,
440 ) -> alloy_sol_types::Result<ErrorsErrors> {
441 <MissingPrecompile as alloy_sol_types::SolError>::abi_decode_raw(
442 data,
443 validate,
444 )
445 .map(ErrorsErrors::MissingPrecompile)
446 }
447 MissingPrecompile
448 },
449 {
450 fn FailedDeployment(
451 data: &[u8],
452 validate: bool,
453 ) -> alloy_sol_types::Result<ErrorsErrors> {
454 <FailedDeployment as alloy_sol_types::SolError>::abi_decode_raw(
455 data,
456 validate,
457 )
458 .map(ErrorsErrors::FailedDeployment)
459 }
460 FailedDeployment
461 },
462 {
463 fn InsufficientBalance(
464 data: &[u8],
465 validate: bool,
466 ) -> alloy_sol_types::Result<ErrorsErrors> {
467 <InsufficientBalance as alloy_sol_types::SolError>::abi_decode_raw(
468 data,
469 validate,
470 )
471 .map(ErrorsErrors::InsufficientBalance)
472 }
473 InsufficientBalance
474 },
475 {
476 fn FailedCall(
477 data: &[u8],
478 validate: bool,
479 ) -> alloy_sol_types::Result<ErrorsErrors> {
480 <FailedCall as alloy_sol_types::SolError>::abi_decode_raw(
481 data,
482 validate,
483 )
484 .map(ErrorsErrors::FailedCall)
485 }
486 FailedCall
487 },
488 ];
489 let Ok(idx) = Self::SELECTORS.binary_search(&selector) else {
490 return Err(
491 alloy_sol_types::Error::unknown_selector(
492 <Self as alloy_sol_types::SolInterface>::NAME,
493 selector,
494 ),
495 );
496 };
497 DECODE_SHIMS[idx](data, validate)
498 }
499 #[inline]
500 fn abi_encoded_size(&self) -> usize {
501 match self {
502 Self::FailedCall(inner) => {
503 <FailedCall as alloy_sol_types::SolError>::abi_encoded_size(inner)
504 }
505 Self::FailedDeployment(inner) => {
506 <FailedDeployment as alloy_sol_types::SolError>::abi_encoded_size(
507 inner,
508 )
509 }
510 Self::InsufficientBalance(inner) => {
511 <InsufficientBalance as alloy_sol_types::SolError>::abi_encoded_size(
512 inner,
513 )
514 }
515 Self::MissingPrecompile(inner) => {
516 <MissingPrecompile as alloy_sol_types::SolError>::abi_encoded_size(
517 inner,
518 )
519 }
520 }
521 }
522 #[inline]
523 fn abi_encode_raw(&self, out: &mut alloy_sol_types::private::Vec<u8>) {
524 match self {
525 Self::FailedCall(inner) => {
526 <FailedCall as alloy_sol_types::SolError>::abi_encode_raw(inner, out)
527 }
528 Self::FailedDeployment(inner) => {
529 <FailedDeployment as alloy_sol_types::SolError>::abi_encode_raw(
530 inner,
531 out,
532 )
533 }
534 Self::InsufficientBalance(inner) => {
535 <InsufficientBalance as alloy_sol_types::SolError>::abi_encode_raw(
536 inner,
537 out,
538 )
539 }
540 Self::MissingPrecompile(inner) => {
541 <MissingPrecompile as alloy_sol_types::SolError>::abi_encode_raw(
542 inner,
543 out,
544 )
545 }
546 }
547 }
548 }
549 use alloy::contract as alloy_contract;
550 #[inline]
554 pub const fn new<
555 T: alloy_contract::private::Transport + ::core::clone::Clone,
556 P: alloy_contract::private::Provider<T, N>,
557 N: alloy_contract::private::Network,
558 >(
559 address: alloy_sol_types::private::Address,
560 provider: P,
561 ) -> ErrorsInstance<T, P, N> {
562 ErrorsInstance::<T, P, N>::new(address, provider)
563 }
564 #[inline]
570 pub fn deploy<
571 T: alloy_contract::private::Transport + ::core::clone::Clone,
572 P: alloy_contract::private::Provider<T, N>,
573 N: alloy_contract::private::Network,
574 >(
575 provider: P,
576 ) -> impl ::core::future::Future<
577 Output = alloy_contract::Result<ErrorsInstance<T, P, N>>,
578 > {
579 ErrorsInstance::<T, P, N>::deploy(provider)
580 }
581 #[inline]
587 pub fn deploy_builder<
588 T: alloy_contract::private::Transport + ::core::clone::Clone,
589 P: alloy_contract::private::Provider<T, N>,
590 N: alloy_contract::private::Network,
591 >(provider: P) -> alloy_contract::RawCallBuilder<T, P, N> {
592 ErrorsInstance::<T, P, N>::deploy_builder(provider)
593 }
594 #[derive(Clone)]
606 pub struct ErrorsInstance<T, P, N = alloy_contract::private::Ethereum> {
607 address: alloy_sol_types::private::Address,
608 provider: P,
609 _network_transport: ::core::marker::PhantomData<(N, T)>,
610 }
611 #[automatically_derived]
612 impl<T, P, N> ::core::fmt::Debug for ErrorsInstance<T, P, N> {
613 #[inline]
614 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
615 f.debug_tuple("ErrorsInstance").field(&self.address).finish()
616 }
617 }
618 #[automatically_derived]
620 impl<
621 T: alloy_contract::private::Transport + ::core::clone::Clone,
622 P: alloy_contract::private::Provider<T, N>,
623 N: alloy_contract::private::Network,
624 > ErrorsInstance<T, P, N> {
625 #[inline]
629 pub const fn new(
630 address: alloy_sol_types::private::Address,
631 provider: P,
632 ) -> Self {
633 Self {
634 address,
635 provider,
636 _network_transport: ::core::marker::PhantomData,
637 }
638 }
639 #[inline]
645 pub async fn deploy(
646 provider: P,
647 ) -> alloy_contract::Result<ErrorsInstance<T, P, N>> {
648 let call_builder = Self::deploy_builder(provider);
649 let contract_address = call_builder.deploy().await?;
650 Ok(Self::new(contract_address, call_builder.provider))
651 }
652 #[inline]
658 pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder<T, P, N> {
659 alloy_contract::RawCallBuilder::new_raw_deploy(
660 provider,
661 ::core::clone::Clone::clone(&BYTECODE),
662 )
663 }
664 #[inline]
666 pub const fn address(&self) -> &alloy_sol_types::private::Address {
667 &self.address
668 }
669 #[inline]
671 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
672 self.address = address;
673 }
674 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
676 self.set_address(address);
677 self
678 }
679 #[inline]
681 pub const fn provider(&self) -> &P {
682 &self.provider
683 }
684 }
685 impl<T, P: ::core::clone::Clone, N> ErrorsInstance<T, &P, N> {
686 #[inline]
688 pub fn with_cloned_provider(self) -> ErrorsInstance<T, P, N> {
689 ErrorsInstance {
690 address: self.address,
691 provider: ::core::clone::Clone::clone(&self.provider),
692 _network_transport: ::core::marker::PhantomData,
693 }
694 }
695 }
696 #[automatically_derived]
698 impl<
699 T: alloy_contract::private::Transport + ::core::clone::Clone,
700 P: alloy_contract::private::Provider<T, N>,
701 N: alloy_contract::private::Network,
702 > ErrorsInstance<T, P, N> {
703 pub fn call_builder<C: alloy_sol_types::SolCall>(
708 &self,
709 call: &C,
710 ) -> alloy_contract::SolCallBuilder<T, &P, C, N> {
711 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
712 }
713 }
714 #[automatically_derived]
716 impl<
717 T: alloy_contract::private::Transport + ::core::clone::Clone,
718 P: alloy_contract::private::Provider<T, N>,
719 N: alloy_contract::private::Network,
720 > ErrorsInstance<T, P, N> {
721 pub fn event_filter<E: alloy_sol_types::SolEvent>(
726 &self,
727 ) -> alloy_contract::Event<T, &P, E, N> {
728 alloy_contract::Event::new_sol(&self.provider, &self.address)
729 }
730 }
731}