1#[allow(
69 non_camel_case_types,
70 non_snake_case,
71 clippy::pub_underscore_fields,
72 clippy::style,
73 clippy::empty_structs_with_brackets
74)]
75pub mod HoprNodeSafeRegistryEvents {
76 use super::*;
77 use alloy::sol_types as alloy_sol_types;
78 #[rustfmt::skip]
84 #[allow(clippy::all)]
85 pub static BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
86 b"",
87 );
88 #[rustfmt::skip]
94 #[allow(clippy::all)]
95 pub static DEPLOYED_BYTECODE: alloy_sol_types::private::Bytes = alloy_sol_types::private::Bytes::from_static(
96 b"",
97 );
98 #[derive(serde::Serialize, serde::Deserialize)]
99 #[derive(Default, Debug, PartialEq, Eq, Hash)]
100 #[allow(
105 non_camel_case_types,
106 non_snake_case,
107 clippy::pub_underscore_fields,
108 clippy::style
109 )]
110 #[derive(Clone)]
111 pub struct DergisteredNodeSafe {
112 #[allow(missing_docs)]
113 pub safeAddress: alloy::sol_types::private::Address,
114 #[allow(missing_docs)]
115 pub nodeAddress: alloy::sol_types::private::Address,
116 }
117 #[allow(
118 non_camel_case_types,
119 non_snake_case,
120 clippy::pub_underscore_fields,
121 clippy::style
122 )]
123 const _: () = {
124 use alloy::sol_types as alloy_sol_types;
125 #[automatically_derived]
126 impl alloy_sol_types::SolEvent for DergisteredNodeSafe {
127 type DataTuple<'a> = ();
128 type DataToken<'a> = <Self::DataTuple<
129 'a,
130 > as alloy_sol_types::SolType>::Token<'a>;
131 type TopicList = (
132 alloy_sol_types::sol_data::FixedBytes<32>,
133 alloy::sol_types::sol_data::Address,
134 alloy::sol_types::sol_data::Address,
135 );
136 const SIGNATURE: &'static str = "DergisteredNodeSafe(address,address)";
137 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
138 232u8, 55u8, 243u8, 57u8, 99u8, 146u8, 150u8, 190u8, 201u8, 244u8, 188u8,
139 152u8, 97u8, 84u8, 245u8, 255u8, 118u8, 187u8, 190u8, 252u8, 49u8, 73u8,
140 165u8, 18u8, 146u8, 14u8, 19u8, 17u8, 65u8, 78u8, 61u8, 161u8,
141 ]);
142 const ANONYMOUS: bool = false;
143 #[allow(unused_variables)]
144 #[inline]
145 fn new(
146 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
147 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
148 ) -> Self {
149 Self {
150 safeAddress: topics.1,
151 nodeAddress: topics.2,
152 }
153 }
154 #[inline]
155 fn check_signature(
156 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
157 ) -> alloy_sol_types::Result<()> {
158 if topics.0 != Self::SIGNATURE_HASH {
159 return Err(
160 alloy_sol_types::Error::invalid_event_signature_hash(
161 Self::SIGNATURE,
162 topics.0,
163 Self::SIGNATURE_HASH,
164 ),
165 );
166 }
167 Ok(())
168 }
169 #[inline]
170 fn tokenize_body(&self) -> Self::DataToken<'_> {
171 ()
172 }
173 #[inline]
174 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
175 (
176 Self::SIGNATURE_HASH.into(),
177 self.safeAddress.clone(),
178 self.nodeAddress.clone(),
179 )
180 }
181 #[inline]
182 fn encode_topics_raw(
183 &self,
184 out: &mut [alloy_sol_types::abi::token::WordToken],
185 ) -> alloy_sol_types::Result<()> {
186 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
187 return Err(alloy_sol_types::Error::Overrun);
188 }
189 out[0usize] = alloy_sol_types::abi::token::WordToken(
190 Self::SIGNATURE_HASH,
191 );
192 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
193 &self.safeAddress,
194 );
195 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
196 &self.nodeAddress,
197 );
198 Ok(())
199 }
200 }
201 #[automatically_derived]
202 impl alloy_sol_types::private::IntoLogData for DergisteredNodeSafe {
203 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
204 From::from(self)
205 }
206 fn into_log_data(self) -> alloy_sol_types::private::LogData {
207 From::from(&self)
208 }
209 }
210 #[automatically_derived]
211 impl From<&DergisteredNodeSafe> for alloy_sol_types::private::LogData {
212 #[inline]
213 fn from(this: &DergisteredNodeSafe) -> alloy_sol_types::private::LogData {
214 alloy_sol_types::SolEvent::encode_log_data(this)
215 }
216 }
217 };
218 #[derive(serde::Serialize, serde::Deserialize)]
219 #[derive(Default, Debug, PartialEq, Eq, Hash)]
220 #[allow(
225 non_camel_case_types,
226 non_snake_case,
227 clippy::pub_underscore_fields,
228 clippy::style
229 )]
230 #[derive(Clone)]
231 pub struct DomainSeparatorUpdated {
232 #[allow(missing_docs)]
233 pub domainSeparator: alloy::sol_types::private::FixedBytes<32>,
234 }
235 #[allow(
236 non_camel_case_types,
237 non_snake_case,
238 clippy::pub_underscore_fields,
239 clippy::style
240 )]
241 const _: () = {
242 use alloy::sol_types as alloy_sol_types;
243 #[automatically_derived]
244 impl alloy_sol_types::SolEvent for DomainSeparatorUpdated {
245 type DataTuple<'a> = ();
246 type DataToken<'a> = <Self::DataTuple<
247 'a,
248 > as alloy_sol_types::SolType>::Token<'a>;
249 type TopicList = (
250 alloy_sol_types::sol_data::FixedBytes<32>,
251 alloy::sol_types::sol_data::FixedBytes<32>,
252 );
253 const SIGNATURE: &'static str = "DomainSeparatorUpdated(bytes32)";
254 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
255 119u8, 31u8, 82u8, 64u8, 174u8, 95u8, 216u8, 167u8, 100u8, 13u8, 63u8,
256 184u8, 47u8, 167u8, 10u8, 171u8, 47u8, 177u8, 219u8, 243u8, 95u8, 46u8,
257 244u8, 100u8, 248u8, 80u8, 153u8, 70u8, 113u8, 118u8, 100u8, 197u8,
258 ]);
259 const ANONYMOUS: bool = false;
260 #[allow(unused_variables)]
261 #[inline]
262 fn new(
263 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
264 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
265 ) -> Self {
266 Self { domainSeparator: topics.1 }
267 }
268 #[inline]
269 fn check_signature(
270 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
271 ) -> alloy_sol_types::Result<()> {
272 if topics.0 != Self::SIGNATURE_HASH {
273 return Err(
274 alloy_sol_types::Error::invalid_event_signature_hash(
275 Self::SIGNATURE,
276 topics.0,
277 Self::SIGNATURE_HASH,
278 ),
279 );
280 }
281 Ok(())
282 }
283 #[inline]
284 fn tokenize_body(&self) -> Self::DataToken<'_> {
285 ()
286 }
287 #[inline]
288 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
289 (Self::SIGNATURE_HASH.into(), self.domainSeparator.clone())
290 }
291 #[inline]
292 fn encode_topics_raw(
293 &self,
294 out: &mut [alloy_sol_types::abi::token::WordToken],
295 ) -> alloy_sol_types::Result<()> {
296 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
297 return Err(alloy_sol_types::Error::Overrun);
298 }
299 out[0usize] = alloy_sol_types::abi::token::WordToken(
300 Self::SIGNATURE_HASH,
301 );
302 out[1usize] = <alloy::sol_types::sol_data::FixedBytes<
303 32,
304 > as alloy_sol_types::EventTopic>::encode_topic(&self.domainSeparator);
305 Ok(())
306 }
307 }
308 #[automatically_derived]
309 impl alloy_sol_types::private::IntoLogData for DomainSeparatorUpdated {
310 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
311 From::from(self)
312 }
313 fn into_log_data(self) -> alloy_sol_types::private::LogData {
314 From::from(&self)
315 }
316 }
317 #[automatically_derived]
318 impl From<&DomainSeparatorUpdated> for alloy_sol_types::private::LogData {
319 #[inline]
320 fn from(this: &DomainSeparatorUpdated) -> alloy_sol_types::private::LogData {
321 alloy_sol_types::SolEvent::encode_log_data(this)
322 }
323 }
324 };
325 #[derive(serde::Serialize, serde::Deserialize)]
326 #[derive(Default, Debug, PartialEq, Eq, Hash)]
327 #[allow(
332 non_camel_case_types,
333 non_snake_case,
334 clippy::pub_underscore_fields,
335 clippy::style
336 )]
337 #[derive(Clone)]
338 pub struct RegisteredNodeSafe {
339 #[allow(missing_docs)]
340 pub safeAddress: alloy::sol_types::private::Address,
341 #[allow(missing_docs)]
342 pub nodeAddress: alloy::sol_types::private::Address,
343 }
344 #[allow(
345 non_camel_case_types,
346 non_snake_case,
347 clippy::pub_underscore_fields,
348 clippy::style
349 )]
350 const _: () = {
351 use alloy::sol_types as alloy_sol_types;
352 #[automatically_derived]
353 impl alloy_sol_types::SolEvent for RegisteredNodeSafe {
354 type DataTuple<'a> = ();
355 type DataToken<'a> = <Self::DataTuple<
356 'a,
357 > as alloy_sol_types::SolType>::Token<'a>;
358 type TopicList = (
359 alloy_sol_types::sol_data::FixedBytes<32>,
360 alloy::sol_types::sol_data::Address,
361 alloy::sol_types::sol_data::Address,
362 );
363 const SIGNATURE: &'static str = "RegisteredNodeSafe(address,address)";
364 const SIGNATURE_HASH: alloy_sol_types::private::B256 = alloy_sol_types::private::B256::new([
365 119u8, 109u8, 164u8, 12u8, 191u8, 44u8, 34u8, 53u8, 82u8, 102u8, 27u8,
366 212u8, 133u8, 2u8, 206u8, 183u8, 36u8, 9u8, 179u8, 54u8, 43u8, 176u8,
367 198u8, 109u8, 137u8, 137u8, 189u8, 126u8, 32u8, 228u8, 73u8, 125u8,
368 ]);
369 const ANONYMOUS: bool = false;
370 #[allow(unused_variables)]
371 #[inline]
372 fn new(
373 topics: <Self::TopicList as alloy_sol_types::SolType>::RustType,
374 data: <Self::DataTuple<'_> as alloy_sol_types::SolType>::RustType,
375 ) -> Self {
376 Self {
377 safeAddress: topics.1,
378 nodeAddress: topics.2,
379 }
380 }
381 #[inline]
382 fn check_signature(
383 topics: &<Self::TopicList as alloy_sol_types::SolType>::RustType,
384 ) -> alloy_sol_types::Result<()> {
385 if topics.0 != Self::SIGNATURE_HASH {
386 return Err(
387 alloy_sol_types::Error::invalid_event_signature_hash(
388 Self::SIGNATURE,
389 topics.0,
390 Self::SIGNATURE_HASH,
391 ),
392 );
393 }
394 Ok(())
395 }
396 #[inline]
397 fn tokenize_body(&self) -> Self::DataToken<'_> {
398 ()
399 }
400 #[inline]
401 fn topics(&self) -> <Self::TopicList as alloy_sol_types::SolType>::RustType {
402 (
403 Self::SIGNATURE_HASH.into(),
404 self.safeAddress.clone(),
405 self.nodeAddress.clone(),
406 )
407 }
408 #[inline]
409 fn encode_topics_raw(
410 &self,
411 out: &mut [alloy_sol_types::abi::token::WordToken],
412 ) -> alloy_sol_types::Result<()> {
413 if out.len() < <Self::TopicList as alloy_sol_types::TopicList>::COUNT {
414 return Err(alloy_sol_types::Error::Overrun);
415 }
416 out[0usize] = alloy_sol_types::abi::token::WordToken(
417 Self::SIGNATURE_HASH,
418 );
419 out[1usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
420 &self.safeAddress,
421 );
422 out[2usize] = <alloy::sol_types::sol_data::Address as alloy_sol_types::EventTopic>::encode_topic(
423 &self.nodeAddress,
424 );
425 Ok(())
426 }
427 }
428 #[automatically_derived]
429 impl alloy_sol_types::private::IntoLogData for RegisteredNodeSafe {
430 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
431 From::from(self)
432 }
433 fn into_log_data(self) -> alloy_sol_types::private::LogData {
434 From::from(&self)
435 }
436 }
437 #[automatically_derived]
438 impl From<&RegisteredNodeSafe> for alloy_sol_types::private::LogData {
439 #[inline]
440 fn from(this: &RegisteredNodeSafe) -> alloy_sol_types::private::LogData {
441 alloy_sol_types::SolEvent::encode_log_data(this)
442 }
443 }
444 };
445 #[derive(serde::Serialize, serde::Deserialize)]
447 #[derive(Debug, PartialEq, Eq, Hash)]
448 pub enum HoprNodeSafeRegistryEventsEvents {
449 #[allow(missing_docs)]
450 DergisteredNodeSafe(DergisteredNodeSafe),
451 #[allow(missing_docs)]
452 DomainSeparatorUpdated(DomainSeparatorUpdated),
453 #[allow(missing_docs)]
454 RegisteredNodeSafe(RegisteredNodeSafe),
455 }
456 #[automatically_derived]
457 impl HoprNodeSafeRegistryEventsEvents {
458 pub const SELECTORS: &'static [[u8; 32usize]] = &[
465 [
466 119u8, 31u8, 82u8, 64u8, 174u8, 95u8, 216u8, 167u8, 100u8, 13u8, 63u8,
467 184u8, 47u8, 167u8, 10u8, 171u8, 47u8, 177u8, 219u8, 243u8, 95u8, 46u8,
468 244u8, 100u8, 248u8, 80u8, 153u8, 70u8, 113u8, 118u8, 100u8, 197u8,
469 ],
470 [
471 119u8, 109u8, 164u8, 12u8, 191u8, 44u8, 34u8, 53u8, 82u8, 102u8, 27u8,
472 212u8, 133u8, 2u8, 206u8, 183u8, 36u8, 9u8, 179u8, 54u8, 43u8, 176u8,
473 198u8, 109u8, 137u8, 137u8, 189u8, 126u8, 32u8, 228u8, 73u8, 125u8,
474 ],
475 [
476 232u8, 55u8, 243u8, 57u8, 99u8, 146u8, 150u8, 190u8, 201u8, 244u8, 188u8,
477 152u8, 97u8, 84u8, 245u8, 255u8, 118u8, 187u8, 190u8, 252u8, 49u8, 73u8,
478 165u8, 18u8, 146u8, 14u8, 19u8, 17u8, 65u8, 78u8, 61u8, 161u8,
479 ],
480 ];
481 }
482 #[automatically_derived]
483 impl alloy_sol_types::SolEventInterface for HoprNodeSafeRegistryEventsEvents {
484 const NAME: &'static str = "HoprNodeSafeRegistryEventsEvents";
485 const COUNT: usize = 3usize;
486 fn decode_raw_log(
487 topics: &[alloy_sol_types::Word],
488 data: &[u8],
489 ) -> alloy_sol_types::Result<Self> {
490 match topics.first().copied() {
491 Some(
492 <DergisteredNodeSafe as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
493 ) => {
494 <DergisteredNodeSafe as alloy_sol_types::SolEvent>::decode_raw_log(
495 topics,
496 data,
497 )
498 .map(Self::DergisteredNodeSafe)
499 }
500 Some(
501 <DomainSeparatorUpdated as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
502 ) => {
503 <DomainSeparatorUpdated as alloy_sol_types::SolEvent>::decode_raw_log(
504 topics,
505 data,
506 )
507 .map(Self::DomainSeparatorUpdated)
508 }
509 Some(
510 <RegisteredNodeSafe as alloy_sol_types::SolEvent>::SIGNATURE_HASH,
511 ) => {
512 <RegisteredNodeSafe as alloy_sol_types::SolEvent>::decode_raw_log(
513 topics,
514 data,
515 )
516 .map(Self::RegisteredNodeSafe)
517 }
518 _ => {
519 alloy_sol_types::private::Err(alloy_sol_types::Error::InvalidLog {
520 name: <Self as alloy_sol_types::SolEventInterface>::NAME,
521 log: alloy_sol_types::private::Box::new(
522 alloy_sol_types::private::LogData::new_unchecked(
523 topics.to_vec(),
524 data.to_vec().into(),
525 ),
526 ),
527 })
528 }
529 }
530 }
531 }
532 #[automatically_derived]
533 impl alloy_sol_types::private::IntoLogData for HoprNodeSafeRegistryEventsEvents {
534 fn to_log_data(&self) -> alloy_sol_types::private::LogData {
535 match self {
536 Self::DergisteredNodeSafe(inner) => {
537 alloy_sol_types::private::IntoLogData::to_log_data(inner)
538 }
539 Self::DomainSeparatorUpdated(inner) => {
540 alloy_sol_types::private::IntoLogData::to_log_data(inner)
541 }
542 Self::RegisteredNodeSafe(inner) => {
543 alloy_sol_types::private::IntoLogData::to_log_data(inner)
544 }
545 }
546 }
547 fn into_log_data(self) -> alloy_sol_types::private::LogData {
548 match self {
549 Self::DergisteredNodeSafe(inner) => {
550 alloy_sol_types::private::IntoLogData::into_log_data(inner)
551 }
552 Self::DomainSeparatorUpdated(inner) => {
553 alloy_sol_types::private::IntoLogData::into_log_data(inner)
554 }
555 Self::RegisteredNodeSafe(inner) => {
556 alloy_sol_types::private::IntoLogData::into_log_data(inner)
557 }
558 }
559 }
560 }
561 use alloy::contract as alloy_contract;
562 #[inline]
566 pub const fn new<
567 P: alloy_contract::private::Provider<N>,
568 N: alloy_contract::private::Network,
569 >(
570 address: alloy_sol_types::private::Address,
571 provider: P,
572 ) -> HoprNodeSafeRegistryEventsInstance<P, N> {
573 HoprNodeSafeRegistryEventsInstance::<P, N>::new(address, provider)
574 }
575 #[inline]
581 pub fn deploy<
582 P: alloy_contract::private::Provider<N>,
583 N: alloy_contract::private::Network,
584 >(
585 provider: P,
586 ) -> impl ::core::future::Future<
587 Output = alloy_contract::Result<HoprNodeSafeRegistryEventsInstance<P, N>>,
588 > {
589 HoprNodeSafeRegistryEventsInstance::<P, N>::deploy(provider)
590 }
591 #[inline]
597 pub fn deploy_builder<
598 P: alloy_contract::private::Provider<N>,
599 N: alloy_contract::private::Network,
600 >(provider: P) -> alloy_contract::RawCallBuilder<P, N> {
601 HoprNodeSafeRegistryEventsInstance::<P, N>::deploy_builder(provider)
602 }
603 #[derive(Clone)]
615 pub struct HoprNodeSafeRegistryEventsInstance<
616 P,
617 N = alloy_contract::private::Ethereum,
618 > {
619 address: alloy_sol_types::private::Address,
620 provider: P,
621 _network: ::core::marker::PhantomData<N>,
622 }
623 #[automatically_derived]
624 impl<P, N> ::core::fmt::Debug for HoprNodeSafeRegistryEventsInstance<P, N> {
625 #[inline]
626 fn fmt(&self, f: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result {
627 f.debug_tuple("HoprNodeSafeRegistryEventsInstance")
628 .field(&self.address)
629 .finish()
630 }
631 }
632 #[automatically_derived]
634 impl<
635 P: alloy_contract::private::Provider<N>,
636 N: alloy_contract::private::Network,
637 > HoprNodeSafeRegistryEventsInstance<P, N> {
638 #[inline]
642 pub const fn new(
643 address: alloy_sol_types::private::Address,
644 provider: P,
645 ) -> Self {
646 Self {
647 address,
648 provider,
649 _network: ::core::marker::PhantomData,
650 }
651 }
652 #[inline]
658 pub async fn deploy(
659 provider: P,
660 ) -> alloy_contract::Result<HoprNodeSafeRegistryEventsInstance<P, N>> {
661 let call_builder = Self::deploy_builder(provider);
662 let contract_address = call_builder.deploy().await?;
663 Ok(Self::new(contract_address, call_builder.provider))
664 }
665 #[inline]
671 pub fn deploy_builder(provider: P) -> alloy_contract::RawCallBuilder<P, N> {
672 alloy_contract::RawCallBuilder::new_raw_deploy(
673 provider,
674 ::core::clone::Clone::clone(&BYTECODE),
675 )
676 }
677 #[inline]
679 pub const fn address(&self) -> &alloy_sol_types::private::Address {
680 &self.address
681 }
682 #[inline]
684 pub fn set_address(&mut self, address: alloy_sol_types::private::Address) {
685 self.address = address;
686 }
687 pub fn at(mut self, address: alloy_sol_types::private::Address) -> Self {
689 self.set_address(address);
690 self
691 }
692 #[inline]
694 pub const fn provider(&self) -> &P {
695 &self.provider
696 }
697 }
698 impl<P: ::core::clone::Clone, N> HoprNodeSafeRegistryEventsInstance<&P, N> {
699 #[inline]
701 pub fn with_cloned_provider(self) -> HoprNodeSafeRegistryEventsInstance<P, N> {
702 HoprNodeSafeRegistryEventsInstance {
703 address: self.address,
704 provider: ::core::clone::Clone::clone(&self.provider),
705 _network: ::core::marker::PhantomData,
706 }
707 }
708 }
709 #[automatically_derived]
711 impl<
712 P: alloy_contract::private::Provider<N>,
713 N: alloy_contract::private::Network,
714 > HoprNodeSafeRegistryEventsInstance<P, N> {
715 pub fn call_builder<C: alloy_sol_types::SolCall>(
720 &self,
721 call: &C,
722 ) -> alloy_contract::SolCallBuilder<&P, C, N> {
723 alloy_contract::SolCallBuilder::new_sol(&self.provider, &self.address, call)
724 }
725 }
726 #[automatically_derived]
728 impl<
729 P: alloy_contract::private::Provider<N>,
730 N: alloy_contract::private::Network,
731 > HoprNodeSafeRegistryEventsInstance<P, N> {
732 pub fn event_filter<E: alloy_sol_types::SolEvent>(
737 &self,
738 ) -> alloy_contract::Event<&P, E, N> {
739 alloy_contract::Event::new_sol(&self.provider, &self.address)
740 }
741 pub fn DergisteredNodeSafe_filter(
743 &self,
744 ) -> alloy_contract::Event<&P, DergisteredNodeSafe, N> {
745 self.event_filter::<DergisteredNodeSafe>()
746 }
747 pub fn DomainSeparatorUpdated_filter(
749 &self,
750 ) -> alloy_contract::Event<&P, DomainSeparatorUpdated, N> {
751 self.event_filter::<DomainSeparatorUpdated>()
752 }
753 pub fn RegisteredNodeSafe_filter(
755 &self,
756 ) -> alloy_contract::Event<&P, RegisteredNodeSafe, N> {
757 self.event_filter::<RegisteredNodeSafe>()
758 }
759 }
760}