1#![warn(clippy::all)]
3#![allow(unused_parens, unused_variables, unused_mut, unused_imports, unreachable_code)]
4
5pub mod natural {
6
7 pub use fidl_next_common_fuchsia_metrics::natural::*;
8
9 #[derive(Debug, PartialEq)]
10 pub struct MetricEventLoggerFactoryCreateMetricEventLoggerRequest {
11 pub project_spec: crate::natural::ProjectSpec,
12
13 pub logger:
14 ::fidl_next::ServerEnd<crate::MetricEventLogger, ::fidl_next::fuchsia::zx::Channel>,
15 }
16
17 unsafe impl<___E>
18 ::fidl_next::Encode<
19 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
20 ___E,
21 > for MetricEventLoggerFactoryCreateMetricEventLoggerRequest
22 where
23 ___E: ::fidl_next::encoder::InternalHandleEncoder + ?Sized,
24 ___E: ::fidl_next::Encoder,
25 ___E: ::fidl_next::fuchsia::HandleEncoder,
26 {
27 #[inline]
28 fn encode(
29 self,
30 encoder_: &mut ___E,
31 out_: &mut ::core::mem::MaybeUninit<
32 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
33 >,
34 _: (),
35 ) -> ::core::result::Result<(), ::fidl_next::EncodeError> {
36 ::fidl_next::munge! {
37 let crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest {
38 project_spec,
39 logger,
40
41 } = out_;
42 }
43
44 ::fidl_next::Encode::encode(self.project_spec, encoder_, project_spec, ())?;
45
46 let mut _field = unsafe { ::fidl_next::Slot::new_unchecked(project_spec.as_mut_ptr()) };
47
48 ::fidl_next::Encode::encode(self.logger, encoder_, logger, ())?;
49
50 let mut _field = unsafe { ::fidl_next::Slot::new_unchecked(logger.as_mut_ptr()) };
51
52 Ok(())
53 }
54 }
55
56 unsafe impl<___E>
57 ::fidl_next::EncodeOption<
58 ::fidl_next::wire::Box<
59 'static,
60 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
61 >,
62 ___E,
63 > for MetricEventLoggerFactoryCreateMetricEventLoggerRequest
64 where
65 ___E: ::fidl_next::Encoder + ?Sized,
66 MetricEventLoggerFactoryCreateMetricEventLoggerRequest: ::fidl_next::Encode<
67 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
68 ___E,
69 >,
70 {
71 #[inline]
72 fn encode_option(
73 this: ::core::option::Option<Self>,
74 encoder: &mut ___E,
75 out: &mut ::core::mem::MaybeUninit<
76 ::fidl_next::wire::Box<
77 'static,
78 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
79 >,
80 >,
81 _: (),
82 ) -> ::core::result::Result<(), ::fidl_next::EncodeError> {
83 if let Some(inner) = this {
84 ::fidl_next::EncoderExt::encode_next(encoder, inner)?;
85 ::fidl_next::wire::Box::encode_present(out);
86 } else {
87 ::fidl_next::wire::Box::encode_absent(out);
88 }
89
90 Ok(())
91 }
92 }
93
94 impl<'de>
95 ::fidl_next::FromWire<
96 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'de>,
97 > for MetricEventLoggerFactoryCreateMetricEventLoggerRequest
98 {
99 #[inline]
100 fn from_wire(
101 wire: crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'de>,
102 ) -> Self {
103 Self {
104 project_spec: ::fidl_next::FromWire::from_wire(wire.project_spec),
105
106 logger: ::fidl_next::FromWire::from_wire(wire.logger),
107 }
108 }
109 }
110
111 #[derive(Debug, PartialEq)]
112 pub struct MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest {
113 pub project_spec: crate::natural::ProjectSpec,
114
115 pub experiment_ids: ::std::vec::Vec<u32>,
116
117 pub logger:
118 ::fidl_next::ServerEnd<crate::MetricEventLogger, ::fidl_next::fuchsia::zx::Channel>,
119 }
120
121 unsafe impl<___E>
122 ::fidl_next::Encode<
123 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
124 'static,
125 >,
126 ___E,
127 > for MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest
128 where
129 ___E: ::fidl_next::encoder::InternalHandleEncoder + ?Sized,
130 ___E: ::fidl_next::Encoder,
131 ___E: ::fidl_next::fuchsia::HandleEncoder,
132 {
133 #[inline]
134 fn encode(
135 self,
136 encoder_: &mut ___E,
137 out_: &mut ::core::mem::MaybeUninit<
138 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
139 'static,
140 >,
141 >,
142 _: (),
143 ) -> ::core::result::Result<(), ::fidl_next::EncodeError> {
144 ::fidl_next::munge! {
145 let crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest {
146 project_spec,
147 experiment_ids,
148 logger,
149
150 } = out_;
151 }
152
153 ::fidl_next::Encode::encode(self.project_spec, encoder_, project_spec, ())?;
154
155 let mut _field = unsafe { ::fidl_next::Slot::new_unchecked(project_spec.as_mut_ptr()) };
156
157 ::fidl_next::Encode::encode(self.experiment_ids, encoder_, experiment_ids, (100, ()))?;
158
159 let mut _field =
160 unsafe { ::fidl_next::Slot::new_unchecked(experiment_ids.as_mut_ptr()) };
161 ::fidl_next::Constrained::validate(_field, (100, ()))?;
162
163 ::fidl_next::Encode::encode(self.logger, encoder_, logger, ())?;
164
165 let mut _field = unsafe { ::fidl_next::Slot::new_unchecked(logger.as_mut_ptr()) };
166
167 Ok(())
168 }
169 }
170
171 unsafe impl<___E>
172 ::fidl_next::EncodeOption<
173 ::fidl_next::wire::Box<
174 'static,
175 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
176 'static,
177 >,
178 >,
179 ___E,
180 > for MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest
181 where
182 ___E: ::fidl_next::Encoder + ?Sized,
183 MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest: ::fidl_next::Encode<
184 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
185 'static,
186 >,
187 ___E,
188 >,
189 {
190 #[inline]
191 fn encode_option(
192 this: ::core::option::Option<Self>,
193 encoder: &mut ___E,
194 out: &mut ::core::mem::MaybeUninit<::fidl_next::wire::Box<'static, crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'static>>>,
195 _: (),
196 ) -> ::core::result::Result<(), ::fidl_next::EncodeError> {
197 if let Some(inner) = this {
198 ::fidl_next::EncoderExt::encode_next(encoder, inner)?;
199 ::fidl_next::wire::Box::encode_present(out);
200 } else {
201 ::fidl_next::wire::Box::encode_absent(out);
202 }
203
204 Ok(())
205 }
206 }
207
208 impl<'de>
209 ::fidl_next::FromWire<
210 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'de>,
211 > for MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest
212 {
213 #[inline]
214 fn from_wire(
215 wire: crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'de>,
216 ) -> Self {
217 Self {
218 project_spec: ::fidl_next::FromWire::from_wire(wire.project_spec),
219
220 experiment_ids: ::fidl_next::FromWire::from_wire(wire.experiment_ids),
221
222 logger: ::fidl_next::FromWire::from_wire(wire.logger),
223 }
224 }
225 }
226}
227
228pub mod wire {
229
230 pub use fidl_next_common_fuchsia_metrics::wire::*;
231
232 #[derive(Debug)]
234 #[repr(C)]
235 pub struct MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'de> {
236 pub project_spec: crate::wire::ProjectSpec<'de>,
237
238 pub logger:
239 ::fidl_next::ServerEnd<crate::MetricEventLogger, ::fidl_next::wire::fuchsia::Channel>,
240 }
241
242 static_assertions::const_assert_eq!(
243 std::mem::size_of::<MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'_>>(),
244 24
245 );
246 static_assertions::const_assert_eq!(
247 std::mem::align_of::<MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'_>>(),
248 8
249 );
250
251 static_assertions::const_assert_eq!(
252 std::mem::offset_of!(
253 MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'_>,
254 project_spec
255 ),
256 0
257 );
258
259 static_assertions::const_assert_eq!(
260 std::mem::offset_of!(MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'_>, logger),
261 16
262 );
263
264 impl ::fidl_next::Constrained for MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'_> {
265 type Constraint = ();
266
267 fn validate(
268 _: ::fidl_next::Slot<'_, Self>,
269 _: Self::Constraint,
270 ) -> Result<(), ::fidl_next::ValidationError> {
271 Ok(())
272 }
273 }
274
275 unsafe impl ::fidl_next::Wire for MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static> {
276 type Narrowed<'de> = MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'de>;
277
278 #[inline]
279 fn zero_padding(out_: &mut ::core::mem::MaybeUninit<Self>) {
280 ::fidl_next::munge! {
281 let Self {
282 project_spec,
283 logger,
284
285 } = &mut *out_;
286 }
287
288 ::fidl_next::Wire::zero_padding(project_spec);
289
290 ::fidl_next::Wire::zero_padding(logger);
291
292 unsafe {
293 out_.as_mut_ptr().cast::<u8>().add(20).write_bytes(0, 4);
294 }
295 }
296 }
297
298 unsafe impl<'de, ___D> ::fidl_next::Decode<___D>
299 for MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'de>
300 where
301 ___D: ::fidl_next::decoder::InternalHandleDecoder + ?Sized,
302 ___D: ::fidl_next::Decoder<'de>,
303 ___D: ::fidl_next::fuchsia::HandleDecoder,
304 {
305 fn decode(
306 slot_: ::fidl_next::Slot<'_, Self>,
307 decoder_: &mut ___D,
308 _: (),
309 ) -> ::core::result::Result<(), ::fidl_next::DecodeError> {
310 if slot_.as_bytes()[20..24] != [0u8; 4] {
311 return Err(::fidl_next::DecodeError::InvalidPadding);
312 }
313
314 ::fidl_next::munge! {
315 let Self {
316 mut project_spec,
317 mut logger,
318
319 } = slot_;
320 }
321
322 let _field = project_spec.as_mut();
323
324 ::fidl_next::Decode::decode(project_spec.as_mut(), decoder_, ())?;
325
326 let _field = logger.as_mut();
327
328 ::fidl_next::Decode::decode(logger.as_mut(), decoder_, ())?;
329
330 Ok(())
331 }
332 }
333
334 impl<'de> ::fidl_next::IntoNatural for MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'de> {
335 type Natural = crate::natural::MetricEventLoggerFactoryCreateMetricEventLoggerRequest;
336 }
337
338 #[derive(Debug)]
340 #[repr(C)]
341 pub struct MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'de> {
342 pub project_spec: crate::wire::ProjectSpec<'de>,
343
344 pub experiment_ids: ::fidl_next::wire::Vector<'de, ::fidl_next::wire::Uint32>,
345
346 pub logger:
347 ::fidl_next::ServerEnd<crate::MetricEventLogger, ::fidl_next::wire::fuchsia::Channel>,
348 }
349
350 static_assertions::const_assert_eq!(
351 std::mem::size_of::<
352 MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'_>,
353 >(),
354 40
355 );
356 static_assertions::const_assert_eq!(
357 std::mem::align_of::<
358 MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'_>,
359 >(),
360 8
361 );
362
363 static_assertions::const_assert_eq!(
364 std::mem::offset_of!(
365 MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'_>,
366 project_spec
367 ),
368 0
369 );
370
371 static_assertions::const_assert_eq!(
372 std::mem::offset_of!(
373 MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'_>,
374 experiment_ids
375 ),
376 16
377 );
378
379 static_assertions::const_assert_eq!(
380 std::mem::offset_of!(
381 MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'_>,
382 logger
383 ),
384 32
385 );
386
387 impl ::fidl_next::Constrained
388 for MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'_>
389 {
390 type Constraint = ();
391
392 fn validate(
393 _: ::fidl_next::Slot<'_, Self>,
394 _: Self::Constraint,
395 ) -> Result<(), ::fidl_next::ValidationError> {
396 Ok(())
397 }
398 }
399
400 unsafe impl ::fidl_next::Wire
401 for MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'static>
402 {
403 type Narrowed<'de> =
404 MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'de>;
405
406 #[inline]
407 fn zero_padding(out_: &mut ::core::mem::MaybeUninit<Self>) {
408 ::fidl_next::munge! {
409 let Self {
410 project_spec,
411 experiment_ids,
412 logger,
413
414 } = &mut *out_;
415 }
416
417 ::fidl_next::Wire::zero_padding(project_spec);
418
419 ::fidl_next::Wire::zero_padding(experiment_ids);
420
421 ::fidl_next::Wire::zero_padding(logger);
422
423 unsafe {
424 out_.as_mut_ptr().cast::<u8>().add(36).write_bytes(0, 4);
425 }
426 }
427 }
428
429 unsafe impl<'de, ___D> ::fidl_next::Decode<___D>
430 for MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'de>
431 where
432 ___D: ::fidl_next::decoder::InternalHandleDecoder + ?Sized,
433 ___D: ::fidl_next::Decoder<'de>,
434 ___D: ::fidl_next::fuchsia::HandleDecoder,
435 {
436 fn decode(
437 slot_: ::fidl_next::Slot<'_, Self>,
438 decoder_: &mut ___D,
439 _: (),
440 ) -> ::core::result::Result<(), ::fidl_next::DecodeError> {
441 if slot_.as_bytes()[36..40] != [0u8; 4] {
442 return Err(::fidl_next::DecodeError::InvalidPadding);
443 }
444
445 ::fidl_next::munge! {
446 let Self {
447 mut project_spec,
448 mut experiment_ids,
449 mut logger,
450
451 } = slot_;
452 }
453
454 let _field = project_spec.as_mut();
455
456 ::fidl_next::Decode::decode(project_spec.as_mut(), decoder_, ())?;
457
458 let _field = experiment_ids.as_mut();
459 ::fidl_next::Constrained::validate(_field, (100, ()))?;
460 ::fidl_next::Decode::decode(experiment_ids.as_mut(), decoder_, (100, ()))?;
461
462 let experiment_ids = unsafe { experiment_ids.deref_unchecked() };
463
464 if experiment_ids.len() > 100 {
465 return Err(::fidl_next::DecodeError::VectorTooLong {
466 size: experiment_ids.len() as u64,
467 limit: 100,
468 });
469 }
470
471 let _field = logger.as_mut();
472
473 ::fidl_next::Decode::decode(logger.as_mut(), decoder_, ())?;
474
475 Ok(())
476 }
477 }
478
479 impl<'de> ::fidl_next::IntoNatural
480 for MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'de>
481 {
482 type Natural =
483 crate::natural::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest;
484 }
485}
486
487pub mod wire_optional {
488
489 pub use fidl_next_common_fuchsia_metrics::wire_optional::*;
490}
491
492pub mod generic {
493
494 pub use fidl_next_common_fuchsia_metrics::generic::*;
495
496 pub struct MetricEventLoggerFactoryCreateMetricEventLoggerRequest<T0, T1> {
498 pub project_spec: T0,
499
500 pub logger: T1,
501 }
502
503 unsafe impl<___E, T0, T1>
504 ::fidl_next::Encode<
505 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
506 ___E,
507 > for MetricEventLoggerFactoryCreateMetricEventLoggerRequest<T0, T1>
508 where
509 ___E: ::fidl_next::encoder::InternalHandleEncoder + ?Sized,
510 ___E: ::fidl_next::Encoder,
511 ___E: ::fidl_next::fuchsia::HandleEncoder,
512 T0: ::fidl_next::Encode<crate::wire::ProjectSpec<'static>, ___E>,
513 T1: ::fidl_next::Encode<
514 ::fidl_next::ServerEnd<
515 crate::MetricEventLogger,
516 ::fidl_next::wire::fuchsia::Channel,
517 >,
518 ___E,
519 >,
520 {
521 #[inline]
522 fn encode(
523 self,
524 encoder_: &mut ___E,
525 out_: &mut ::core::mem::MaybeUninit<
526 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
527 >,
528 _: (),
529 ) -> ::core::result::Result<(), ::fidl_next::EncodeError> {
530 ::fidl_next::munge! {
531 let crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest {
532 project_spec,
533 logger,
534
535 } = out_;
536 }
537
538 ::fidl_next::Encode::encode(self.project_spec, encoder_, project_spec, ())?;
539
540 ::fidl_next::Encode::encode(self.logger, encoder_, logger, ())?;
541
542 Ok(())
543 }
544 }
545
546 unsafe impl<'a, ___E, T0, T1>
547 ::fidl_next::Encode<
548 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
549 ___E,
550 > for &'a MetricEventLoggerFactoryCreateMetricEventLoggerRequest<T0, T1>
551 where
552 ___E: ::fidl_next::encoder::InternalHandleEncoder + ?Sized,
553 ___E: ::fidl_next::Encoder,
554 ___E: ::fidl_next::fuchsia::HandleEncoder,
555 &'a T0: ::fidl_next::Encode<crate::wire::ProjectSpec<'static>, ___E>,
556 &'a T1: ::fidl_next::Encode<
557 ::fidl_next::ServerEnd<
558 crate::MetricEventLogger,
559 ::fidl_next::wire::fuchsia::Channel,
560 >,
561 ___E,
562 >,
563 {
564 #[inline]
565 fn encode(
566 self,
567 encoder_: &mut ___E,
568 out_: &mut ::core::mem::MaybeUninit<
569 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>,
570 >,
571 _: (),
572 ) -> ::core::result::Result<(), ::fidl_next::EncodeError> {
573 ::fidl_next::munge! {
574 let crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest {
575 project_spec,
576 logger,
577
578 } = out_;
579 }
580
581 ::fidl_next::Encode::encode(&self.project_spec, encoder_, project_spec, ())?;
582
583 ::fidl_next::Encode::encode(&self.logger, encoder_, logger, ())?;
584
585 Ok(())
586 }
587 }
588
589 pub struct MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<T0, T1, T2> {
591 pub project_spec: T0,
592
593 pub experiment_ids: T1,
594
595 pub logger: T2,
596 }
597
598 unsafe impl<___E, T0, T1, T2>
599 ::fidl_next::Encode<
600 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
601 'static,
602 >,
603 ___E,
604 > for MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<T0, T1, T2>
605 where
606 ___E: ::fidl_next::encoder::InternalHandleEncoder + ?Sized,
607 ___E: ::fidl_next::Encoder,
608 ___E: ::fidl_next::fuchsia::HandleEncoder,
609 T0: ::fidl_next::Encode<crate::wire::ProjectSpec<'static>, ___E>,
610 T1: ::fidl_next::Encode<::fidl_next::wire::Vector<'static, ::fidl_next::wire::Uint32>, ___E>,
611 T2: ::fidl_next::Encode<
612 ::fidl_next::ServerEnd<
613 crate::MetricEventLogger,
614 ::fidl_next::wire::fuchsia::Channel,
615 >,
616 ___E,
617 >,
618 {
619 #[inline]
620 fn encode(
621 self,
622 encoder_: &mut ___E,
623 out_: &mut ::core::mem::MaybeUninit<
624 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
625 'static,
626 >,
627 >,
628 _: (),
629 ) -> ::core::result::Result<(), ::fidl_next::EncodeError> {
630 ::fidl_next::munge! {
631 let crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest {
632 project_spec,
633 experiment_ids,
634 logger,
635
636 } = out_;
637 }
638
639 ::fidl_next::Encode::encode(self.project_spec, encoder_, project_spec, ())?;
640
641 ::fidl_next::Encode::encode(self.experiment_ids, encoder_, experiment_ids, (100, ()))?;
642
643 ::fidl_next::Encode::encode(self.logger, encoder_, logger, ())?;
644
645 Ok(())
646 }
647 }
648
649 unsafe impl<'a, ___E, T0, T1, T2>
650 ::fidl_next::Encode<
651 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
652 'static,
653 >,
654 ___E,
655 > for &'a MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<T0, T1, T2>
656 where
657 ___E: ::fidl_next::encoder::InternalHandleEncoder + ?Sized,
658 ___E: ::fidl_next::Encoder,
659 ___E: ::fidl_next::fuchsia::HandleEncoder,
660 &'a T0: ::fidl_next::Encode<crate::wire::ProjectSpec<'static>, ___E>,
661 &'a T1: ::fidl_next::Encode<::fidl_next::wire::Vector<'static, ::fidl_next::wire::Uint32>, ___E>,
662 &'a T2: ::fidl_next::Encode<
663 ::fidl_next::ServerEnd<
664 crate::MetricEventLogger,
665 ::fidl_next::wire::fuchsia::Channel,
666 >,
667 ___E,
668 >,
669 {
670 #[inline]
671 fn encode(
672 self,
673 encoder_: &mut ___E,
674 out_: &mut ::core::mem::MaybeUninit<
675 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
676 'static,
677 >,
678 >,
679 _: (),
680 ) -> ::core::result::Result<(), ::fidl_next::EncodeError> {
681 ::fidl_next::munge! {
682 let crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest {
683 project_spec,
684 experiment_ids,
685 logger,
686
687 } = out_;
688 }
689
690 ::fidl_next::Encode::encode(&self.project_spec, encoder_, project_spec, ())?;
691
692 ::fidl_next::Encode::encode(&self.experiment_ids, encoder_, experiment_ids, (100, ()))?;
693
694 ::fidl_next::Encode::encode(&self.logger, encoder_, logger, ())?;
695
696 Ok(())
697 }
698 }
699}
700
701pub use self::natural::*;
702
703#[doc = " A factory that is used to create a MetricEventLogger for a specific project.\n"]
705#[derive(PartialEq, Debug)]
706pub struct MetricEventLoggerFactory;
707
708impl ::fidl_next::Discoverable for MetricEventLoggerFactory {
709 const PROTOCOL_NAME: &'static str = "fuchsia.metrics.MetricEventLoggerFactory";
710}
711
712#[cfg(target_os = "fuchsia")]
713impl ::fidl_next::HasTransport for MetricEventLoggerFactory {
714 type Transport = ::fidl_next::fuchsia::zx::Channel;
715}
716
717pub mod metric_event_logger_factory {
718 pub mod prelude {
719 pub use crate::{
720 MetricEventLoggerFactory, MetricEventLoggerFactoryClientHandler,
721 MetricEventLoggerFactoryLocalClientHandler, MetricEventLoggerFactoryLocalServerHandler,
722 MetricEventLoggerFactoryServerHandler, metric_event_logger_factory,
723 };
724
725 pub use crate::natural::Error;
726
727 pub use crate::natural::MetricEventLoggerFactoryCreateMetricEventLoggerRequest;
728
729 pub use crate::natural::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest;
730
731 pub use crate::natural::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsResponse;
732
733 pub use crate::natural::MetricEventLoggerFactoryCreateMetricEventLoggerResponse;
734 }
735
736 pub struct CreateMetricEventLogger;
737
738 impl ::fidl_next::Method for CreateMetricEventLogger {
739 const ORDINAL: u64 = 967417524583938558;
740 const FLEXIBILITY: ::fidl_next::protocol::Flexibility =
741 ::fidl_next::protocol::Flexibility::Strict;
742
743 type Protocol = crate::MetricEventLoggerFactory;
744
745 type Request = crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'static>;
746 }
747
748 impl ::fidl_next::TwoWayMethod for CreateMetricEventLogger {
749 type Response = ::fidl_next::wire::Result<
750 'static,
751 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerResponse,
752 crate::wire::Error,
753 >;
754 }
755
756 impl<___R> ::fidl_next::Respond<___R> for CreateMetricEventLogger {
757 type Output = ::core::result::Result<___R, ::fidl_next::never::Never>;
758
759 fn respond(response: ___R) -> Self::Output {
760 ::core::result::Result::Ok(response)
761 }
762 }
763
764 impl<___R> ::fidl_next::RespondErr<___R> for CreateMetricEventLogger {
765 type Output = ::core::result::Result<::fidl_next::never::Never, ___R>;
766
767 fn respond_err(response: ___R) -> Self::Output {
768 ::core::result::Result::Err(response)
769 }
770 }
771
772 pub struct CreateMetricEventLoggerWithExperiments;
773
774 impl ::fidl_next::Method for CreateMetricEventLoggerWithExperiments {
775 const ORDINAL: u64 = 9160168118327134458;
776 const FLEXIBILITY: ::fidl_next::protocol::Flexibility =
777 ::fidl_next::protocol::Flexibility::Strict;
778
779 type Protocol = crate::MetricEventLoggerFactory;
780
781 type Request =
782 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<
783 'static,
784 >;
785 }
786
787 impl ::fidl_next::TwoWayMethod for CreateMetricEventLoggerWithExperiments {
788 type Response = ::fidl_next::wire::Result<
789 'static,
790 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsResponse,
791 crate::wire::Error,
792 >;
793 }
794
795 impl<___R> ::fidl_next::Respond<___R> for CreateMetricEventLoggerWithExperiments {
796 type Output = ::core::result::Result<___R, ::fidl_next::never::Never>;
797
798 fn respond(response: ___R) -> Self::Output {
799 ::core::result::Result::Ok(response)
800 }
801 }
802
803 impl<___R> ::fidl_next::RespondErr<___R> for CreateMetricEventLoggerWithExperiments {
804 type Output = ::core::result::Result<::fidl_next::never::Never, ___R>;
805
806 fn respond_err(response: ___R) -> Self::Output {
807 ::core::result::Result::Err(response)
808 }
809 }
810
811 mod ___detail {
812 unsafe impl<___T> ::fidl_next::HasConnectionHandles<___T> for crate::MetricEventLoggerFactory
813 where
814 ___T: ::fidl_next::Transport,
815 {
816 type Client = MetricEventLoggerFactoryClient<___T>;
817 type Server = MetricEventLoggerFactoryServer<___T>;
818 }
819
820 #[repr(transparent)]
822 pub struct MetricEventLoggerFactoryClient<___T: ::fidl_next::Transport> {
823 #[allow(dead_code)]
824 client: ::fidl_next::protocol::Client<___T>,
825 }
826
827 impl<___T> MetricEventLoggerFactoryClient<___T>
828 where
829 ___T: ::fidl_next::Transport,
830 {
831 #[doc = " Create a MetricEventLogger for the project specified by `project_spec`.\n"]
832 pub fn create_metric_event_logger(
833 &self,
834
835 project_spec: impl ::fidl_next::Encode<
836 crate::wire::ProjectSpec<'static>,
837 <___T as ::fidl_next::Transport>::SendBuffer,
838 >,
839
840 logger: impl ::fidl_next::Encode<
841 ::fidl_next::ServerEnd<
842 crate::MetricEventLogger,
843 ::fidl_next::wire::fuchsia::Channel,
844 >,
845 <___T as ::fidl_next::Transport>::SendBuffer,
846 >,
847 ) -> ::fidl_next::TwoWayFuture<'_, super::CreateMetricEventLogger, ___T>
848 where
849 <___T as ::fidl_next::Transport>::SendBuffer:
850 ::fidl_next::encoder::InternalHandleEncoder,
851 <___T as ::fidl_next::Transport>::SendBuffer: ::fidl_next::Encoder,
852 <___T as ::fidl_next::Transport>::SendBuffer: ::fidl_next::fuchsia::HandleEncoder,
853 {
854 self.create_metric_event_logger_with(
855 crate::generic::MetricEventLoggerFactoryCreateMetricEventLoggerRequest {
856 project_spec,
857
858 logger,
859 },
860 )
861 }
862
863 #[doc = " Create a MetricEventLogger for the project specified by `project_spec`.\n"]
864 pub fn create_metric_event_logger_with<___R>(
865 &self,
866 request: ___R,
867 ) -> ::fidl_next::TwoWayFuture<'_, super::CreateMetricEventLogger, ___T>
868 where
869 ___R: ::fidl_next::Encode<
870 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<
871 'static,
872 >,
873 <___T as ::fidl_next::Transport>::SendBuffer,
874 >,
875 {
876 ::fidl_next::TwoWayFuture::from_untyped(self.client.send_two_way(
877 967417524583938558,
878 <super::CreateMetricEventLogger as ::fidl_next::Method>::FLEXIBILITY,
879 request,
880 ))
881 }
882
883 #[doc = " Create a MetricEventLogger with experiment metadata.\n\n This temporary method exposes experiment data to Cobalt directly from\n components. In the future, experiment state will be managed by the\n system and passed directly to Cobalt. Contact the Cobalt team before\n using this interface.\n\n To update experiment state create a new logger.\n"]
884 pub fn create_metric_event_logger_with_experiments(
885 &self,
886
887 project_spec: impl ::fidl_next::Encode<
888 crate::wire::ProjectSpec<'static>,
889 <___T as ::fidl_next::Transport>::SendBuffer,
890 >,
891
892 experiment_ids: impl ::fidl_next::Encode<
893 ::fidl_next::wire::Vector<'static, ::fidl_next::wire::Uint32>,
894 <___T as ::fidl_next::Transport>::SendBuffer,
895 >,
896
897 logger: impl ::fidl_next::Encode<
898 ::fidl_next::ServerEnd<
899 crate::MetricEventLogger,
900 ::fidl_next::wire::fuchsia::Channel,
901 >,
902 <___T as ::fidl_next::Transport>::SendBuffer,
903 >,
904 ) -> ::fidl_next::TwoWayFuture<'_, super::CreateMetricEventLoggerWithExperiments, ___T>
905 where
906 <___T as ::fidl_next::Transport>::SendBuffer:
907 ::fidl_next::encoder::InternalHandleEncoder,
908 <___T as ::fidl_next::Transport>::SendBuffer: ::fidl_next::Encoder,
909 <___T as ::fidl_next::Transport>::SendBuffer: ::fidl_next::fuchsia::HandleEncoder,
910 {
911 self.create_metric_event_logger_with_experiments_with(crate::generic::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest {
912
913 project_spec,
914
915 experiment_ids,
916
917 logger,
918
919 })
920 }
921
922 #[doc = " Create a MetricEventLogger with experiment metadata.\n\n This temporary method exposes experiment data to Cobalt directly from\n components. In the future, experiment state will be managed by the\n system and passed directly to Cobalt. Contact the Cobalt team before\n using this interface.\n\n To update experiment state create a new logger.\n"]
923 pub fn create_metric_event_logger_with_experiments_with<___R>(
924 &self,
925 request: ___R,
926 ) -> ::fidl_next::TwoWayFuture<'_, super::CreateMetricEventLoggerWithExperiments, ___T>
927 where
928 ___R: ::fidl_next::Encode<
929 crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'static>,
930 <___T as ::fidl_next::Transport>::SendBuffer,
931 >,
932{
933 ::fidl_next::TwoWayFuture::from_untyped(
934 self.client.send_two_way(
935 9160168118327134458,
936 <super::CreateMetricEventLoggerWithExperiments as ::fidl_next::Method>::FLEXIBILITY,
937 request,
938 )
939 )
940 }
941 }
942
943 #[repr(transparent)]
945 pub struct MetricEventLoggerFactoryServer<___T: ::fidl_next::Transport> {
946 server: ::fidl_next::protocol::Server<___T>,
947 }
948
949 impl<___T> MetricEventLoggerFactoryServer<___T> where ___T: ::fidl_next::Transport {}
950 }
951}
952
953#[diagnostic::on_unimplemented(
954 note = "If {Self} implements the non-local MetricEventLoggerFactoryClientHandler trait, use `spawn_as_local` or the `Local` adapter type"
955)]
956
957pub trait MetricEventLoggerFactoryLocalClientHandler<
961 #[cfg(target_os = "fuchsia")] ___T: ::fidl_next::Transport = ::fidl_next::fuchsia::zx::Channel,
962 #[cfg(not(target_os = "fuchsia"))] ___T: ::fidl_next::Transport,
963>
964{
965}
966
967impl<___H, ___T> ::fidl_next::DispatchLocalClientMessage<___H, ___T> for MetricEventLoggerFactory
968where
969 ___H: MetricEventLoggerFactoryLocalClientHandler<___T>,
970 ___T: ::fidl_next::Transport,
971{
972 async fn on_event(
973 handler: &mut ___H,
974 mut message: ::fidl_next::Message<___T>,
975 ) -> ::core::result::Result<(), ::fidl_next::ProtocolError<___T::Error>> {
976 match *message.header().ordinal {
977 ordinal => Err(::fidl_next::ProtocolError::UnknownOrdinal(ordinal)),
978 }
979 }
980}
981
982#[diagnostic::on_unimplemented(
983 note = "If {Self} implements the non-local MetricEventLoggerFactoryServerHandler trait, use `spawn_as_local` or the `Local` adapter type"
984)]
985
986pub trait MetricEventLoggerFactoryLocalServerHandler<
990 #[cfg(target_os = "fuchsia")] ___T: ::fidl_next::Transport = ::fidl_next::fuchsia::zx::Channel,
991 #[cfg(not(target_os = "fuchsia"))] ___T: ::fidl_next::Transport,
992>
993{
994 #[doc = " Create a MetricEventLogger for the project specified by `project_spec`.\n"]
995 fn create_metric_event_logger(
996 &mut self,
997
998 request: ::fidl_next::Request<metric_event_logger_factory::CreateMetricEventLogger, ___T>,
999
1000 responder: ::fidl_next::Responder<
1001 metric_event_logger_factory::CreateMetricEventLogger,
1002 ___T,
1003 >,
1004 ) -> impl ::core::future::Future<Output = ()>;
1005
1006 #[doc = " Create a MetricEventLogger with experiment metadata.\n\n This temporary method exposes experiment data to Cobalt directly from\n components. In the future, experiment state will be managed by the\n system and passed directly to Cobalt. Contact the Cobalt team before\n using this interface.\n\n To update experiment state create a new logger.\n"]
1007 fn create_metric_event_logger_with_experiments(
1008 &mut self,
1009
1010 request: ::fidl_next::Request<
1011 metric_event_logger_factory::CreateMetricEventLoggerWithExperiments,
1012 ___T,
1013 >,
1014
1015 responder: ::fidl_next::Responder<
1016 metric_event_logger_factory::CreateMetricEventLoggerWithExperiments,
1017 ___T,
1018 >,
1019 ) -> impl ::core::future::Future<Output = ()>;
1020}
1021
1022impl<___H, ___T> ::fidl_next::DispatchLocalServerMessage<___H, ___T> for MetricEventLoggerFactory
1023where
1024 ___H: MetricEventLoggerFactoryLocalServerHandler<___T> ,
1025 ___T: ::fidl_next::Transport,
1026
1027
1028 for<'de> crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'de>: ::fidl_next::Decode<
1029 <<___T as ::fidl_next::Transport>::RecvBuffer as ::fidl_next::AsDecoder<'de>>::Decoder,
1030 Constraint = (),
1031 >,
1032
1033
1034
1035 for<'de> crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'de>: ::fidl_next::Decode<
1036 <<___T as ::fidl_next::Transport>::RecvBuffer as ::fidl_next::AsDecoder<'de>>::Decoder,
1037 Constraint = (),
1038 >,
1039
1040
1041{
1042 async fn on_one_way(
1043 handler: &mut ___H,
1044 mut message: ::fidl_next::Message<___T>,
1045 ) -> ::core::result::Result<(), ::fidl_next::ProtocolError<<___T as ::fidl_next::Transport>::Error>> {
1046 match *message.header().ordinal {
1047
1048
1049
1050
1051
1052
1053
1054 ordinal => {
1055
1056 Err(::fidl_next::ProtocolError::UnknownOrdinal(ordinal))
1057
1058 }
1059 }
1060 }
1061
1062 async fn on_two_way(
1063 handler: &mut ___H,
1064 mut message: ::fidl_next::Message<___T>,
1065 responder: ::fidl_next::protocol::Responder<___T>,
1066 ) -> ::core::result::Result<(), ::fidl_next::ProtocolError<<___T as ::fidl_next::Transport>::Error>> {
1067 match *message.header().ordinal {
1068
1069
1070
1071 967417524583938558 => {
1072 let responder = ::fidl_next::Responder::from_untyped(responder);
1073
1074 match ::fidl_next::AsDecoderExt::into_decoded(message) {
1075 Ok(decoded) => {
1076 handler.create_metric_event_logger(::fidl_next::Request::from_decoded(decoded), responder).await;
1077 Ok(())
1078 }
1079 Err(error) => Err(::fidl_next::ProtocolError::InvalidMessage {
1080 ordinal: 967417524583938558,
1081 error,
1082 }),
1083 }
1084
1085 }
1086
1087
1088
1089
1090 9160168118327134458 => {
1091 let responder = ::fidl_next::Responder::from_untyped(responder);
1092
1093 match ::fidl_next::AsDecoderExt::into_decoded(message) {
1094 Ok(decoded) => {
1095 handler.create_metric_event_logger_with_experiments(::fidl_next::Request::from_decoded(decoded), responder).await;
1096 Ok(())
1097 }
1098 Err(error) => Err(::fidl_next::ProtocolError::InvalidMessage {
1099 ordinal: 9160168118327134458,
1100 error,
1101 }),
1102 }
1103
1104 }
1105
1106
1107 ordinal => {
1108
1109 Err(::fidl_next::ProtocolError::UnknownOrdinal(ordinal))
1110
1111 }
1112 }
1113 }
1114}
1115
1116pub trait MetricEventLoggerFactoryClientHandler<
1120 #[cfg(target_os = "fuchsia")] ___T: ::fidl_next::Transport = ::fidl_next::fuchsia::zx::Channel,
1121 #[cfg(not(target_os = "fuchsia"))] ___T: ::fidl_next::Transport,
1122>
1123{
1124}
1125
1126impl<___H, ___T> ::fidl_next::DispatchClientMessage<___H, ___T> for MetricEventLoggerFactory
1127where
1128 ___H: MetricEventLoggerFactoryClientHandler<___T> + ::core::marker::Send,
1129 ___T: ::fidl_next::Transport,
1130{
1131 async fn on_event(
1132 handler: &mut ___H,
1133 mut message: ::fidl_next::Message<___T>,
1134 ) -> ::core::result::Result<(), ::fidl_next::ProtocolError<___T::Error>> {
1135 match *message.header().ordinal {
1136 ordinal => Err(::fidl_next::ProtocolError::UnknownOrdinal(ordinal)),
1137 }
1138 }
1139}
1140
1141pub trait MetricEventLoggerFactoryServerHandler<
1145 #[cfg(target_os = "fuchsia")] ___T: ::fidl_next::Transport = ::fidl_next::fuchsia::zx::Channel,
1146 #[cfg(not(target_os = "fuchsia"))] ___T: ::fidl_next::Transport,
1147>
1148{
1149 #[doc = " Create a MetricEventLogger for the project specified by `project_spec`.\n"]
1150 fn create_metric_event_logger(
1151 &mut self,
1152
1153 request: ::fidl_next::Request<metric_event_logger_factory::CreateMetricEventLogger, ___T>,
1154
1155 responder: ::fidl_next::Responder<
1156 metric_event_logger_factory::CreateMetricEventLogger,
1157 ___T,
1158 >,
1159 ) -> impl ::core::future::Future<Output = ()> + ::core::marker::Send;
1160
1161 #[doc = " Create a MetricEventLogger with experiment metadata.\n\n This temporary method exposes experiment data to Cobalt directly from\n components. In the future, experiment state will be managed by the\n system and passed directly to Cobalt. Contact the Cobalt team before\n using this interface.\n\n To update experiment state create a new logger.\n"]
1162 fn create_metric_event_logger_with_experiments(
1163 &mut self,
1164
1165 request: ::fidl_next::Request<
1166 metric_event_logger_factory::CreateMetricEventLoggerWithExperiments,
1167 ___T,
1168 >,
1169
1170 responder: ::fidl_next::Responder<
1171 metric_event_logger_factory::CreateMetricEventLoggerWithExperiments,
1172 ___T,
1173 >,
1174 ) -> impl ::core::future::Future<Output = ()> + ::core::marker::Send;
1175}
1176
1177impl<___H, ___T> ::fidl_next::DispatchServerMessage<___H, ___T> for MetricEventLoggerFactory
1178where
1179 ___H: MetricEventLoggerFactoryServerHandler<___T> + ::core::marker::Send,
1180 ___T: ::fidl_next::Transport,
1181
1182
1183 for<'de> crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerRequest<'de>: ::fidl_next::Decode<
1184 <<___T as ::fidl_next::Transport>::RecvBuffer as ::fidl_next::AsDecoder<'de>>::Decoder,
1185 Constraint = (),
1186 >,
1187
1188
1189
1190 for<'de> crate::wire::MetricEventLoggerFactoryCreateMetricEventLoggerWithExperimentsRequest<'de>: ::fidl_next::Decode<
1191 <<___T as ::fidl_next::Transport>::RecvBuffer as ::fidl_next::AsDecoder<'de>>::Decoder,
1192 Constraint = (),
1193 >,
1194
1195
1196{
1197 async fn on_one_way(
1198 handler: &mut ___H,
1199 mut message: ::fidl_next::Message<___T>,
1200 ) -> ::core::result::Result<(), ::fidl_next::ProtocolError<<___T as ::fidl_next::Transport>::Error>> {
1201 match *message.header().ordinal {
1202
1203
1204
1205
1206
1207
1208
1209 ordinal => {
1210
1211 Err(::fidl_next::ProtocolError::UnknownOrdinal(ordinal))
1212
1213 }
1214 }
1215 }
1216
1217 async fn on_two_way(
1218 handler: &mut ___H,
1219 mut message: ::fidl_next::Message<___T>,
1220 responder: ::fidl_next::protocol::Responder<___T>,
1221 ) -> ::core::result::Result<(), ::fidl_next::ProtocolError<<___T as ::fidl_next::Transport>::Error>> {
1222 match *message.header().ordinal {
1223
1224
1225
1226 967417524583938558 => {
1227 let responder = ::fidl_next::Responder::from_untyped(responder);
1228
1229 match ::fidl_next::AsDecoderExt::into_decoded(message) {
1230 Ok(decoded) => {
1231 handler.create_metric_event_logger(::fidl_next::Request::from_decoded(decoded), responder).await;
1232 Ok(())
1233 }
1234 Err(error) => Err(::fidl_next::ProtocolError::InvalidMessage {
1235 ordinal: 967417524583938558,
1236 error,
1237 }),
1238 }
1239
1240 }
1241
1242
1243
1244
1245 9160168118327134458 => {
1246 let responder = ::fidl_next::Responder::from_untyped(responder);
1247
1248 match ::fidl_next::AsDecoderExt::into_decoded(message) {
1249 Ok(decoded) => {
1250 handler.create_metric_event_logger_with_experiments(::fidl_next::Request::from_decoded(decoded), responder).await;
1251 Ok(())
1252 }
1253 Err(error) => Err(::fidl_next::ProtocolError::InvalidMessage {
1254 ordinal: 9160168118327134458,
1255 error,
1256 }),
1257 }
1258
1259 }
1260
1261
1262 ordinal => {
1263
1264 Err(::fidl_next::ProtocolError::UnknownOrdinal(ordinal))
1265
1266 }
1267 }
1268 }
1269}
1270
1271impl<___T> MetricEventLoggerFactoryClientHandler<___T> for ::fidl_next::IgnoreEvents where
1272 ___T: ::fidl_next::Transport
1273{
1274}
1275
1276impl<___H, ___T> MetricEventLoggerFactoryLocalClientHandler<___T> for ::fidl_next::Local<___H>
1277where
1278 ___H: MetricEventLoggerFactoryClientHandler<___T>,
1279 ___T: ::fidl_next::Transport,
1280{
1281}
1282
1283impl<___H, ___T> MetricEventLoggerFactoryLocalServerHandler<___T> for ::fidl_next::Local<___H>
1284where
1285 ___H: MetricEventLoggerFactoryServerHandler<___T>,
1286 ___T: ::fidl_next::Transport,
1287{
1288 async fn create_metric_event_logger(
1289 &mut self,
1290
1291 request: ::fidl_next::Request<metric_event_logger_factory::CreateMetricEventLogger, ___T>,
1292
1293 responder: ::fidl_next::Responder<
1294 metric_event_logger_factory::CreateMetricEventLogger,
1295 ___T,
1296 >,
1297 ) {
1298 ___H::create_metric_event_logger(&mut self.0, request, responder).await
1299 }
1300
1301 async fn create_metric_event_logger_with_experiments(
1302 &mut self,
1303
1304 request: ::fidl_next::Request<
1305 metric_event_logger_factory::CreateMetricEventLoggerWithExperiments,
1306 ___T,
1307 >,
1308
1309 responder: ::fidl_next::Responder<
1310 metric_event_logger_factory::CreateMetricEventLoggerWithExperiments,
1311 ___T,
1312 >,
1313 ) {
1314 ___H::create_metric_event_logger_with_experiments(&mut self.0, request, responder).await
1315 }
1316}
1317
1318pub use fidl_next_common_fuchsia_metrics::*;